mirror of
https://github.com/tc39/test262.git
synced 2025-05-03 06:20:37 +02:00
This script is intended to identify common test file formatting errors prior to their acceptance into the project. It is designed to support future extensions for additional validation rules.
25 lines
710 B
Python
25 lines
710 B
Python
def parse(handle):
|
|
'''Parse the contents of the provided file descriptor as a linting
|
|
whitelist file. Return a dictionary whose keys are test file names and
|
|
whose values are Python sets of "Check" ID strings.'''
|
|
|
|
whitelist = dict()
|
|
|
|
for line in handle:
|
|
if line.startswith('#'):
|
|
continue
|
|
|
|
parts = line.split()
|
|
file_name = parts[0]
|
|
check_names = set(parts[1:])
|
|
|
|
assert file_name not in whitelist, (
|
|
'Whitelist should have a single entry for each file')
|
|
|
|
assert len(check_names) > 0, (
|
|
'Each whitelist entry should specify at least on check')
|
|
|
|
whitelist[file_name] = check_names
|
|
|
|
return whitelist
|