summaryrefslogtreecommitdiffstats
path: root/test/up-to-date.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/up-to-date.py')
-rw-r--r--test/up-to-date.py33
1 files changed, 30 insertions, 3 deletions
diff --git a/test/up-to-date.py b/test/up-to-date.py
index cec5952..366d017 100644
--- a/test/up-to-date.py
+++ b/test/up-to-date.py
@@ -24,9 +24,12 @@
__revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__"
-import os.path
+"""
+Verify appropriate printing of "is up to date" messages.
+"""
+
import string
-import sys
+
import TestSCons
_python_ = TestSCons._python_
@@ -66,5 +69,29 @@ scons: `f3.out' is up to date.
test.run(arguments = 'f1.out f2.out f3.out f4.out', stdout = expect)
-test.pass_test()
+# Make sure all of the "up to date" messages get printed even when -j
+# is used. This broke during signature refactoring development.
+expected_lines = [
+ "scons: `f1.out' is up to date.",
+ "scons: `f2.out' is up to date.",
+ "scons: `f3.out' is up to date.",
+ "scons: `f4.out' is up to date.",
+]
+test.run(options = '-j4 f1.out f2.out f3.out f4.out')
+stdout = test.stdout()
+
+missing = []
+for line in expected_lines:
+ if string.find(stdout, line) == -1:
+ missing.append(line)
+
+if missing:
+ print "Missing the following expected lines:"
+ for line in missing:
+ print line
+ print "STDOUT =========="
+ print stdout
+ test.fail_test()
+
+test.pass_test()