Example #1
0
def test_BINARY_OP():
    assert_parse(
        grammar=BINARY_OP,
        text="==",
        tokens_list=[["=="]],
        interval_list=[(0, 2)],
    )
Example #2
0
def test_INDENT_START_OF_FILE():
    assert_parse(
        grammar=INDENT,
        text="    text",
        tokens_list=[
            [""],
        ],
        interval_list=[(4, 4)],
    )
Example #3
0
def test_debug(mock_print):
    assert_parse(
        grammar=debug(Keyword('something')),
        text="something",
        tokens_list=[
            [mock_print.return_value],
        ],
        interval_list=[(0, 9)],
    )
    assert mock_print.call_count == 1
Example #4
0
def test_WHITE():
    assert_parse(
        grammar=WHITE,
        text="""
        """,
        tokens_list=[
            ["        "],
        ],
        interval_list=[
            (1, 9),
        ],
    )
Example #5
0
def test_PARAMS():
    assert_parse(
        grammar=PARAMS,
        text="""
        arga + argb, *args, kwarg=vala + valb, **kwargs
        """,
        tokens_list=[
            ["arga + argb, *args, kwarg=vala + valb, **kwargs"],
        ],
        interval_list=[
            (9, 56),
        ],
    )
Example #6
0
def test_EXPR_LIST():
    assert_parse(
        grammar=EXPR_LIST,
        text="""
        derp + herp, herp.a.derp - 1, herp[derp],
        """,
        tokens_list=[
            ["derp + herp, herp.a.derp - 1, herp[derp],"],
        ],
        interval_list=[
            (9, 50),
        ],
    )
Example #7
0
def test_NL_WHITE():
    assert_parse(
        grammar=NL_WHITE,
        text="""

        """,
        tokens_list=[
            ["\n        "],
        ],
        interval_list=[
            (1, 10),
        ],
    )
Example #8
0
def test_DOTTED_NAME():
    assert_parse(
        grammar=DOTTED_NAME,
        text="""
        self.derp.herp
        """,
        tokens_list=[
            ["self.derp.herp"],
        ],
        interval_list=[
            (9, 23),
        ],
    )
Example #9
0
def test_INDENT():
    assert_parse(
        grammar=INDENT,
        text="""
        something
        """,
        tokens_list=[
            ["\n        "],
        ],
        interval_list=[
            (0, 9),
        ],
    )
Example #10
0
def test_EXPR():
    assert_parse(
        grammar=EXPR,
        text="""
        self.derp(herp)['derp'] + {'herp': 'derp'}.get()
        """,
        tokens_list=[
            ["self.derp(herp)['derp'] + {'herp': 'derp'}.get()"],
        ],
        interval_list=[
            (9, 57),
        ],
    )
Example #11
0
def test_HEADER():
    assert_parse(
        grammar=HEADER,
        text='''#!/usr/bin/env python
# -*- coding: utf-8 -*-

"""doc"""

from __future__ import herpaderp

import start
from derp import herp
from herpderp import herp, \\
    derp
from foo import *
from foo import (
    bar,
    baz as foobar)
from .bar import *
from .bar import alpha, beta
from . import baz


first
second
        ''',
        tokens_list=[[
            '''#!/usr/bin/env python
# -*- coding: utf-8 -*-

"""doc"""

from __future__ import herpaderp

import start
from derp import herp
from herpderp import herp, \\
    derp
from foo import *
from foo import (
    bar,
    baz as foobar)
from .bar import *
from .bar import alpha, beta
from . import baz
'''
        ]],
        interval_list=[
            (0, 295),
        ],
    )
Example #12
0
def test_quoted():
    assert_parse(
        grammar=quoted("derp"),
        text="""
        "derp"
        'herp'
        """,
        tokens_list=[
            ['"derp"'],
        ],
        interval_list=[
            (9, 15),
        ],
    )
Example #13
0
def test_ATOM():
    assert_parse(
        grammar=ATOM,
        text="""
        self.derp(herp)['derp'] + {'herp': 'derp'}.get()
        """,
        tokens_list=[
            ["self.derp(herp)['derp']"],
            ["{'herp': 'derp'}.get()"],
        ],
        interval_list=[
            (9, 32),
            (35, 57),
        ],
    )
Example #14
0
def test_PARENS():
    assert_parse(
        grammar=PARENS,
        text="""
        (
        )(()
        )
        """,
        tokens_list=[
            ["(\n        )"],
            ["(()\n        )"],
        ],
        interval_list=[
            (9, 20),
            (20, 33),
        ],
    )
Example #15
0
def test_STRING():
    assert_parse(
        grammar=STRING,
        text='''
        "derp"
        """
        herp
        """
        ''',
        tokens_list=[
            ['"derp"'],
            ['"""\n        herp\n        """'],
        ],
        interval_list=[
            (0, 15),
            (24, 52),
        ],
    )
Example #16
0
def test_PARAM():
    assert_parse(
        grammar=PARAM,
        text="""
        arga + argb, *args, kwarg=vala + valb, **kwargs
        """,
        tokens_list=[
            ["arga + argb"],
            ["*args"],
            ["kwarg=vala + valb"],
            ["**kwargs"],
        ],
        interval_list=[
            (9, 20),
            (22, 27),
            (29, 46),
            (48, 56),
        ],
    )
Example #17
0
def test_OP():
    assert_parse(
        grammar=OP,
        text="""
        abc += 25 // 3 * 2 - 4 != 10
        """,
        tokens_list=[
            ["+="],
            ["//"],
            ["*"],
            ["-"],
            ["!="],
        ],
        interval_list=[
            (13, 15),
            (19, 21),
            (24, 25),
            (28, 29),
            (32, 34),
        ],
    )
Example #18
0
def test_HEADER():
    assert_parse(
        grammar=HEADER,
        text='''#!/usr/bin/env python
# -*- coding: utf-8 -*-

"""doc"""

from __future__ import herpaderp

import start
from derp import herp
from herpderp import herp, \\
 derp

first
second
        ''',
        tokens_list=[[
            '''#!/usr/bin/env python
# -*- coding: utf-8 -*-

"""doc"""

from __future__ import herpaderp

import start
from derp import herp
from herpderp import herp, \\
 derp
'''
        ]],
        interval_list=[
            (0, 162),
        ],
    )