Revision: 15369
Author: [email protected]
Date: Thu Jun 27 12:45:45 2013
Log: Make webkit test output comparison compatible to stress testing.
In stress testing, the output is repeated several times. In this case, it
is now compared several times to the actual output.
[email protected]
Review URL: https://codereview.chromium.org/18062002
http://code.google.com/p/v8/source/detail?r=15369
Modified:
/branches/bleeding_edge/test/webkit/testcfg.py
=======================================
--- /branches/bleeding_edge/test/webkit/testcfg.py Wed Jun 26 07:23:30 2013
+++ /branches/bleeding_edge/test/webkit/testcfg.py Thu Jun 27 12:45:45 2013
@@ -116,16 +116,40 @@
return True
file_name = os.path.join(self.root, testpath) + "-expected.txt"
with file(file_name, "r") as expected:
- def ExpIterator():
- for line in expected.readlines():
- if line.startswith("#") or not line.strip(): continue
- yield line.strip()
- def ActIterator():
- for line in output.stdout.splitlines():
- if self._IgnoreLine(line.strip()): continue
- yield line.strip()
+ expected_lines = expected.readlines()
+
+ def ExpIterator():
+ for line in expected_lines:
+ if line.startswith("#") or not line.strip(): continue
+ yield line.strip()
+
+ def ActIterator(lines):
+ for line in lines:
+ if self._IgnoreLine(line.strip()): continue
+ yield line.strip()
+
+ def ActBlockIterator():
+ """Iterates over blocks of actual output lines."""
+ lines = output.stdout.splitlines()
+ start_index = 0
+ found_eqeq = False
+ for index, line in enumerate(lines):
+ # If a stress test separator is found:
+ if line.startswith("=="):
+ # Iterate over all lines before a separator except the first.
+ if not found_eqeq:
+ found_eqeq = True
+ else:
+ yield ActIterator(lines[start_index:index])
+ # The next block of ouput lines starts after the separator.
+ start_index = index + 1
+ # Iterate over complete output if no separator was found.
+ if not found_eqeq:
+ yield ActIterator(lines)
+
+ for act_iterator in ActBlockIterator():
for (expected, actual) in itertools.izip_longest(
- ExpIterator(), ActIterator(), fillvalue=''):
+ ExpIterator(), act_iterator, fillvalue=''):
if expected != actual:
return True
return False
--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.