summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--SConstruct14
-rw-r--r--bin/SConsExamples.py4
-rw-r--r--bin/time-scons.py2
-rw-r--r--bin/update-release-info.py10
-rwxr-xr-xruntest.py8
-rw-r--r--src/CHANGES.txt2
-rw-r--r--src/test_strings.py10
-rwxr-xr-xtest/D/Support/executablesSearch.py2
-rw-r--r--test/README4
-rw-r--r--test/update-release-info/update-release-info.py2
-rw-r--r--testing/framework/README.txt (renamed from QMTest/README.txt)0
-rw-r--r--testing/framework/SConscript (renamed from QMTest/SConscript)4
-rw-r--r--testing/framework/TestCmd.py (renamed from QMTest/TestCmd.py)0
-rw-r--r--testing/framework/TestCmdTests.py (renamed from QMTest/TestCmdTests.py)0
-rw-r--r--testing/framework/TestCommon.py (renamed from QMTest/TestCommon.py)0
-rw-r--r--testing/framework/TestCommonTests.py (renamed from QMTest/TestCommonTests.py)0
-rw-r--r--testing/framework/TestRuntest.py (renamed from QMTest/TestRuntest.py)4
-rw-r--r--testing/framework/TestSCons.py (renamed from QMTest/TestSCons.py)2
-rw-r--r--testing/framework/TestSConsMSVS.py (renamed from QMTest/TestSConsMSVS.py)0
-rw-r--r--testing/framework/TestSCons_time.py (renamed from QMTest/TestSCons_time.py)0
-rw-r--r--testing/framework/TestSConsign.py (renamed from QMTest/TestSConsign.py)0
-rw-r--r--testing/framework/test-framework.rst (renamed from QMTest/test-framework.rst)11
-rw-r--r--timings/README.txt4
23 files changed, 39 insertions, 44 deletions
diff --git a/SConstruct b/SConstruct
index 1a0deb3..fc94abd 100644
--- a/SConstruct
+++ b/SConstruct
@@ -132,7 +132,7 @@ python_ver = sys.version[0:3]
# for the doc toolchain.
#
addpaths = [os.path.abspath(os.path.join(os.getcwd(), 'bin')),
- os.path.abspath(os.path.join(os.getcwd(), 'QMTest'))]
+ os.path.abspath(os.path.join(os.getcwd(), 'testing/framework'))]
for a in addpaths:
if a not in sys.path:
sys.path.append(a)
@@ -634,7 +634,7 @@ for p in [ scons ]:
# Run setup.py in the unpacked subdirectory to "install" everything
# into our build/test subdirectory. The runtest.py script will set
# PYTHONPATH so that the tests only look under build/test-{package},
- # and under QMTest (for the testing modules TestCmd.py, TestSCons.py,
+ # and under testing/framework (for the testing modules TestCmd.py, TestSCons.py,
# etc.). This makes sure that our tests pass with what
# we really packaged, not because of something hanging around in
# the development directory.
@@ -704,7 +704,7 @@ for p in [ scons ]:
# Run setup.py in the unpacked subdirectory to "install" everything
# into our build/test subdirectory. The runtest.py script will set
# PYTHONPATH so that the tests only look under build/test-{package},
- # and under QMTest (for the testing modules TestCmd.py, TestSCons.py,
+ # and under testing/framework (for the testing modules TestCmd.py, TestSCons.py,
# etc.). This makes sure that our tests pass with what
# we really packaged, not because of something hanging around in
# the development directory.
@@ -825,7 +825,7 @@ for p in [ scons ]:
#
Export('build_dir', 'env')
-SConscript('QMTest/SConscript')
+SConscript('testing/SConscript')
#
#
@@ -926,7 +926,7 @@ if sfiles:
# Run setup.py in the unpacked subdirectory to "install" everything
# into our build/test subdirectory. The runtest.py script will set
# PYTHONPATH so that the tests only look under build/test-{package},
- # and under QMTest (for the testing modules TestCmd.py,
+ # and under testing/framework (for the testing modules TestCmd.py,
# TestSCons.py, etc.). This makes sure that our tests pass with
# what we really packaged, not because of something hanging around
# in the development directory.
@@ -980,7 +980,7 @@ if sfiles:
# Run setup.py in the unpacked subdirectory to "install" everything
# into our build/test subdirectory. The runtest.py script will set
# PYTHONPATH so that the tests only look under build/test-{package},
- # and under QMTest (for the testing modules TestCmd.py,
+ # and under testing/framework (for the testing modules TestCmd.py,
# TestSCons.py, etc.). This makes sure that our tests pass with
# what we really packaged, not because of something hanging
# around in the development directory.
@@ -1018,7 +1018,7 @@ if sfiles:
for pf, help_text in packaging_flavors:
Alias(pf, [
os.path.join(build_dir, 'test-'+pf),
- os.path.join(build_dir, 'QMTest'),
+ os.path.join(build_dir, 'testing/framework'),
os.path.join(build_dir, 'runtest.py'),
])
diff --git a/bin/SConsExamples.py b/bin/SConsExamples.py
index a2ed570..7491c58 100644
--- a/bin/SConsExamples.py
+++ b/bin/SConsExamples.py
@@ -416,8 +416,8 @@ def exampleNamesAreUnique(dpath):
#
# ###############################################################
-sys.path.append(os.path.join(os.getcwd(), 'QMTest'))
-sys.path.append(os.path.join(os.getcwd(), 'build', 'QMTest'))
+sys.path.append(os.path.join(os.getcwd(), 'testing/framework'))
+sys.path.append(os.path.join(os.getcwd(), 'build', 'testing/framework'))
scons_py = os.path.join('bootstrap', 'src', 'script', 'scons.py')
if not os.path.exists(scons_py):
diff --git a/bin/time-scons.py b/bin/time-scons.py
index b7d8ef1..c5cd0cc 100644
--- a/bin/time-scons.py
+++ b/bin/time-scons.py
@@ -43,7 +43,7 @@ TimeSCons_revision = 4569
# The pieces of the TimeSCons infrastructure that are necessary to
# produce consistent timings, even when the rest of the tree is from
# an earlier revision that doesn't have these pieces.
-TimeSCons_pieces = ['QMTest', 'timings', 'runtest.py']
+TimeSCons_pieces = ['testing/framework', 'timings', 'runtest.py']
class CommandRunner(object):
diff --git a/bin/update-release-info.py b/bin/update-release-info.py
index 81e0df5..5b871cb 100644
--- a/bin/update-release-info.py
+++ b/bin/update-release-info.py
@@ -20,10 +20,10 @@ in various files:
- The RELEASE header line in src/CHANGES.txt and src/Announce.txt.
- The version string at the top of src/RELEASE.txt.
- The version string in the 'default_version' variable in SConstruct
- and QMTest/TestSCons.py.
- - The copyright years in SConstruct and QMTest/TestSCons.py.
+ and testing/framework/TestSCons.py.
+ - The copyright years in SConstruct and testing/framework/TestSCons.py.
- The month and year (used for documentation) in SConstruct.
- - The unsupported and deprecated Python floors in QMTest/TestSCons.py
+ - The unsupported and deprecated Python floors in testing/framework/TestSCons.py
and src/engine/SCons/Script/Main.py
- The version string in the filenames in README.
@@ -315,9 +315,9 @@ for suf in ['tar', 'win32', 'zip', 'rpm', 'exe', 'deb']:
'-%s.%s' % (version_string, suf),
count = 0)
-# Update QMTest/TestSCons.py
+# Update testing/framework/TestSCons.py
-t = UpdateFile(os.path.join('QMTest', 'TestSCons.py'))
+t = UpdateFile(os.path.join('testing','framework', 'TestSCons.py'))
if DEBUG: t.file = '/tmp/TestSCons.py'
t.replace_assign('copyright_years', repr(copyright_years))
t.replace_assign('default_version', repr(version_string))
diff --git a/runtest.py b/runtest.py
index cf8925c..e5c5f2f 100755
--- a/runtest.py
+++ b/runtest.py
@@ -8,9 +8,9 @@
#
# - unit tests - included in *Tests.py files from src/ dir
# - end-to-end tests - these are *.py files in test/ directory that
-# require custom SCons framework from QMTest/
+# require custom SCons framework from testing/
#
-# This script adds src/ and QMTest/ directories to PYTHONPATH,
+# This script adds src/ and testing/ directories to PYTHONPATH,
# performs test discovery and processes them according to options.
#
# With -p (--package) option, script tests specified package from
@@ -625,10 +625,8 @@ old_pythonpath = os.environ.get('PYTHONPATH')
# should be able to go away.
pythonpaths = [ pythonpath_dir ]
-# Add path of the QMTest folder to PYTHONPATH
-# [ ] move used parts from QMTest to testing/framework/
scriptpath = os.path.dirname(os.path.realpath(__file__))
-pythonpaths.append(os.path.join(scriptpath, 'QMTest'))
+
# Add path for testing framework to PYTHONPATH
pythonpaths.append(os.path.join(scriptpath, 'testing', 'framework'))
diff --git a/src/CHANGES.txt b/src/CHANGES.txt
index ee4d7bb..a4590d0 100644
--- a/src/CHANGES.txt
+++ b/src/CHANGES.txt
@@ -35,6 +35,8 @@ RELEASE 3.1.0.alpha.yyyymmdd - NEW DATE WILL BE INSERTED HERE
- Fix issue # 3106 MSVC if using MSVC_BATCH and target dir had a space would fail due to quirk in
MSVC's handling of escaped targetdirs when batch compiling.
- Re-Enable parallel SCons (-j) when running via Pypy
+ - Move SCons test framework files to testing/framework and remove all references to QMtest.
+ QMTest has not been used by SCons for some time now.
From Andrew Featherstone
- Removed unused --warn options from the man page and source code.
diff --git a/src/test_strings.py b/src/test_strings.py
index 297d59d..e9f0abf 100644
--- a/src/test_strings.py
+++ b/src/test_strings.py
@@ -208,12 +208,10 @@ check_list = [
'doc/user/SCons-win32-install-4.jpg',
'examples',
'gentoo',
- 'QMTest/classes.qmc',
- 'QMTest/configuration',
- 'QMTest/TestCmd.py',
- 'QMTest/TestCmdTests.py',
- 'QMTest/TestCommon.py',
- 'QMTest/TestCommonTests.py',
+ 'testing/framework/TestCmd.py',
+ 'testing/framework/TestCmdTests.py',
+ 'testing/framework/TestCommon.py',
+ 'testing/framework/TestCommonTests.py',
'src/MANIFEST.in',
'src/setup.cfg',
'src/engine/MANIFEST.in',
diff --git a/test/D/Support/executablesSearch.py b/test/D/Support/executablesSearch.py
index 17d9990..c572f56 100755
--- a/test/D/Support/executablesSearch.py
+++ b/test/D/Support/executablesSearch.py
@@ -51,7 +51,7 @@ def isExecutableOfToolAvailable(test, tool):
if __name__ == '__main__':
import unittest
- sys.path.append(os.path.abspath('../../../QMTest'))
+ sys.path.append(os.path.abspath('../../../testing/framework'))
import TestSCons
diff --git a/test/README b/test/README
index 2c8423f..be75398 100644
--- a/test/README
+++ b/test/README
@@ -4,7 +4,7 @@ This directory contains our end-to-end SCons tests.
They are all meant to be run essentially standalone, with the exception
of the TestSCons.py module and the other modules imported by the various
-tests. These modules are in the QMTest/ subdirectory, and PYTHONPATH
+tests. These modules are in the testing/framework/ subdirectory, and PYTHONPATH
needs to be set up correctly so that the test scripts can find them,
and so that the SCons script itself can find the build engine modules.
@@ -56,4 +56,4 @@ semblance of uniformity, here are the naming conventions for tests:
For some more information about running the tests and writing them, please
refer to the documentation for the testing framework. It can be found in
-the 'QMTest' folder, as file 'test-framework.rst'.
+the 'testing/framework' folder, as file 'test-framework.rst'.
diff --git a/test/update-release-info/update-release-info.py b/test/update-release-info/update-release-info.py
index 970bcce..d0242a8 100644
--- a/test/update-release-info/update-release-info.py
+++ b/test/update-release-info/update-release-info.py
@@ -34,7 +34,7 @@ import TestRuntest
# Needed to ensure we're using the correct year
this_year=time.localtime()[0]
-TestSCons = 'QMTest/TestSCons.py' .split('/')
+TestSCons = 'testing/framework/TestSCons.py' .split('/')
README = 'README.rst' .split('/')
ReleaseConfig = 'ReleaseConfig' .split('/')
SConstruct = 'SConstruct' .split('/')
diff --git a/QMTest/README.txt b/testing/framework/README.txt
index 7750bc7..7750bc7 100644
--- a/QMTest/README.txt
+++ b/testing/framework/README.txt
diff --git a/QMTest/SConscript b/testing/framework/SConscript
index 1db7301..0d3832e 100644
--- a/QMTest/SConscript
+++ b/testing/framework/SConscript
@@ -50,9 +50,9 @@ def copy(target, source, env):
for file in files:
# Guarantee that real copies of these files always exist in
- # build/QMTest. If there's a symlink there, then this is an Aegis
+ # build/testing/framework. If there's a symlink there, then this is an Aegis
# build and we blow them away now so that they'll get "built" later.
- p = os.path.join(build_dir, 'QMTest', file)
+ p = os.path.join(build_dir, 'testing','framework', file)
if os.path.islink(p):
os.unlink(p)
if not os.path.isabs(p):
diff --git a/QMTest/TestCmd.py b/testing/framework/TestCmd.py
index 0aab9a8..0aab9a8 100644
--- a/QMTest/TestCmd.py
+++ b/testing/framework/TestCmd.py
diff --git a/QMTest/TestCmdTests.py b/testing/framework/TestCmdTests.py
index b9226fd..b9226fd 100644
--- a/QMTest/TestCmdTests.py
+++ b/testing/framework/TestCmdTests.py
diff --git a/QMTest/TestCommon.py b/testing/framework/TestCommon.py
index 47a149b..47a149b 100644
--- a/QMTest/TestCommon.py
+++ b/testing/framework/TestCommon.py
diff --git a/QMTest/TestCommonTests.py b/testing/framework/TestCommonTests.py
index 7949cb8..7949cb8 100644
--- a/QMTest/TestCommonTests.py
+++ b/testing/framework/TestCommonTests.py
diff --git a/QMTest/TestRuntest.py b/testing/framework/TestRuntest.py
index 68563da..7b3bb52 100644
--- a/QMTest/TestRuntest.py
+++ b/testing/framework/TestRuntest.py
@@ -97,7 +97,7 @@ class TestRuntest(TestCommon):
The superclass TestCommon.__init__() will change directory (chdir)
to the workspace directory, so an explicit "chdir = '.'" on all
of the run() method calls is not necessary. This initialization
- also copies the runtest.py and QMTest/ subdirectory tree to the
+ also copies the runtest.py and testing/framework/ subdirectory tree to the
temporary directory, duplicating how this test infrastructure
appears in a normal workspace.
"""
@@ -115,7 +115,7 @@ class TestRuntest(TestCommon):
except KeyError:
things_to_copy = [
'runtest.py',
- 'QMTest',
+ 'testing/framework',
]
else:
del kw['things_to_copy']
diff --git a/QMTest/TestSCons.py b/testing/framework/TestSCons.py
index ef907d8..ba4e06b 100644
--- a/QMTest/TestSCons.py
+++ b/testing/framework/TestSCons.py
@@ -42,7 +42,7 @@ python_version_deprecated = (2, 7, 0)
# In the checked-in source, the value of SConsVersion in the following
# line must remain "__ VERSION __" (without the spaces) so the built
-# version in build/QMTest/TestSCons.py contains the actual version
+# version in build/testing/framework/TestSCons.py contains the actual version
# string of the packages that have been built.
SConsVersion = '__VERSION__'
if SConsVersion == '__' + 'VERSION' + '__':
diff --git a/QMTest/TestSConsMSVS.py b/testing/framework/TestSConsMSVS.py
index 1e879d9..1e879d9 100644
--- a/QMTest/TestSConsMSVS.py
+++ b/testing/framework/TestSConsMSVS.py
diff --git a/QMTest/TestSCons_time.py b/testing/framework/TestSCons_time.py
index bc116ec..bc116ec 100644
--- a/QMTest/TestSCons_time.py
+++ b/testing/framework/TestSCons_time.py
diff --git a/QMTest/TestSConsign.py b/testing/framework/TestSConsign.py
index a48b648..a48b648 100644
--- a/QMTest/TestSConsign.py
+++ b/testing/framework/TestSConsign.py
diff --git a/QMTest/test-framework.rst b/testing/framework/test-framework.rst
index d51e5f0..7082eb9 100644
--- a/QMTest/test-framework.rst
+++ b/testing/framework/test-framework.rst
@@ -19,7 +19,7 @@ There are three types of SCons tests:
*End-to-End Tests*
End-to-end tests of SCons are all Python scripts (``*.py``) underneath
the ``test/`` subdirectory. They use the test infrastructure modules in the
- ``QMTest`` subdirectory.
+ ``testing/framework`` subdirectory.
*Unit Tests*
Unit tests for individual SCons modules live underneath the
@@ -98,9 +98,6 @@ Running Tests
The standard set of SCons tests are run from the top-level source directory
by the ``runtest.py`` script.
-There is a ``--qmtest`` option that checks whether the ``QMTest`` package
-is installed on your system. If it can be found, then the ``runtest.py`` script
-will use it to carry out the tests.
Help is available through the ``-h`` option:
@@ -385,9 +382,9 @@ Finally, you shouldn't forget to clean up and remove the temporary test director
Test Infrastructure
===================
-The test API is in ``QMTest/TestSCons.py``. ``TestSCons`` is a subclass of
+The test API is in ``testing/framework/TestSCons.py``. ``TestSCons`` is a subclass of
``TestCommon``, which is a subclass of ``TestCmd``; all those python files are
-in ``QMTest``. Start in ``QMTest/TestCmd.py`` for the base API definitions,
+in ``testing/framework``. Start in ``testing/framework/TestCmd.py`` for the base API definitions,
like how to create files (``test.write()``) and run commands (``test.run()``).
You want to use ``TestSCons`` for the end-to-end tests in ``test``, but ``TestCmd``
@@ -423,7 +420,7 @@ Here's an easy sample::
if not intelc:
test.skip_test("Could not load 'intelc' Tool; skipping test(s).\n")
-See ``QMTest/TestSCons.py`` for the ``detect_tool`` method. It calls the tool's
+See ``testing/framework/TestSCons.py`` for the ``detect_tool`` method. It calls the tool's
``generate()`` method, and then looks for the given prog (tool name by default) in
``env['ENV']['PATH']``.
diff --git a/timings/README.txt b/timings/README.txt
index 3c0baff..9921208 100644
--- a/timings/README.txt
+++ b/timings/README.txt
@@ -5,8 +5,8 @@ This directory contains timing configurations for SCons.
Each configuration exists in a subdirectory. The controlling script
is named TimeSCons-run.py for the configuration. The TimeSCons-run.py
scripts use TestSCons.TimeSCons, a subclass of TestSCons.TestSCons (both
-defined in ../QMTest/TestSCons.py), to manage execution of the timing
-runs.
+defined in ../testing/framework/TestSCons.py), to manage execution of the
+timing runs.
Unlike the TestSCons.TestSCons base class, the TestSCons.TimeSCons
subclass copies the contents of its containing directory to the temporary