Add a TestSCons.option_not_yet_implemented() method and use it so
authorstevenknight <stevenknight@fdb21ef1-2011-0410-befe-b5e4ea1792b1>
Tue, 15 Dec 2009 06:35:05 +0000 (06:35 +0000)
committerstevenknight <stevenknight@fdb21ef1-2011-0410-befe-b5e4ea1792b1>
Tue, 15 Dec 2009 06:35:05 +0000 (06:35 +0000)
the tests of those options expect an exit status of 1.

git-svn-id: http://scons.tigris.org/svn/scons/trunk@4547 fdb21ef1-2011-0410-befe-b5e4ea1792b1

13 files changed:
QMTest/TestSCons.py
test/option--R.py
test/option--W.py
test/option--la.py
test/option--ld.py
test/option--lw.py
test/option--override.py
test/option--wf.py
test/option--wuv.py
test/option-l.py
test/option-o.py
test/option-p.py
test/option-r.py

index f73de041733e7b471fbe8d09d77aa1ae1921d917..e698f4eaaa000320ec4b245d4851eba75c4188bb 100644 (file)
@@ -412,6 +412,25 @@ class TestSCons(TestCommon):
         kw['match'] = self.match_re_dotall
         apply(self.run, [], kw)
 
+    def option_not_yet_implemented(self, option, arguments=None, **kw):
+        """
+        Verifies expected behavior for options that are not yet implemented:
+        a warning message, and exit status 1.
+        """
+        msg = "Warning:  the %s option is not yet implemented\n" % option
+        kw['stderr'] = msg
+        kw['status'] = 1
+        if arguments:
+            # If it's a long option and the argument string begins with '=',
+            # it's of the form --foo=bar and needs no separating space.
+            if option[:2] == '--' and arguments[0] == '=':
+                kw['arguments'] = option + arguments
+            else:
+                kw['arguments'] = option + ' ' + arguments
+        # TODO(1.5)
+        #return self.run(**kw)
+        return apply(self.run, (), kw)
+
     def diff_substr(self, expect, actual, prelen=20, postlen=40):
         i = 0
         for x, y in zip(expect, actual):
index 5fecc670a88214f08228dccd86265b6f3edf22bd..3b66e288a20787dcabe6e8ca2120f8842d8c1d76 100644 (file)
@@ -30,14 +30,11 @@ test = TestSCons.TestSCons()
 
 test.write('SConstruct', "")
 
-test.run(arguments = '-R .',
-         stderr = "Warning:  the -R option is not yet implemented\n")
+test.option_not_yet_implemented('-R', '.')
 
-test.run(arguments = '--no-builtin-variables .',
-         stderr = "Warning:  the --no-builtin-variables option is not yet implemented\n")
+test.option_not_yet_implemented('--no-builtin-variables', '.')
 
 test.pass_test()
 
 # Local Variables:
 # tab-width:4
index 9f6fbe4960d87ed4a217aca58326d61b004d8359..e29cd7cd570146098704ee1734c4028c4713f87f 100644 (file)
@@ -30,21 +30,16 @@ test = TestSCons.TestSCons()
 
 test.write('SConstruct', "")
 
-test.run(arguments = '-W foo .',
-         stderr = "Warning:  the -W option is not yet implemented\n")
+test.option_not_yet_implemented('-W', 'foo .')
 
-test.run(arguments = '--what-if=foo .',
-         stderr = "Warning:  the --what-if option is not yet implemented\n")
+test.option_not_yet_implemented('--what-if', '=foo .')
 
-test.run(arguments = '--new-file=foo .',
-         stderr = "Warning:  the --new-file option is not yet implemented\n")
+test.option_not_yet_implemented('--new-file', '=foo .')
 
-test.run(arguments = '--assume-new=foo .',
-         stderr = "Warning:  the --assume-new option is not yet implemented\n")
+test.option_not_yet_implemented('--assume-new', '=foo .')
 
 test.pass_test()
  
-
 # Local Variables:
 # tab-width:4
 # indent-tabs-mode:nil
index ce3aed4a141e2f80f037abb099d357c7b67be061..8a264aab7f616459d450f9eefc63f07bbb24f0b7 100644 (file)
@@ -30,11 +30,9 @@ test = TestSCons.TestSCons()
 
 test.write('SConstruct', "")
 
-test.run(arguments = '--list-actions .',
-         stderr = "Warning:  the --list-actions option is not yet implemented\n")
+test.option_not_yet_implemented('--list-actions', '.')
 
 test.pass_test()
 
 # Local Variables:
 # tab-width:4
index 2145de59b409ce3f3fa9d6f5f3ecf1ba8d9e93c8..90c93460cda9455273c568efc88ae5cd706eac59 100644 (file)
@@ -30,11 +30,9 @@ test = TestSCons.TestSCons()
 
 test.write('SConstruct', "")
 
-test.run(arguments = '--list-derived .',
-         stderr = "Warning:  the --list-derived option is not yet implemented\n")
+test.option_not_yet_implemented('--list-derived', '.')
 
 test.pass_test()
 
 # Local Variables:
 # tab-width:4
