コード例 #1
0
def test_complex_expression():
    source, pos = get_source_and_pos('''
        module.func(param1, (param2,))(p1=10, m.p2|
    ''')
    result = get_context(source, pos)
    assert result == ('expr', 1, 'm', 'p2', '')

    source, pos = get_source_and_pos('''
        module.func(param1, (param2,))(p1=10, p2=m.attr|
    ''')
    result = get_context(source, pos)
    assert result == ('expr', 1, 'm', 'attr', '')
コード例 #2
0
def test_indented_import():
    source, pos = get_source_and_pos('''
        def foo():
            import |
    ''')
    result = get_context(source, pos)
    assert result == ('import', 2, '', '', None)
コード例 #3
0
def test_simple_expression_context():
    source, pos = get_source_and_pos('''
        module.attr|
    ''')
    result = get_context(source, pos)
    assert result == ('expr', 1, 'module', 'attr', '')

    source, pos = get_source_and_pos('''
        package.module.attr|
    ''')
    result = get_context(source, pos)
    assert result == ('expr', 1, 'package.module', 'attr', '')

    source, pos = get_source_and_pos('''
        module.func(param1, param2|
    ''')
    result = get_context(source, pos)
    assert result == ('expr', 1, '', 'param2', 'module.func')
コード例 #4
0
def test_from_import_context():
    source, pos = get_source_and_pos('''
        from package import module|
    ''')
    result = get_context(source, pos)
    assert result == ('from-import', 1, 'package', 'module', None)

    source, pos = get_source_and_pos('''
        from . import module|
    ''')
    result = get_context(source, pos)
    assert result == ('from-import', 1, '.', 'module', None)

    source, pos = get_source_and_pos('''
        from ..package import module1, module2|
    ''')
    result = get_context(source, pos)
    assert result == ('from-import', 1, '..package', 'module2', None)
コード例 #5
0
def test_from_context():
    source, pos = get_source_and_pos('''
        from package|
    ''')
    result = get_context(source, pos)
    assert result == ('import', 1, '', 'package', None)

    source, pos = get_source_and_pos('''
        from package.module|
    ''')
    result = get_context(source, pos)
    assert result == ('import', 1, 'package', 'module', None)

    source, pos = get_source_and_pos('''
        from ..package.module|
    ''')
    result = get_context(source, pos)
    assert result == ('import', 1, '..package', 'module', None)
コード例 #6
0
def test_import_context():
    source, pos = get_source_and_pos('''
        import |
    ''')
    result = get_context(source, pos)
    assert result == ('import', 1, '', '', None)

    source, pos = get_source_and_pos('''
        import package|
    ''')
    result = get_context(source, pos)
    assert result == ('import', 1, '', 'package', None)

    source, pos = get_source_and_pos('''
        import package.module|
    ''')
    result = get_context(source, pos)
    assert result == ('import', 1, 'package', 'module', None)

    source, pos = get_source_and_pos('''
        import package.module.submodule|
    ''')
    result = get_context(source, pos)
    assert result == ('import', 1, 'package.module', 'submodule', None)

    source, pos = get_source_and_pos('''
        import package1.module1, package2.module2|
    ''')
    result = get_context(source, pos)
    assert result == ('import', 1, 'package2', 'module2', None)

    source, pos = get_source_and_pos('''
        import (package1.module1,
            package2.module2|
    ''')
    result = get_context(source, pos)
    assert result == ('import', 2, 'package2', 'module2', None)

    source, pos = get_source_and_pos('''
        import package1.module1, \\
            package2.module2|
    ''')
    result = get_context(source, pos)
    assert result == ('import', 2, 'package2', 'module2', None)
コード例 #7
0
def test_dotted_func_call_context():
    source, pos = get_source_and_pos('''
        Foo().foo(param1|
    ''')
    result = get_context(source, pos)
    assert result == ('expr', 1, '', 'param1', 'Foo().foo')
コード例 #8
0
def test_expression_without_func_name():
    source, pos = get_source_and_pos('''
        (param1, (param2,)).attr|
    ''')
    result = get_context(source, pos)
    assert result == ('expr', 1, '(param1,(param2,))', 'attr', '')
コード例 #9
0
def test_expression_context_with_func_ctx_break():
    source, pos = get_source_and_pos('''
        module.func(param1, (package.param2|
    ''')
    result = get_context(source, pos)
    assert result == ('expr', 1, 'package', 'param2', '')