File: test_procfile.py

package info (click to toggle)
pygments 2.14.0%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 8,496 kB
  • sloc: python: 96,379; javascript: 238; makefile: 191; sh: 80; lisp: 74
file content (40 lines) | stat: -rw-r--r-- 916 bytes parent folder | download
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
33
34
35
36
37
38
39
40
# -*- coding: utf-8 -*-
"""
    Basic ProcfileLexer Test
    ~~~~~~~~~~~~~~~~~~~~

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

import pytest

from pygments.token import Name, Punctuation, Text
from pygments.lexers.procfile import ProcfileLexer


@pytest.fixture(scope='module')
def lexer():
    yield ProcfileLexer()


def test_basic_line(lexer):
    text = 'task: executable --options'

    tokens = lexer.get_tokens(text)

    for index, token in enumerate(tokens):
        if index == 0:
            assert token == (Name.Label, 'task')
        elif index == 1:
            assert token == (Punctuation, ':')
        else:
            assert token[0] in (Text, Text.Whitespace)


def test_environment_variable(lexer):
    text = '$XDG_SESSION_PATH'

    token = list(lexer.get_tokens(text))[0]

    assert token == (Name.Variable, text)