summaryrefslogtreecommitdiff
path: root/tests/snippets/conftest.py
blob: daf317fa0c18ab5728f47803cdd3d197536aae45 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
"""
    Generated lexer tests
    ~~~~~~~~~~~~~~~~~~~~~

    Checks that lexers output the expected tokens for each sample
    under lexers/*/test_*.txt.

    After making a change, rather than updating the samples manually,
    run `pytest --update-goldens tests/lexers`.

    To add a new sample, create a new file matching this pattern.
    The directory must match the alias of the lexer to be used.
    Populate only the input, then just `--update-goldens`.

    :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
"""

import pathlib
import pytest

from tests.conftest import LexerInlineTestItem


def pytest_collect_file(parent, path):
    if path.ext == '.txt':
        return LexerTestFile.from_parent(parent, path=pathlib.Path(path))


class LexerTestFile(pytest.File):
    def collect(self):
        yield LexerInlineTestItem.from_parent(self, name='')