Skip to content
Permalink
Browse files

Test for check_spec function, for tidy.py #9152

  • Loading branch information...
Maciej Skrzypkowski authored and askeing committed Apr 13, 2016
1 parent 88c94f2 commit 22d991d4e0b39dd0cb8d05215e181ac8ef957aab
Showing with 18 additions and 3 deletions.
  1. +4 −3 python/tidy/servo_tidy/tidy.py
  2. +5 −0 python/tidy/servo_tidy_tests/test_tidy.py
  3. +9 −0 python/tidy_self_test/speclink.rs
@@ -69,6 +69,8 @@
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
@@ -61,6 +61,11 @@ def test_rust(self):
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])
@@ -0,0 +1,9 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */

impl SpecLinkMethods for SpecLink {
fn Test(&self) -> f32 {
0
}
}

0 comments on commit 22d991d

Please sign in to comment.
You can’t perform that action at this time.