def test_BINARY_OP(): assert_parse( grammar=BINARY_OP, text="==", tokens_list=[["=="]], interval_list=[(0, 2)], )
def test_INDENT_START_OF_FILE(): assert_parse( grammar=INDENT, text=" text", tokens_list=[ [""], ], interval_list=[(4, 4)], )
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
def test_WHITE(): assert_parse( grammar=WHITE, text=""" """, tokens_list=[ [" "], ], interval_list=[ (1, 9), ], )
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), ], )
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), ], )
def test_NL_WHITE(): assert_parse( grammar=NL_WHITE, text=""" """, tokens_list=[ ["\n "], ], interval_list=[ (1, 10), ], )
def test_DOTTED_NAME(): assert_parse( grammar=DOTTED_NAME, text=""" self.derp.herp """, tokens_list=[ ["self.derp.herp"], ], interval_list=[ (9, 23), ], )
def test_INDENT(): assert_parse( grammar=INDENT, text=""" something """, tokens_list=[ ["\n "], ], interval_list=[ (0, 9), ], )
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), ], )
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), ], )
def test_quoted(): assert_parse( grammar=quoted("derp"), text=""" "derp" 'herp' """, tokens_list=[ ['"derp"'], ], interval_list=[ (9, 15), ], )
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), ], )
def test_PARENS(): assert_parse( grammar=PARENS, text=""" ( )(() ) """, tokens_list=[ ["(\n )"], ["(()\n )"], ], interval_list=[ (9, 20), (20, 33), ], )
def test_STRING(): assert_parse( grammar=STRING, text=''' "derp" """ herp """ ''', tokens_list=[ ['"derp"'], ['"""\n herp\n """'], ], interval_list=[ (0, 15), (24, 52), ], )
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), ], )
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), ], )
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), ], )