diff options
Diffstat (limited to 'src/engine/SCons/Variables')
| -rw-r--r-- | src/engine/SCons/Variables/BoolVariable.py | 4 | ||||
| -rw-r--r-- | src/engine/SCons/Variables/BoolVariableTests.py | 9 | ||||
| -rw-r--r-- | src/engine/SCons/Variables/EnumVariable.py | 4 | ||||
| -rw-r--r-- | src/engine/SCons/Variables/EnumVariableTests.py | 9 | ||||
| -rw-r--r-- | src/engine/SCons/Variables/ListVariable.py | 4 | ||||
| -rw-r--r-- | src/engine/SCons/Variables/ListVariableTests.py | 9 | ||||
| -rw-r--r-- | src/engine/SCons/Variables/PackageVariable.py | 4 | ||||
| -rw-r--r-- | src/engine/SCons/Variables/PackageVariableTests.py | 9 | ||||
| -rw-r--r-- | src/engine/SCons/Variables/PathVariable.py | 4 | ||||
| -rw-r--r-- | src/engine/SCons/Variables/PathVariableTests.py | 9 | ||||
| -rw-r--r-- | src/engine/SCons/Variables/VariablesTests.py | 44 | ||||
| -rw-r--r-- | src/engine/SCons/Variables/__init__.py | 11 | 
12 files changed, 60 insertions, 60 deletions
diff --git a/src/engine/SCons/Variables/BoolVariable.py b/src/engine/SCons/Variables/BoolVariable.py index 881a6b4..5af3a5f 100644 --- a/src/engine/SCons/Variables/BoolVariable.py +++ b/src/engine/SCons/Variables/BoolVariable.py @@ -12,7 +12,7 @@ Usage example::  """  # -# Copyright (c) 2001 - 2017 The SCons Foundation +# Copyright (c) 2001 - 2019 The SCons Foundation  #  # Permission is hereby granted, free of charge, to any person obtaining  # a copy of this software and associated documentation files (the @@ -34,7 +34,7 @@ Usage example::  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.  # -__revision__ = "src/engine/SCons/Variables/BoolVariable.py rel_3.0.0:4395:8972f6a2f699 2017/09/18 12:59:24 bdbaddog" +__revision__ = "src/engine/SCons/Variables/BoolVariable.py 103260fce95bf5db1c35fb2371983087d85dd611 2019-07-13 18:25:30 bdbaddog"  __all__ = ['BoolVariable',] diff --git a/src/engine/SCons/Variables/BoolVariableTests.py b/src/engine/SCons/Variables/BoolVariableTests.py index 42beaee..62519bc 100644 --- a/src/engine/SCons/Variables/BoolVariableTests.py +++ b/src/engine/SCons/Variables/BoolVariableTests.py @@ -1,5 +1,5 @@  # -# Copyright (c) 2001 - 2017 The SCons Foundation +# Copyright (c) 2001 - 2019 The SCons Foundation  #  # Permission is hereby granted, free of charge, to any person obtaining  # a copy of this software and associated documentation files (the @@ -21,13 +21,11 @@  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.  # -__revision__ = "src/engine/SCons/Variables/BoolVariableTests.py rel_3.0.0:4395:8972f6a2f699 2017/09/18 12:59:24 bdbaddog" +__revision__ = "src/engine/SCons/Variables/BoolVariableTests.py 103260fce95bf5db1c35fb2371983087d85dd611 2019-07-13 18:25:30 bdbaddog"  import sys  import unittest -import TestUnit -  import SCons.Errors  import SCons.Variables @@ -118,8 +116,7 @@ class BoolVariableTestCase(unittest.TestCase):  if __name__ == "__main__": -    suite = unittest.makeSuite(BoolVariableTestCase, 'test_') -    TestUnit.run(suite) +    unittest.main()  # Local Variables:  # tab-width:4 diff --git a/src/engine/SCons/Variables/EnumVariable.py b/src/engine/SCons/Variables/EnumVariable.py index b6fc382..1a5f40c 100644 --- a/src/engine/SCons/Variables/EnumVariable.py +++ b/src/engine/SCons/Variables/EnumVariable.py @@ -15,7 +15,7 @@ Usage example::  """  # -# Copyright (c) 2001 - 2017 The SCons Foundation +# Copyright (c) 2001 - 2019 The SCons Foundation  #  # Permission is hereby granted, free of charge, to any person obtaining  # a copy of this software and associated documentation files (the @@ -37,7 +37,7 @@ Usage example::  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.  # -__revision__ = "src/engine/SCons/Variables/EnumVariable.py rel_3.0.0:4395:8972f6a2f699 2017/09/18 12:59:24 bdbaddog" +__revision__ = "src/engine/SCons/Variables/EnumVariable.py 103260fce95bf5db1c35fb2371983087d85dd611 2019-07-13 18:25:30 bdbaddog"  __all__ = ['EnumVariable',] diff --git a/src/engine/SCons/Variables/EnumVariableTests.py b/src/engine/SCons/Variables/EnumVariableTests.py index caef48f..d6e4761 100644 --- a/src/engine/SCons/Variables/EnumVariableTests.py +++ b/src/engine/SCons/Variables/EnumVariableTests.py @@ -1,5 +1,5 @@  # -# Copyright (c) 2001 - 2017 The SCons Foundation +# Copyright (c) 2001 - 2019 The SCons Foundation  #  # Permission is hereby granted, free of charge, to any person obtaining  # a copy of this software and associated documentation files (the @@ -21,13 +21,11 @@  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.  # -__revision__ = "src/engine/SCons/Variables/EnumVariableTests.py rel_3.0.0:4395:8972f6a2f699 2017/09/18 12:59:24 bdbaddog" +__revision__ = "src/engine/SCons/Variables/EnumVariableTests.py 103260fce95bf5db1c35fb2371983087d85dd611 2019-07-13 18:25:30 bdbaddog"  import sys  import unittest -import TestUnit -  import SCons.Errors  import SCons.Variables @@ -195,8 +193,7 @@ class EnumVariableTestCase(unittest.TestCase):  if __name__ == "__main__": -    suite = unittest.makeSuite(EnumVariableTestCase, 'test_') -    TestUnit.run(suite) +    unittest.main()  # Local Variables:  # tab-width:4 diff --git a/src/engine/SCons/Variables/ListVariable.py b/src/engine/SCons/Variables/ListVariable.py index 8f9a9a8..d0f99f5 100644 --- a/src/engine/SCons/Variables/ListVariable.py +++ b/src/engine/SCons/Variables/ListVariable.py @@ -25,7 +25,7 @@ Usage example::  """  # -# Copyright (c) 2001 - 2017 The SCons Foundation +# Copyright (c) 2001 - 2019 The SCons Foundation  #  # Permission is hereby granted, free of charge, to any person obtaining  # a copy of this software and associated documentation files (the @@ -46,7 +46,7 @@ Usage example::  # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Variables/ListVariable.py rel_3.0.0:4395:8972f6a2f699 2017/09/18 12:59:24 bdbaddog" +__revision__ = "src/engine/SCons/Variables/ListVariable.py 103260fce95bf5db1c35fb2371983087d85dd611 2019-07-13 18:25:30 bdbaddog"  # Known Bug: This should behave like a Set-Type, but does not really,  # since elements can occur twice. diff --git a/src/engine/SCons/Variables/ListVariableTests.py b/src/engine/SCons/Variables/ListVariableTests.py index be45aed..ff933d0 100644 --- a/src/engine/SCons/Variables/ListVariableTests.py +++ b/src/engine/SCons/Variables/ListVariableTests.py @@ -1,5 +1,5 @@  # -# Copyright (c) 2001 - 2017 The SCons Foundation +# Copyright (c) 2001 - 2019 The SCons Foundation  #  # Permission is hereby granted, free of charge, to any person obtaining  # a copy of this software and associated documentation files (the @@ -21,14 +21,12 @@  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.  # -__revision__ = "src/engine/SCons/Variables/ListVariableTests.py rel_3.0.0:4395:8972f6a2f699 2017/09/18 12:59:24 bdbaddog" +__revision__ = "src/engine/SCons/Variables/ListVariableTests.py 103260fce95bf5db1c35fb2371983087d85dd611 2019-07-13 18:25:30 bdbaddog"  import copy  import sys  import unittest -import TestUnit -  import SCons.Errors  import SCons.Variables @@ -125,8 +123,7 @@ class ListVariableTestCase(unittest.TestCase):          n = l.__class__(copy.copy(l))  if __name__ == "__main__": -    suite = unittest.makeSuite(ListVariableTestCase, 'test_') -    TestUnit.run(suite) +    unittest.main()  # Local Variables:  # tab-width:4 diff --git a/src/engine/SCons/Variables/PackageVariable.py b/src/engine/SCons/Variables/PackageVariable.py index 8e229b7..e2b3394 100644 --- a/src/engine/SCons/Variables/PackageVariable.py +++ b/src/engine/SCons/Variables/PackageVariable.py @@ -28,7 +28,7 @@ Usage example:  """  # -# Copyright (c) 2001 - 2017 The SCons Foundation +# Copyright (c) 2001 - 2019 The SCons Foundation  #  # Permission is hereby granted, free of charge, to any person obtaining  # a copy of this software and associated documentation files (the @@ -50,7 +50,7 @@ Usage example:  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.  # -__revision__ = "src/engine/SCons/Variables/PackageVariable.py rel_3.0.0:4395:8972f6a2f699 2017/09/18 12:59:24 bdbaddog" +__revision__ = "src/engine/SCons/Variables/PackageVariable.py 103260fce95bf5db1c35fb2371983087d85dd611 2019-07-13 18:25:30 bdbaddog"  __all__ = ['PackageVariable',] diff --git a/src/engine/SCons/Variables/PackageVariableTests.py b/src/engine/SCons/Variables/PackageVariableTests.py index 30a88b5..636e2c1 100644 --- a/src/engine/SCons/Variables/PackageVariableTests.py +++ b/src/engine/SCons/Variables/PackageVariableTests.py @@ -1,5 +1,5 @@  # -# Copyright (c) 2001 - 2017 The SCons Foundation +# Copyright (c) 2001 - 2019 The SCons Foundation  #  # Permission is hereby granted, free of charge, to any person obtaining  # a copy of this software and associated documentation files (the @@ -21,7 +21,7 @@  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.  # -__revision__ = "src/engine/SCons/Variables/PackageVariableTests.py rel_3.0.0:4395:8972f6a2f699 2017/09/18 12:59:24 bdbaddog" +__revision__ = "src/engine/SCons/Variables/PackageVariableTests.py 103260fce95bf5db1c35fb2371983087d85dd611 2019-07-13 18:25:30 bdbaddog"  import sys  import unittest @@ -30,8 +30,6 @@ import SCons.Errors  import SCons.Variables  import TestCmd -import TestUnit -  class PackageVariableTestCase(unittest.TestCase):      def test_PackageVariable(self): @@ -115,8 +113,7 @@ class PackageVariableTestCase(unittest.TestCase):  if __name__ == "__main__": -    suite = unittest.makeSuite(PackageVariableTestCase, 'test_') -    TestUnit.run(suite) +    unittest.main()  # Local Variables:  # tab-width:4 diff --git a/src/engine/SCons/Variables/PathVariable.py b/src/engine/SCons/Variables/PathVariable.py index dc5fcd2..52df0af 100644 --- a/src/engine/SCons/Variables/PathVariable.py +++ b/src/engine/SCons/Variables/PathVariable.py @@ -45,7 +45,7 @@ Usage example::  """  # -# Copyright (c) 2001 - 2017 The SCons Foundation +# Copyright (c) 2001 - 2019 The SCons Foundation  #  # Permission is hereby granted, free of charge, to any person obtaining  # a copy of this software and associated documentation files (the @@ -67,7 +67,7 @@ Usage example::  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.  # -__revision__ = "src/engine/SCons/Variables/PathVariable.py rel_3.0.0:4395:8972f6a2f699 2017/09/18 12:59:24 bdbaddog" +__revision__ = "src/engine/SCons/Variables/PathVariable.py 103260fce95bf5db1c35fb2371983087d85dd611 2019-07-13 18:25:30 bdbaddog"  __all__ = ['PathVariable',] diff --git a/src/engine/SCons/Variables/PathVariableTests.py b/src/engine/SCons/Variables/PathVariableTests.py index c8518af..1cd35f6 100644 --- a/src/engine/SCons/Variables/PathVariableTests.py +++ b/src/engine/SCons/Variables/PathVariableTests.py @@ -1,5 +1,5 @@  # -# Copyright (c) 2001 - 2017 The SCons Foundation +# Copyright (c) 2001 - 2019 The SCons Foundation  #  # Permission is hereby granted, free of charge, to any person obtaining  # a copy of this software and associated documentation files (the @@ -21,7 +21,7 @@  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.  # -__revision__ = "src/engine/SCons/Variables/PathVariableTests.py rel_3.0.0:4395:8972f6a2f699 2017/09/18 12:59:24 bdbaddog" +__revision__ = "src/engine/SCons/Variables/PathVariableTests.py 103260fce95bf5db1c35fb2371983087d85dd611 2019-07-13 18:25:30 bdbaddog"  import os.path  import sys @@ -31,8 +31,6 @@ import SCons.Errors  import SCons.Variables  import TestCmd -import TestUnit -  class PathVariableTestCase(unittest.TestCase):      def test_PathVariable(self): @@ -228,8 +226,7 @@ class PathVariableTestCase(unittest.TestCase):  if __name__ == "__main__": -    suite = unittest.makeSuite(PathVariableTestCase, 'test_') -    TestUnit.run(suite) +    unittest.main()  # Local Variables:  # tab-width:4 diff --git a/src/engine/SCons/Variables/VariablesTests.py b/src/engine/SCons/Variables/VariablesTests.py index dc507ce..7712bb4 100644 --- a/src/engine/SCons/Variables/VariablesTests.py +++ b/src/engine/SCons/Variables/VariablesTests.py @@ -1,5 +1,5 @@  # -# Copyright (c) 2001 - 2017 The SCons Foundation +# Copyright (c) 2001 - 2019 The SCons Foundation  #  # Permission is hereby granted, free of charge, to any person obtaining  # a copy of this software and associated documentation files (the @@ -21,17 +21,17 @@  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.  # -__revision__ = "src/engine/SCons/Variables/VariablesTests.py rel_3.0.0:4395:8972f6a2f699 2017/09/18 12:59:24 bdbaddog" +__revision__ = "src/engine/SCons/Variables/VariablesTests.py 103260fce95bf5db1c35fb2371983087d85dd611 2019-07-13 18:25:30 bdbaddog"  import sys  import unittest  import TestSCons -import TestUnit  import SCons.Variables  import SCons.Subst  import SCons.Warnings +from SCons.Util import cmp  class Environment(object): @@ -49,12 +49,6 @@ class Environment(object):          return key in self.dict -def cmp(a, b): -    """ -    Define cmp because it's no longer available in python3 -    Works under python 2 as well -    """ -    return (a > b) - (a < b)  def check(key, value, env): @@ -65,7 +59,9 @@ def check(key, value, env):  def checkSave(file, expected):      gdict = {}      ldict = {} -    exec(open(file, 'r').read(), gdict, ldict) +    with open(file, 'r') as f: +        exec(f.read(), gdict, ldict) +      assert expected == ldict, "%s\n...not equal to...\n%s" % (expected, ldict)  class VariablesTestCase(unittest.TestCase): @@ -492,9 +488,29 @@ B: b - alpha test      default: 42      actual: 54  """ + +        expectBackwards = """ +B: b - alpha test +    default: 42 +    actual: 54 + +ANSWER: THE answer to THE question +    default: 42 +    actual: 54 + +A: a - alpha test +    default: 42 +    actual: 54 +"""          text = opts.GenerateHelpText(env, sort=cmp)          assert text == expectAlpha, text +        textBool = opts.GenerateHelpText(env, sort=True) +        assert text == expectAlpha, text + +        textBackwards = opts.GenerateHelpText(env, sort=lambda x, y: cmp(y, x)) +        assert textBackwards == expectBackwards, "Expected:\n%s\nGot:\n%s\n"%(textBackwards, expectBackwards)  +      def test_FormatVariableHelpText(self):          """Test generating custom format help text"""          opts = SCons.Variables.Variables() @@ -675,13 +691,7 @@ class UnknownVariablesTestCase(unittest.TestCase):  if __name__ == "__main__": -    suite = unittest.TestSuite() -    tclasses = [ VariablesTestCase, -                 UnknownVariablesTestCase ] -    for tclass in tclasses: -        names = unittest.getTestCaseNames(tclass, 'test_') -        suite.addTests(list(map(tclass, names))) -    TestUnit.run(suite) +    unittest.main()  # Local Variables:  # tab-width:4 diff --git a/src/engine/SCons/Variables/__init__.py b/src/engine/SCons/Variables/__init__.py index 784f795..bde5b88 100644 --- a/src/engine/SCons/Variables/__init__.py +++ b/src/engine/SCons/Variables/__init__.py @@ -5,7 +5,7 @@ customizable variables to an SCons build.  """  # -# Copyright (c) 2001 - 2017 The SCons Foundation +# Copyright (c) 2001 - 2019 The SCons Foundation  #  # Permission is hereby granted, free of charge, to any person obtaining  # a copy of this software and associated documentation files (the @@ -26,10 +26,11 @@ customizable variables to an SCons build.  # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Variables/__init__.py rel_3.0.0:4395:8972f6a2f699 2017/09/18 12:59:24 bdbaddog" +__revision__ = "src/engine/SCons/Variables/__init__.py 103260fce95bf5db1c35fb2371983087d85dd611 2019-07-13 18:25:30 bdbaddog"  import os.path  import sys +from functools import cmp_to_key  import SCons.Environment  import SCons.Errors @@ -287,9 +288,13 @@ class Variables(object):          env - an environment that is used to get the current values                of the options. +        cmp - Either a function as follows: The specific sort function should take two arguments and return -1, 0 or 1  +              or a boolean to indicate if it should be sorted.          """ -        if sort: +        if callable(sort): +            options = sorted(self.options, key=cmp_to_key(lambda x,y: sort(x.key,y.key))) +        elif sort is True:              options = sorted(self.options, key=lambda x: x.key)          else:              options = self.options  | 
