Add es[56]?id checks

This commit is contained in:
Adrian Heine 2017-12-28 23:01:17 +01:00 committed by Rick Waldron
parent b0338941f7
commit 0278a7d2a5
2 changed files with 33 additions and 0 deletions

View File

@ -0,0 +1,31 @@
from ..check import Check
import re
class CheckEsid(Check):
'''Ensure tests specify only valid `es6id's'''
ID = 'ESID'
def __init__(self):
#self.es5idRegex = re.compile(r"^S?(B|\d+)(\.\d+)+(-(\d+|[a-z]|i+))*(_A\d(\.\d+)?(_T\d(\.\d+)?)?)?$")
self.es6idRegex = re.compile(r"^(S?(B|\d+)(\.\d+)+(((_A\d\.\d)?_T?\d)|[ _]S\d+(\.[a-z])*)?(, |$))+")
self.esidRegex = re.compile(r"^(pending|(prod|sec)-[-_A-Za-z0-9.%@]+)$")
def run(self, name, meta, source):
if not meta:
return
# es5ids are a mess
#if 'es5id' in meta:
# es5id = str(meta['es5id'])
# if self.es5idRegex.match(es5id) == None:
# return 'The `es5id` tag has the wrong format: %s' % es5id
if 'es6id' in meta:
es6id = str(meta['es6id'])
if self.es6idRegex.match(es6id) == None:
return 'The `es6id` tag has the wrong format: %s' % es6id
if 'esid' in meta:
esid = str(meta['esid'])
if self.esidRegex.match(esid) == None:
return 'The `esid` tag has the wrong format: %s' % esid

View File

@ -23,6 +23,7 @@ except ImportError:
from lib.collect_files import collect_files
from lib.checks.esid import CheckEsid
from lib.checks.features import CheckFeatures
from lib.checks.frontmatter import CheckFrontmatter
from lib.checks.harnessfeatures import CheckHarnessFeatures
@ -41,6 +42,7 @@ parser.add_argument('path',
help='file name or directory of files to lint')
checks = [
CheckEsid(),
CheckFrontmatter(),
CheckFeatures('features.txt'),
CheckHarnessFeatures(),