description field is missing (e.g., 'FAIL: libstdc++/abi_check'), so
the space that the pattern was looking for does not exist.
I've changed it to match any whitespace, which includes '\n'. I also
made it print the line that it fails to parse, in case there are other
problems like this in the future.
2012-03-02 Diego Novillo <dnovillo@google.com>
* testsuite-management/validate_failures.py (class TestResult): Fix
match pattern for the summary line. If there is a parsing failure,
show the line we failed to parse.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@184822
138bc75d-0d04-0410-961f-
82ee72b054a4
self.attrs = ''
if '|' in summary_line:
(self.attrs, summary_line) = summary_line.split('|', 1)
- (self.state,
- self.name,
- self.description) = re.match(r' *([A-Z]+): ([^ ]+) (.*)',
- summary_line).groups()
+ try:
+ (self.state,
+ self.name,
+ self.description) = re.match(r' *([A-Z]+): (\S+)\s(.*)',
+ summary_line).groups()
+ except:
+ print 'Failed to parse summary line: "%s"' % summary_line
+ raise
self.attrs = self.attrs.strip()
self.state = self.state.strip()
self.description = self.description.strip()