| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| | | |
|
| | | |
|
| | | |
|
| |/ |
|
| | |
|
|/
|
|
| |
commands which exceed MAXLINELENGTH
|
|
|
|
|
|
| |
Fiddled formatting a bit.
Signed-off-by: Mats Wichmann <mats@linux.com>
|
|\ |
|
| |
| |
| |
| | |
code to have same return values as rest of checkers, updated test to work with that.
|
| |\ |
|
| | | |
|
| |/ |
|
|\ \
| | |
| | |
| | | |
ninja_scons_daemon
|
| | | |
|
|/ / |
|
| |
| |
| |
| | |
NINJA_SCONS_DAEMON_PORT to explicitly set the daemon port
|
|/ |
|
|\
| |
| | |
Tweak Java e2e tests some more
|
| |
| |
| |
| |
| |
| |
| |
| | |
Formatting of embedded test scripts
Extract myrmic.py to fixture dir
Some more DefaultEnvironment and tools limiting for performance
Signed-off-by: Mats Wichmann <mats@linux.com>
|
|/
|
|
|
|
|
|
|
|
|
|
|
| |
Processing changed a bit - some lines can now be joined instead of
split (if the usage part is short so the combination will still fit).
Dropped the "Ingored for compatibility" chunk from the printout.
The usage: message was changed as it didn't mention variables. A number
of tests expected the exact value of that line, and so were updated.
Updated docstrings (for the API docs).
Signed-off-by: Mats Wichmann <mats@linux.com>
|
|
|
|
| |
subprocess.POpen() errors) so that it can also be used as a context manager. This is part of fixing Python 3.9(+) outputing warnings when file/other handles aren't properly closed.
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There's no reason for these tests to initialize all tools since
only checking for one. During development of unrelated PR #4088
these two failed initializing gcc tool - might as well run as
lean as possible.
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| |
| |
| |
| | |
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* The Jar test is split into requires-jdk and not.
* Move some inline tool definitions to fixture files.
* Reformat some stuff.
* Some linting and commenting in Jar tool.
* Enabled test for a non-java file when Jar source is a directory
(was commented out) - needed to add a Command to copy the file
to the directory where the class files were generated.
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| |
| |
| |
| | |
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
mylex.py is now a general fixture
Some of the existing fixtures had a bit more cleanup.
the unneeded mylink_win32.py is dropped (only referenced by
a test which already skips on win32, and the general mylink.py
covers the win32 case anyway).
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
CC/CC.py uses a local mycc.py and CXX/CXX.py uses a local myc++.py.
These could not be replaced by mycompile.py because theu usage model
is different, but these two are moved to a local (to the test)
fixture directory instead of being inline.
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| |
| |
| |
| | |
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
To avoid double loops, a couple now use fileinput module.
CC and CXX tests switch to using general mylink.py fixture instead of
locally defined linker script. This did mean that the marker for the
mock linker that the script removes had to be harmonized as #link - some
were using /*link*/.
Could not switch CC/CXX to use the general mycompile.py mock compiler
due to difference in intent: mycompile.py is intended to plug in as a
*COM variable, which means the whole cmdline is in the caller's control.
mycc.py is intended to plug in as CC and mycxx.py as CXX, which means
standard os-dependent construction vars will be passed via the default
CCCOM and CXXCOM and have to be handled.
Signed-off-by: Mats Wichmann <mats@linux.com>
|
|/
|
|
| |
name='progress.out' mode='w' encoding='UTF-8'> type warnings which are issued when running tests with python 3.9
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There was another hole in the tests after updating them, which was
missed locally because the local test machines took the "skip for
external reasons" path, and didn't actually run the test that failed.
*Any* SCons test path starts with the value of %TEMP%, which by default
is "C:\Users\something\AppData\Local\Temp". If not entered as a raw
string, that's a unicode escape starting with the 3rd char, and leads to
a decode error. I somehow uncovovered one of those that wasn't protected
as a rawstring.
Signed-off-by: Mats Wichmann <mats@linux.com>
|
|\
| |
| | |
Fix tests to not hang on Windows with bad .py assoc
|
| |
| |
| |
| | |
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| |
| |
| |
| | |
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| |
| |
| |
| | |
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
For systems where the association for .py files is not to an actual
Python interpreter, those few cases where we need to run a Python script
directly as a program don't work. This could be because the association
was never set up, or because some other program (e.g. Visual Studio Code)
has taken it over. In some cases may appear to "hang" because the
alternate program is waiting for user interaction
runtest.py now has a mechanism to check (thanks to Brett Cannon for
providing this incantation). It isn't super precise (looks for the
substring "py" in the queried association), but should work out.
It sets an environment variable which the test framework can read
and as a result set a flag which individual tests can read.
Two tests in scons-time which had previously been set to skip-if-win32
now look at this flag instead. Three tests in sconsign now also look at
this flag. This allows a clean run on my dev box with VS Code having
taken over the .py association.
Various things can break if the environment used to fire off
Windows processes doesn't contain %UserProfile%. Added this to the
short list of passthrough env vars. Apparently an environment without
this value is now considered invalid (it blew up the erroneously
launched VS Code, but we've apparently been lucky it hasn't blown
up more things - believe there was also a report of a problem
with the Visual Studio setup scripts).
A little extra cleanup:
- a couple of Py2-isms were cleaned out (Script/Main.py and in the test
framework)
- The paths to look for site-scons were rewritten (part of this was
another Py2-ism), and the system path changed a bit - the old path is
still checked, and the manpage updated to reflect this.
- runtest.py dropped the unused whereis functions.
- the three sconsign tests now use f-string formatting, mostly as an
experiment to see how easy it is to convert.
Fixes #4053
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| | |
|
|/
|
|
| |
MSVC_USE_SCRIPT. Update CHANGES.txt and RELEASE.txt and adjust whitespace.
|
|\
| |
| | |
Fix tests to work with FIPS enabled
|
| |
| |
| |
| | |
These lines setup the sconsign program to use the correct filename for the test.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
defaulted to md5.
Dir search now excludes all types of sconsfiles that are now created.
Environment now defaults to the current scons filename instead of .sconsfile
Sconsign now has a function used by a lot of code that gets the default sconsign filename
Any tests referring to .sconsfile have now been changed, including one old legacy test.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The linter identified that warnings was unused in hash-format.py
The linter found that the skip_test function call was using 2 space indentation (not sure how I managed to do that).
Warning was originally added as hash-format gave a warning on ALLOWED_HASH_FORMATS != default
That was changed to instead test the different cases directly.
option--config.py skips the test if the default algorithm is not MD5 as the hashes used are OS-specific,
and supporting it in FIPS mode would be difficult. It's better to just skip this testcase in FIPS mode instead as
this specific test is different in that regard to the other FIPS-enabled tests.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Modified failing tests to use the new defaulted .sconsign database based on the hash algorithm
For MD5, default database will be .sconsign.dblite
For other algorithms the default will be .sconsign_<hashname>.dblite.
For all cases where the user changes the hash algorithm used, the database will be .sconsign_<hashname>.dblite (including md5)
For sub-scons directories it remains as .sconsign
Also added unit-tests for Util.py for the new hash default changes.
It's difficult to setup a fips-compliant platform using containers, and instead we mock that.
option--config uses multiple types of hash algorithms so was skipped.
Removed one f-string (python 3.5 doesn't support those)
Corrupt.py is using an explicit .sconsign so that was left as-is, and only the parent default .sconsign was changed for work test 1.
A fetch-database name option was added to the testing framework.
The unlink_sconsignfile was not updated as no usages of it were found.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Still failing on:
SCons/UtilTests.py
test/Configure/ConfigureDryRunError.py
test/Configure/implicit-cache.py
test/Configure/option--config.py
test/option/hash-format.py
test/option/option-n.py
test/question/Configure.py
These tests all have hardcoded md5 sums or use md5 directly
Next commit should fix it so the md5-specific tests are skipped if fips mode detected.
Also will figure out a way around the hardcoded m5sums.
|
| |
| |
| |
| |
| |
| |
| |
| | |
Updates tests to disable the warning that this change enables.
Fix runtest.py to make sure -o logging option captures all the output.
Signed-off-by: Mats Wichmann <mats@linux.com>
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The scons-time tests trying to test the "run" subcommand of
scons-time substitute a dummy script named my_python.py for Python.
In order for this to work on Windows, the file association chain for
.py files has to lead back to an Python interpreter, but we cannot
control this - for example, systems with VS Code installed often
steals this association in ways that are aren't easy to pre-detect.
Note that scons-time itself carfully uses the Python interpreter
to launch things so it's not affected by this, it's just the test
that tries to mock part of this scheme that has problems.
Signed-off-by: Mats Wichmann <mats@linux.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
A constructed string containing the Python path wasn't listed
as a raw string, which led to a unicode error, because the
path string contained a \Users which was misinterpreted as a
Unicode escape.
Also had left a debug print in a script.
Signed-off-by: Mats Wichmann <mats@linux.com>
|