diff options
-rw-r--r-- | src/test/py/bazel/bazel_clean_test.py | 31 | ||||
-rw-r--r-- | src/test/py/bazel/bazel_server_mode_test.py | 8 | ||||
-rw-r--r-- | src/test/py/bazel/bazel_windows_test.py | 15 | ||||
-rw-r--r-- | src/test/py/bazel/test_base.py | 11 |
4 files changed, 41 insertions, 24 deletions
diff --git a/src/test/py/bazel/bazel_clean_test.py b/src/test/py/bazel/bazel_clean_test.py index 51f085f10f..dc9f055e03 100644 --- a/src/test/py/bazel/bazel_clean_test.py +++ b/src/test/py/bazel/bazel_clean_test.py @@ -22,33 +22,36 @@ class BazelCleanTest(test_base.TestBase): def testBazelClean(self): self.ScratchFile('WORKSPACE') self.ScratchFile('foo/BUILD', [ - 'genrule(', ' name = "x",', ' outs = ["x.out"],', - ' cmd = "touch $@",', ')' + 'genrule(', + ' name = "x",', + ' outs = ["x.out"],', + ' cmd = "touch $@",', + ')', ]) - exit_code, stdout, _ = self.RunBazel(['info', 'bazel-genfiles']) - self.assertEqual(exit_code, 0) + exit_code, stdout, stderr = self.RunBazel(['info', 'bazel-genfiles']) + self.AssertExitCode(exit_code, 0, stderr) bazel_genfiles = stdout[0] - exit_code, stdout, _ = self.RunBazel(['info', 'output_base']) - self.assertEqual(exit_code, 0) + exit_code, stdout, stderr = self.RunBazel(['info', 'output_base']) + self.AssertExitCode(exit_code, 0, stderr) output_base = stdout[0] - exit_code, _, _ = self.RunBazel(['build', '//foo:x']) - self.assertEqual(exit_code, 0) + exit_code, _, stderr = self.RunBazel(['build', '//foo:x']) + self.AssertExitCode(exit_code, 0, stderr) self.assertTrue(os.path.exists(os.path.join(bazel_genfiles, 'foo/x.out'))) - exit_code, _, _ = self.RunBazel(['clean']) - self.assertEqual(exit_code, 0) + exit_code, _, stderr = self.RunBazel(['clean']) + self.AssertExitCode(exit_code, 0, stderr) self.assertFalse(os.path.exists(os.path.join(bazel_genfiles, 'foo/x.out'))) self.assertTrue(os.path.exists(output_base)) - exit_code, _, _ = self.RunBazel(['build', '//foo:x']) - self.assertEqual(exit_code, 0) + exit_code, _, stderr = self.RunBazel(['build', '//foo:x']) + self.AssertExitCode(exit_code, 0, stderr) self.assertTrue(os.path.exists(os.path.join(bazel_genfiles, 'foo/x.out'))) - exit_code, _, _ = self.RunBazel(['clean', '--expunge']) - self.assertEqual(exit_code, 0) + exit_code, _, stderr = self.RunBazel(['clean', '--expunge']) + self.AssertExitCode(exit_code, 0, stderr) self.assertFalse(os.path.exists(os.path.join(bazel_genfiles, 'foo/x.out'))) self.assertFalse(os.path.exists(output_base)) diff --git a/src/test/py/bazel/bazel_server_mode_test.py b/src/test/py/bazel/bazel_server_mode_test.py index b132b0e03d..dbe71fb848 100644 --- a/src/test/py/bazel/bazel_server_mode_test.py +++ b/src/test/py/bazel/bazel_server_mode_test.py @@ -22,12 +22,12 @@ class BazelServerModeTest(test_base.TestBase): def testBazelServerMode(self): self.ScratchFile('WORKSPACE') - exit_code, stdout, _ = self.RunBazel(['info', 'server_pid']) - self.assertEqual(exit_code, 0) + exit_code, stdout, stderr = self.RunBazel(['info', 'server_pid']) + self.AssertExitCode(exit_code, 0, stderr) pid1 = stdout[0] - exit_code, stdout, _ = self.RunBazel(['info', 'server_pid']) - self.assertEqual(exit_code, 0) + exit_code, stdout, stderr = self.RunBazel(['info', 'server_pid']) + self.AssertExitCode(exit_code, 0, stderr) pid2 = stdout[0] self.assertEqual(pid1, pid2) diff --git a/src/test/py/bazel/bazel_windows_test.py b/src/test/py/bazel/bazel_windows_test.py index 27bc37366c..163606b6c4 100644 --- a/src/test/py/bazel/bazel_windows_test.py +++ b/src/test/py/bazel/bazel_windows_test.py @@ -22,14 +22,17 @@ class BazelWindowsTest(test_base.TestBase): self.ScratchFile('WORKSPACE') self.ScratchFile('foo/BUILD', ['cc_binary(name="x", srcs=["x.cc"])']) self.ScratchFile('foo/x.cc', [ - '#include <stdio.h>', 'int main(int, char**) {' - ' printf("hello\\n");', ' return 0;', '}' + '#include <stdio.h>', + 'int main(int, char**) {' + ' printf("hello\\n");', + ' return 0;', + '}', ]) exit_code, _, stderr = self.RunBazel( ['--batch', 'build', '//foo:x', '--cpu=x64_windows_msys'], env_remove={'BAZEL_SH'}) - self.assertEqual(exit_code, 2) + self.AssertExitCode(exit_code, 2, stderr) self.assertIn('\'BAZEL_SH\' environment variable is not set', '\n'.join(stderr)) @@ -37,13 +40,13 @@ class BazelWindowsTest(test_base.TestBase): '--batch', '--host_jvm_args=-Dbazel.windows_unix_root=', 'build', '//foo:x', '--cpu=x64_windows_msys' ]) - self.assertEqual(exit_code, 37) + self.AssertExitCode(exit_code, 37, stderr) self.assertIn('"bazel.windows_unix_root" JVM flag is not set', '\n'.join(stderr)) - exit_code, _, _ = self.RunBazel( + exit_code, _, stderr = self.RunBazel( ['--batch', 'build', '//foo:x', '--cpu=x64_windows_msys']) - self.assertEqual(exit_code, 0) + self.AssertExitCode(exit_code, 0, stderr) if __name__ == '__main__': diff --git a/src/test/py/bazel/test_base.py b/src/test/py/bazel/test_base.py index 7d0bba7385..71e89dc9a2 100644 --- a/src/test/py/bazel/test_base.py +++ b/src/test/py/bazel/test_base.py @@ -55,6 +55,17 @@ class TestBase(unittest.TestCase): os.mkdir(self._tests_root) os.chdir(self._tests_root) + def AssertExitCode(self, actual_exit_code, expected_exit_code, stderr_lines): + """Assert that `actual_exit_code` == `expected_exit_code`.""" + if actual_exit_code != expected_exit_code: + self.fail('\n'.join([ + 'Bazel exited with %d (expected %d), stderr:' % (actual_exit_code, + expected_exit_code), + '(start stderr)----------------------------------------', + ] + (stderr_lines or []) + [ + '(end stderr)------------------------------------------', + ])) + @staticmethod def GetEnv(name, default=None): """Returns environment variable `name`. |