1234567891011121314151617181920212223 |
- import os
- import parso
- def get_python_files(path):
- for dir_path, dir_names, file_names in os.walk(path):
- for file_name in file_names:
- if file_name.endswith('.py'):
- yield os.path.join(dir_path, file_name)
- def test_on_itself(each_version):
- """
- There are obviously no syntax erros in the Python code of parso. However
- parso should output the same for all versions.
- """
- grammar = parso.load_grammar(version=each_version)
- path = os.path.dirname(os.path.dirname(__file__)) + '/parso'
- for file in get_python_files(path):
- tree = grammar.parse(path=file)
- errors = list(grammar.iter_errors(tree))
- assert not errors
|