mirror of
https://github.com/tc39/test262.git
synced 2025-05-02 22:10:34 +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.
17 lines
465 B
Python
17 lines
465 B
Python
import re
|
|
import yaml
|
|
|
|
def parse(src):
|
|
'''Parse the YAML-formatted metadata found in a given string of source
|
|
code. Tolerate missing or invalid metadata; those conditions are handled by
|
|
a dedicated "Check" instance.'''
|
|
|
|
match = re.search(r'/\*---(.*)---\*/', src, re.DOTALL)
|
|
if not match:
|
|
return None
|
|
|
|
try:
|
|
return yaml.load(match.group(1))
|
|
except (yaml.scanner.ScannerError, yaml.parser.ParserError):
|
|
return None
|