def test_index_symbol_scores(): src = dedent(''' def walk(dir): pass ''') tree = SymbolIndex() with tree.enter('os') as os_tree: with os_tree.enter('path') as path_tree: path_tree.index_source('os.py', src) assert tree.symbol_scores('walk')[0][1:] == ('os.path', 'walk') assert tree.symbol_scores('os') == [(1.44, 'os', None)] assert tree.symbol_scores('os.path.walk') == [(4.2, 'os.path', None)]
def test_index_if_name_main(): src = dedent(''' if __name__ == '__main__': one = 1 else: two = 2 ''') tree = SymbolIndex() with tree.enter('test') as subtree: subtree.index_source('test.py', src) assert serialize(subtree) == {".location": "L", ".score": 1.0}
def test_index_file_with_all(): src = dedent(''' __all__ = ['one'] one = 1 two = 2 three = 3 ''') tree = SymbolIndex() with tree.enter('test') as subtree: subtree.index_source('test.py', src) assert serialize(subtree) == {".location": "L", ".score": 1.0, "one": 1.1}