Test for check_spec function, for tidy.py #9152

This commit is contained in:
Maciej Skrzypkowski 2016-04-13 12:18:13 +02:00 committed by askeing
parent 88c94f285e
commit 22d991d4e0
3 changed files with 18 additions and 3 deletions

View file

@ -69,6 +69,8 @@ ignored_dirs = [
os.path.join(".", "."),
]
spec_base_path = "components/script/dom/"
def is_iter_empty(iterator):
try:
@ -525,10 +527,9 @@ def check_json(filename, contents):
def check_spec(file_name, lines):
base_path = "components/script/dom/"
if base_path not in file_name:
if spec_base_path not in file_name:
raise StopIteration
file_name = os.path.relpath(os.path.splitext(file_name)[0], base_path)
file_name = os.path.relpath(os.path.splitext(file_name)[0], spec_base_path)
patt = re.compile("^\s*\/\/.+")
# Pattern representing a line with a macro

View file

@ -61,6 +61,11 @@ class CheckTidiness(unittest.TestCase):
self.assertEqual('use &[T] instead of &Vec<T>', errors.next()[2])
self.assertEqual('use &str instead of &String', errors.next()[2])
def test_spec_link(self):
tidy.spec_base_path = "python/tidy_self_test/"
errors = tidy.collect_errors_for_files(iterFile('speclink.rs'), [], [tidy.check_spec])
self.assertEqual('method declared in webidl is missing a comment with a specification link', errors.next()[2])
def test_webidl(self):
errors = tidy.collect_errors_for_files(iterFile('spec.webidl'), [tidy.check_webidl_spec], [])
self.assertEqual('No specification link found.', errors.next()[2])