index cafcb57f4b579c095c8ffc052a70c6200a882143..f0f5e786fd3e6a3515256c1966307e476fa7fcb0 100644 (file)
@@ -30,11 +30,9 @@ test = TestSCons.TestSCons()
 
 test.write('SConstruct', "")
 
-test.run(arguments = '--list-where .',
-         stderr = "Warning:  the --list-where option is not yet implemented\n")
+test.option_not_yet_implemented('--list-where', '.')
 
 test.pass_test()
 
 # Local Variables:
 # tab-width:4
index 42a92ada0990cc33585a6dbf32e693c6c2b7d6be..7d81fb170ee1aaa56c3b0268e0ab1afb45fd1d03 100644 (file)
@@ -30,11 +30,9 @@ test = TestSCons.TestSCons()
 
 test.write('SConstruct', "")
 
-test.run(arguments = '--override=foo .',
-         stderr = "Warning:  the --override option is not yet implemented\n")
+test.option_not_yet_implemented('--override', '=foo .')
 
 test.pass_test()
 
 # Local Variables:
 # tab-width:4
index 7e8cfa7f141d716c041388546d3f265ca6e169f6..79824f305af03ccf4f3d59c0b8dca820cb669f01 100644 (file)
@@ -30,11 +30,9 @@ test = TestSCons.TestSCons()
 
 test.write('SConstruct', "")
 
-test.run(arguments = '--write-filenames=FILE .',
-         stderr = "Warning:  the --write-filenames option is not yet implemented\n")
+test.option_not_yet_implemented('--write-filenames', '=FILE .')
 
 test.pass_test()
 
 # Local Variables:
 # tab-width:4
index b08567f62ec193df5e5267ab168f227d2eb2a07d..c6845289a234b7f04e2d2132fc704d84feab153d 100644 (file)
@@ -38,11 +38,9 @@ test.pass_test()        #XXX Short-circuit until then.
 
 test.write('SConstruct', "")
 
-test.run(arguments = '--warn-undefined-variables',
-        stderr = "Warning:  the --warn-undefined-variables option is not yet implemented\n")
+test.option_not_yet_implemented('--warn-undefined-variables')
 
 test.pass_test()
 
 # Local Variables:
 # tab-width:4
index eedb01e76a7bb07d682d7f81f8d7414a2495464a..af308af76c2a3192c3ae6332f1e2bd1fdb79ef66 100644 (file)
@@ -30,17 +30,13 @@ test = TestSCons.TestSCons()
 
 test.write('SConstruct', "")
 
-test.run(arguments = '-l 1 .',
-         stderr = "Warning:  the -l option is not yet implemented\n")
+test.option_not_yet_implemented('-l', '1 .')
 
-test.run(arguments = '--load-average=1 .',
-         stderr = "Warning:  the --load-average option is not yet implemented\n")
+test.option_not_yet_implemented('--load-average', '=1 .')
 
-test.run(arguments = '--max-load=1 .',
-         stderr = "Warning:  the --max-load option is not yet implemented\n")
+test.option_not_yet_implemented('--max-load', '=1 .')
 
 test.pass_test()
 
 # Local Variables:
 # tab-width:4
index 23f102b8c5f44ff02c8e7fb20331f3f6d7537dfd..bde8e8f4397430fe6180b076759ebab21218f2c2 100644 (file)
@@ -30,17 +30,13 @@ test = TestSCons.TestSCons()
 
 test.write('SConstruct', "")
 
-test.run(arguments = '-o foo .',
-         stderr = "Warning:  the -o option is not yet implemented\n")
+test.option_not_yet_implemented('-o', 'foo .')
 
-test.run(arguments = '--old-file=foo .',
-         stderr = "Warning:  the --old-file option is not yet implemented\n")
+test.option_not_yet_implemented('--old-file', '=foo .')
 
-test.run(arguments = '--assume-old=foo .',
-         stderr = "Warning:  the --assume-old option is not yet implemented\n")
+test.option_not_yet_implemented('--assume-old', '=foo .')
 
 test.pass_test()
 
 # Local Variables:
 # tab-width:4
index c4c5d7536d87b26058fe83d1703b700f53221e03..11390ab2bcdf5e90bdbe19537f5fd75c0d1fdb72 100644 (file)
@@ -30,11 +30,9 @@ test = TestSCons.TestSCons()
 
 test.write('SConstruct', "")
 
-test.run(arguments = '-p .',
-         stderr = "Warning:  the -p option is not yet implemented\n")
+test.option_not_yet_implemented('-p', '.')
 
 test.pass_test()
 
 # Local Variables:
 # tab-width:4
index 0c124d121ea4ad68880744c353ea0cca54d7ee68..a3c3911d3adb462d6ba85d8d0ae5e02448de8580 100644 (file)
@@ -30,14 +30,11 @@ test = TestSCons.TestSCons()
 
 test.write('SConstruct', "")
 
-test.run(arguments = '-r .',
-         stderr = "Warning:  the -r option is not yet implemented\n")
+test.option_not_yet_implemented('-r', '.')
 
-test.run(arguments = '--no-builtin-rules .',
-         stderr = "Warning:  the --no-builtin-rules option is not yet implemented\n")
+test.option_not_yet_implemented('--no-builtin-rules', '.')
 
 test.pass_test()
 
 # Local Variables:
 # tab-width:4