Index: tools/strict_enum_value_checker/strict_enum_value_checker_test.py |
diff --git a/extensions/browser/PRESUBMIT_test.py b/tools/strict_enum_value_checker/strict_enum_value_checker_test.py |
similarity index 85% |
rename from extensions/browser/PRESUBMIT_test.py |
rename to tools/strict_enum_value_checker/strict_enum_value_checker_test.py |
index 99cabf53c82b172083ab0c3350443d9fa4edc418..4f95efe0cfd66439dfad50775be5c9225ff4afdf 100755 |
--- a/extensions/browser/PRESUBMIT_test.py |
+++ b/tools/strict_enum_value_checker/strict_enum_value_checker_test.py |
@@ -8,7 +8,7 @@ import os |
import re |
import unittest |
-import PRESUBMIT |
+from strict_enum_value_checker import StrictEnumValueChecker |
class MockLogging(object): |
def __init__(self): |
@@ -34,25 +34,25 @@ class MockInputApi(object): |
class MockOutputApi(object): |
class PresubmitResult(object): |
- def __init__(self, message, items=None, long_text=''): |
+ def __init__(self, message, items=None, long_text=""): |
self.message = message |
self.items = items |
self.long_text = long_text |
class PresubmitError(PresubmitResult): |
- def __init__(self, message, items, long_text=''): |
+ def __init__(self, message, items, long_text=""): |
MockOutputApi.PresubmitResult.__init__(self, message, items, long_text) |
- self.type = 'error' |
+ self.type = "error" |
class PresubmitPromptWarning(PresubmitResult): |
- def __init__(self, message, items, long_text=''): |
+ def __init__(self, message, items, long_text=""): |
MockOutputApi.PresubmitResult.__init__(self, message, items, long_text) |
- self.type = 'warning' |
+ self.type = "warning" |
class PresubmitNotifyResult(PresubmitResult): |
- def __init__(self, message, items, long_text=''): |
+ def __init__(self, message, items, long_text=""): |
MockOutputApi.PresubmitResult.__init__(self, message, items, long_text) |
- self.type = 'notify' |
+ self.type = "notify" |
class MockFile(object): |
@@ -100,13 +100,13 @@ class MockFile(object): |
return [] |
for line in self.GenerateScmDiff().splitlines(): |
- m = re.match(r'^@@ [0-9\,\+\-]+ \+([0-9]+)\,[0-9]+ @@', line) |
+ m = re.match(r"^@@ [0-9\,\+\-]+ \+([0-9]+)\,[0-9]+ @@", line) |
if m: |
line_num = int(m.groups(1)[0]) |
continue |
- if line.startswith('+') and not line.startswith('++'): |
+ if line.startswith("+") and not line.startswith("++"): |
self._cached_changed_contents.append((line_num, line[1:])) |
- if not line.startswith('-'): |
+ if not line.startswith("-"): |
line_num += 1 |
return self._cached_changed_contents[:] |
@@ -119,15 +119,18 @@ class MockChange(object): |
return self._changed_files |
-class HistogramValueCheckerTest(unittest.TestCase): |
- TEST_FILE_PATTERN = "PRESUBMIT_test_new_file_%s.txt" |
+class StrictEnumValueCheckerTest(unittest.TestCase): |
+ TEST_FILE_PATTERN = "changed_file_%s.h" |
+ MOCK_FILE_LOCAL_PATH = "mock_enum.h" |
+ START_MARKER = "enum MockEnum {" |
+ END_MARKER = " mBoundary" |
def _ReadTextFileContents(self, path): |
"""Given a path, returns a list of strings corresponding to the text lines |
in the file. Reads files in text format. |
""" |
- fo = open(path, 'r') |
+ fo = open(path, "r") |
try: |
contents = fo.readlines() |
finally: |
@@ -135,7 +138,7 @@ class HistogramValueCheckerTest(unittest.TestCase): |
return contents |
def _ReadInputFile(self): |
- return self._ReadTextFileContents("PRESUBMIT_test_old_file.txt") |
+ return self._ReadTextFileContents("mock_enum.h") |
def _PrepareTest(self, new_file_path): |
old_contents = self._ReadInputFile() |
@@ -144,7 +147,7 @@ class HistogramValueCheckerTest(unittest.TestCase): |
else: |
new_contents = self._ReadTextFileContents(new_file_path) |
input_api = MockInputApi() |
- mock_file = MockFile(PRESUBMIT.HistogramValueChecker.LOCAL_PATH, |
+ mock_file = MockFile(self.MOCK_FILE_LOCAL_PATH, |
old_contents, |
new_contents) |
input_api.files.append(mock_file) |
@@ -153,7 +156,8 @@ class HistogramValueCheckerTest(unittest.TestCase): |
def _RunTest(self, new_file_path): |
input_api, output_api = self._PrepareTest(new_file_path) |
- checker = PRESUBMIT.HistogramValueChecker(input_api, output_api) |
+ checker = StrictEnumValueChecker(input_api, output_api, self.START_MARKER, |
+ self.END_MARKER, self.MOCK_FILE_LOCAL_PATH) |
results = checker.Run() |
return results |
@@ -161,7 +165,7 @@ class HistogramValueCheckerTest(unittest.TestCase): |
results = self._RunTest(new_file_path=None) |
# TODO(rpaquay) How to check it's the expected warning?' |
self.assertEquals(1, len(results), |
- "We hould get a single warning about file deletion.") |
+ "We should get a single warning about file deletion.") |
def testSimpleValidEdit(self): |
results = self._RunTest(self.TEST_FILE_PATTERN % "1") |
@@ -226,11 +230,6 @@ class HistogramValueCheckerTest(unittest.TestCase): |
"We should not get a warning for a deletion outside of " |
"the enum") |
- def testCommentIsNotEnumEndMarker(self): |
- results = self._RunTest(self.TEST_FILE_PATTERN % "11") |
- self.assertEquals(1, len(results), |
- "We should get a warning if '// Last Entry' is not the " |
- "enum end marker") |
if __name__ == '__main__': |
unittest.main() |