Functionize check features

This commit is contained in:
Melissa LeBlanc-Williams 2022-05-10 08:50:43 -07:00
parent f0775ec65a
commit 00730f1f86

View file

@ -7,18 +7,20 @@ with open('template.md', "rt") as f:
metadata, content = frontmatter.parse(f.read())
acceptable_features = set(metadata['features'])
failed = False
for filename in Path('_board').glob("*.md"):
def verify_features(folder, valid_features):
success = True
for filename in Path(folder).glob("*.md"):
with open(filename, "rt") as f:
metadata, content = frontmatter.parse(f.read())
features = metadata.get('features') or ()
for feature in sorted(set(features) - acceptable_features):
for feature in sorted(set(features) - valid_features):
print(f"{filename}:0: Non-standard feature: {feature}")
failed = True
success = False
return success
if failed:
if not verify_features("_board", acceptable_features):
print("Non-standard features found. See https://learn.adafruit.com/how-to-add-a-new-board-to-the-circuitpython-org-website/adding-to-downloads for acceptable features")
raise SystemExit(failed)
raise SystemExit(True)
# Check Blinka Download Features
blinka_features = {
@ -34,15 +36,7 @@ blinka_features = {
"Infrared Receiver",
}
failed = False
for filename in Path('_blinka').glob("*.md"):
with open(filename, "rt") as f:
metadata, content = frontmatter.parse(f.read())
features = metadata.get('features') or ()
for feature in sorted(set(features) - blinka_features):
print(f"{filename}:0: Non-standard feature: {feature}")
failed = True
failed = not verify_features("_blinka", blinka_features)
if failed:
print("Non-standard features found. See https://learn.adafruit.com/how-to-add-a-new-board-to-the-circuitpython-org-website/adding-to-blinka for acceptable features")