Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(218)

Unified Diff: appengine/findit/waterfall/test/extractors_test.py

Issue 1933013003: [Findit] Extract failed output nodes from stdio log of compile step. (Closed) Base URL: https://chromium.googlesource.com/infra/infra.git@master
Patch Set: Address comments. Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: appengine/findit/waterfall/test/extractors_test.py
diff --git a/appengine/findit/waterfall/test/extractors_test.py b/appengine/findit/waterfall/test/extractors_test.py
index 4117c0e77bef475afd6f801af4ca46a0de1123cc..0b832218ca86aa5267c5106de71ee4ee4d1a296f 100644
--- a/appengine/findit/waterfall/test/extractors_test.py
+++ b/appengine/findit/waterfall/test/extractors_test.py
@@ -286,17 +286,17 @@ Note:You can safely ignore the above warning unless this call should not happen.
failure_log = textwrap.dedent("""
[1832/2467 | 117.498] CXX obj/a/b/test.file.o
blabla...
- FAILED: obj/a/b/test.c.o
+ FAILED: obj/a/b/test.c.o
/b/build/goma/gomacc blabla ... -c ../../a/b/c.cc -o obj/a/b/test.c.o
../../a/b/c.cc:307:44: error: no member 'kEnableExtensionInfoDialog' ...
1 error generated.
x/y/not_in_signal.cc
- FAILED: obj/a/b/test.d.o
+ FAILED: obj/a/b/test.d.o
/b/build/goma/gomacc blabla ... -c ../../a/b/d.cc -o obj/a/b/test.d.o
../../a/b/d.cc:123:44: error: no member 'kEnableExtensionInfoDialog' ...
blabla...
1 error generated.
- FAILED: obj/a/b/test.e.o
+ FAILED: obj/a/b/test.e.o
/b/build/goma/gomacc ... ../../a/b/e.cc ... obj/a/b/test.e.o
../../a/b/e.cc:79:44: error: no member 'kEnableExtensionInfoDialog' ...
blabla...
@@ -310,7 +310,12 @@ Note:You can safely ignore the above warning unless this call should not happen.
'a/b/d.cc': [123],
'a/b/e.cc': [79]
},
- 'keywords': {}
+ 'keywords': {},
+ 'failed_output_nodes': [
+ 'obj/a/b/test.c.o',
+ 'obj/a/b/test.d.o',
+ 'obj/a/b/test.e.o',
+ ],
}
self._RunTest(
@@ -360,7 +365,13 @@ Note:You can safely ignore the above warning unless this call should not happen.
{
'target': 'target.exe'
}
- ]
+ ],
+ 'failed_output_nodes': [
+ 'notgoma.exe',
+ 'obj/a/b/c.o',
+ 'obj/a/b/x.o',
+ 'target.exe',
+ ],
}
self._RunTest(
@@ -386,7 +397,10 @@ Note:You can safely ignore the above warning unless this call should not happen.
'source': 'a/b.cc',
'target': 'c/d.o'
}
- ]
+ ],
+ 'failed_output_nodes': [
+ 'blabla',
+ ],
}
self._RunTest(
@@ -413,7 +427,11 @@ Note:You can safely ignore the above warning unless this call should not happen.
{
'target': '"target with spaces and quotes"'
}
- ]
+ ],
+ 'failed_output_nodes': [
+ 'a/b.nexe',
+ 'target with spaces and quotes',
+ ],
}
self._RunTest(
@@ -443,7 +461,11 @@ Note:You can safely ignore the above warning unless this call should not happen.
'source': '..\\..\\d\\e\\f.cc',
'target': 'd\\e\\f\\a.b.obj'
},
- ]
+ ],
+ 'failed_output_nodes': [
+ 'a\\b.c.obj',
+ 'd\\e\\f\\a.b.obj',
+ ],
}
self._RunTest(failure_log, extractors.CompileStepExtractor,
@@ -462,7 +484,10 @@ Note:You can safely ignore the above warning unless this call should not happen.
{
'target': 'test.exe'
}
- ]
+ ],
+ 'failed_output_nodes': [
+ 'test.exe',
+ ],
}
self._RunTest(
@@ -553,14 +578,16 @@ Note:You can safely ignore the above warning unless this call should not happen.
'source': 'a.c',
'target': 'obj/a.o',
},
- ]
+ ],
+ 'failed_output_nodes': [
+ 'obj/a.o',
+ ],
}
self._RunTest(
failure_log, extractors.CompileStepExtractor, expected_signal_json)
def testCompileStepStrictRegexForLinkFailures(self):
-
goma_gcc_prefix = (
'/b/build/slave/Linux/build/src/build/goma/client/gomacc '
'/bla/bla/.../bin/arm-linux-androideabi-gcc')
@@ -570,7 +597,40 @@ Note:You can safely ignore the above warning unless this call should not happen.
FAILED: obj/a.o
%s -Wl,-z,now ... -o exe -Wl,--start-group obj/a.o ...
blalba...
- FAILED: cd a/b/c; python script.py a b c blabla....
+ FAILED: action_output_name
+ cd a/b/c; python script.py a b c blabla....
+ blalba...
+ ninja: build stopped: subcommand failed.
+
+ /b/build/goma/goma_ctl.sh stat
+ blabla...""" % goma_gcc_prefix)
+ expected_signal_json = {
+ 'files': {
+ },
+ 'keywords': {},
+ 'failed_targets': [
+ {
+ 'target': 'exe',
+ },
+ ],
+ 'failed_output_nodes': [
+ 'action_output_name',
+ 'obj/a.o',
+ ],
+ }
+
+ self._RunTest(
+ failure_log, extractors.CompileStepExtractor, expected_signal_json)
+
+ def testCompileStepNoMatchingQuote(self):
+ goma_gcc_prefix = (
+ '/b/build/slave/Linux/build/src/build/goma/client/gomacc '
+ '/bla/bla/.../bin/arm-linux-androideabi-gcc')
+ failure_log = textwrap.dedent("""
+ [1832/2467 | 117.498] CXX obj/a/b/test.file.o
+ blabla...
+ FAILED: a "b no matching quote
+ %s -Wl,-z,now ... -o exe -Wl,--start-group obj/a.o ...
blalba...
ninja: build stopped: subcommand failed.
@@ -584,7 +644,7 @@ Note:You can safely ignore the above warning unless this call should not happen.
{
'target': 'exe',
},
- ]
+ ],
}
self._RunTest(
« no previous file with comments | « appengine/findit/waterfall/failure_signal.py ('k') | appengine/findit/waterfall/test/failure_signal_test.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698