diff options
author | William Deegan <bill@baddogconsulting.com> | 2024-11-25 20:43:54 (GMT) |
---|---|---|
committer | William Deegan <bill@baddogconsulting.com> | 2024-11-25 20:43:54 (GMT) |
commit | 0b5ab8b6e4ab4fab4206220c593d9e7d88b0ebf9 (patch) | |
tree | 3892907895158d78488fd147f102201642489875 | |
parent | 8999666f07311ba025ee91e801c04dd2fd5adb96 (diff) | |
download | SCons-0b5ab8b6e4ab4fab4206220c593d9e7d88b0ebf9.zip SCons-0b5ab8b6e4ab4fab4206220c593d9e7d88b0ebf9.tar.gz SCons-0b5ab8b6e4ab4fab4206220c593d9e7d88b0ebf9.tar.bz2 |
updated so TestSCons.NINJA_BINARY is set and used by all such tests
24 files changed, 33 insertions, 35 deletions
diff --git a/test/ninja/build_libraries.py b/test/ninja/build_libraries.py index 0561f6f..9436053 100644 --- a/test/ninja/build_libraries.py +++ b/test/ninja/build_libraries.py @@ -34,7 +34,7 @@ try: except ImportError: test.skip_test("Could not find ninja module. Skipping test.\n") -ninja_bin = test.ninja_binary() +ninja_bin = TestSCons.NINJA_BINARY test.dir_fixture('ninja-fixture') diff --git a/test/ninja/command_line_targets.py b/test/ninja/command_line_targets.py index b043f62..1a6033b 100644 --- a/test/ninja/command_line_targets.py +++ b/test/ninja/command_line_targets.py @@ -36,7 +36,7 @@ except ImportError: _python_ = TestSCons._python_ _exe = TestSCons._exe -ninja_bin = test.ninja_binary() +ninja_bin = TestSCons.NINJA_BINARY test.dir_fixture('ninja-fixture') diff --git a/test/ninja/copy_function_command.py b/test/ninja/copy_function_command.py index 13036ee..e8721a1 100644 --- a/test/ninja/copy_function_command.py +++ b/test/ninja/copy_function_command.py @@ -37,7 +37,7 @@ except ImportError: _python_ = TestSCons._python_ _exe = TestSCons._exe -ninja_bin = test.ninja_binary() +ninja_bin = TestSCons.NINJA_BINARY test.dir_fixture('ninja-fixture') diff --git a/test/ninja/default_targets.py b/test/ninja/default_targets.py index 7752d5a..e809d75 100644 --- a/test/ninja/default_targets.py +++ b/test/ninja/default_targets.py @@ -36,7 +36,7 @@ except ImportError: _python_ = TestSCons._python_ _exe = TestSCons._exe -ninja_bin = test.ninja_binary() +ninja_bin = TestSCons.NINJA_BINARY test.dir_fixture('ninja-fixture') diff --git a/test/ninja/force_scons_callback.py b/test/ninja/force_scons_callback.py index b668f92..3ae5a5a 100644 --- a/test/ninja/force_scons_callback.py +++ b/test/ninja/force_scons_callback.py @@ -37,8 +37,7 @@ except ImportError: _python_ = TestSCons._python_ _exe = TestSCons._exe -ninja_bin = test.ninja_binary() - +ninja_bin = TestSCons.NINJA_BINARY test.dir_fixture("ninja-fixture") diff --git a/test/ninja/generate_and_build.py b/test/ninja/generate_and_build.py index c14af70..9d05683 100644 --- a/test/ninja/generate_and_build.py +++ b/test/ninja/generate_and_build.py @@ -37,7 +37,7 @@ except ImportError: _python_ = TestSCons._python_ _exe = TestSCons._exe -ninja_bin = test.ninja_binary() +ninja_bin = TestSCons.NINJA_BINARY test.dir_fixture('ninja-fixture') diff --git a/test/ninja/generate_and_build_cxx.py b/test/ninja/generate_and_build_cxx.py index 51f68dc..80faa4b 100644 --- a/test/ninja/generate_and_build_cxx.py +++ b/test/ninja/generate_and_build_cxx.py @@ -37,7 +37,7 @@ except ImportError: _python_ = TestSCons._python_ _exe = TestSCons._exe -ninja_bin = test.ninja_binary() +ninja_bin = TestSCons.NINJA_BINARY test.dir_fixture('ninja-fixture') diff --git a/test/ninja/generate_source.py b/test/ninja/generate_source.py index f4bd0c0..b848b17 100644 --- a/test/ninja/generate_source.py +++ b/test/ninja/generate_source.py @@ -37,7 +37,7 @@ except ImportError: _python_ = TestSCons._python_ _exe = TestSCons._exe -ninja_bin = test.ninja_binary() +ninja_bin = TestSCons.NINJA_BINARY test.dir_fixture('ninja-fixture') diff --git a/test/ninja/generated_sources_alias.py b/test/ninja/generated_sources_alias.py index 3e7f9d1..22ca734 100644 --- a/test/ninja/generated_sources_alias.py +++ b/test/ninja/generated_sources_alias.py @@ -37,8 +37,7 @@ except ImportError: _python_ = TestSCons._python_ _exe = TestSCons._exe -ninja_bin = test.ninja_binary() - +ninja_bin = TestSCons.NINJA_BINARY test.dir_fixture('ninja-fixture') diff --git a/test/ninja/iterative_speedup.py b/test/ninja/iterative_speedup.py index 8190175..cbd4b6a 100644 --- a/test/ninja/iterative_speedup.py +++ b/test/ninja/iterative_speedup.py @@ -39,7 +39,7 @@ except ImportError: _python_ = TestSCons._python_ _exe = TestSCons._exe -ninja_bin = test.ninja_binary() +ninja_bin = TestSCons.NINJA_BINARY test.dir_fixture('ninja-fixture') diff --git a/test/ninja/mingw_command_generator_action.py b/test/ninja/mingw_command_generator_action.py index 8fc08a8..ad78784 100644 --- a/test/ninja/mingw_command_generator_action.py +++ b/test/ninja/mingw_command_generator_action.py @@ -52,7 +52,7 @@ except ImportError: _python_ = TestSCons._python_ _exe = TestSCons._exe -ninja_bin = test.ninja_binary() +ninja_bin = TestSCons.NINJA_BINARY test.dir_fixture('ninja-fixture') diff --git a/test/ninja/mingw_depfile_format.py b/test/ninja/mingw_depfile_format.py index e9c89a0..7792440 100644 --- a/test/ninja/mingw_depfile_format.py +++ b/test/ninja/mingw_depfile_format.py @@ -36,7 +36,7 @@ except ImportError: _python_ = TestSCons._python_ _exe = TestSCons._exe -ninja_bin = test.ninja_binary() +ninja_bin = TestSCons.NINJA_BINARY test.dir_fixture('ninja-fixture') diff --git a/test/ninja/mkdir_function_command.py b/test/ninja/mkdir_function_command.py index c01cb98..3fd678a 100644 --- a/test/ninja/mkdir_function_command.py +++ b/test/ninja/mkdir_function_command.py @@ -37,7 +37,7 @@ except ImportError: _python_ = TestSCons._python_ _exe = TestSCons._exe -ninja_bin = test.ninja_binary() +ninja_bin = TestSCons.NINJA_BINARY test.write('SConstruct', """ SetOption('experimental','ninja') diff --git a/test/ninja/multi_env.py b/test/ninja/multi_env.py index 6aaeccd..7b113ed 100644 --- a/test/ninja/multi_env.py +++ b/test/ninja/multi_env.py @@ -37,7 +37,7 @@ except ImportError: _python_ = TestSCons._python_ _exe = TestSCons._exe -ninja_bin = test.ninja_binary() +ninja_bin = TestSCons.NINJA_BINARY test = TestSCons.TestSCons() diff --git a/test/ninja/ninja_command_line.py b/test/ninja/ninja_command_line.py index d6744aa..8fc232e 100644 --- a/test/ninja/ninja_command_line.py +++ b/test/ninja/ninja_command_line.py @@ -37,7 +37,7 @@ except ImportError: _python_ = TestSCons._python_ _exe = TestSCons._exe -ninja_bin = test.ninja_binary() +ninja_bin = TestSCons.NINJA_BINARY test.dir_fixture('ninja-fixture', 'src') diff --git a/test/ninja/ninja_conftest.py b/test/ninja/ninja_conftest.py index a92ecd9..60c4b03 100644 --- a/test/ninja/ninja_conftest.py +++ b/test/ninja/ninja_conftest.py @@ -37,7 +37,7 @@ except ImportError: _python_ = TestSCons._python_ _exe = TestSCons._exe -ninja_bin = test.ninja_binary() +ninja_bin = TestSCons.NINJA_BINARY test.dir_fixture('ninja-fixture') diff --git a/test/ninja/ninja_file_deterministic.py b/test/ninja/ninja_file_deterministic.py index 232e7ab..3d226ca 100644 --- a/test/ninja/ninja_file_deterministic.py +++ b/test/ninja/ninja_file_deterministic.py @@ -39,7 +39,7 @@ except ImportError: _python_ = TestSCons._python_ _exe = TestSCons._exe -ninja_bin = test.ninja_binary() +ninja_bin = TestSCons.NINJA_BINARY test.dir_fixture('ninja-fixture') diff --git a/test/ninja/ninja_handle_control_c_rebuild.py b/test/ninja/ninja_handle_control_c_rebuild.py index 5635367..d187c5f 100644 --- a/test/ninja/ninja_handle_control_c_rebuild.py +++ b/test/ninja/ninja_handle_control_c_rebuild.py @@ -40,8 +40,7 @@ except ImportError: _python_ = TestSCons._python_ _exe = TestSCons._exe - -ninja_bin = test.ninja_binary() +ninja_bin = TestSCons.NINJA_BINARY test.dir_fixture("ninja-fixture") diff --git a/test/ninja/no_for_sig_subst.py b/test/ninja/no_for_sig_subst.py index da33f8d..ef2c795 100644 --- a/test/ninja/no_for_sig_subst.py +++ b/test/ninja/no_for_sig_subst.py @@ -37,7 +37,7 @@ except ImportError: _python_ = TestSCons._python_ _exe = TestSCons._exe -ninja_bin = test.ninja_binary() +ninja_bin = TestSCons.NINJA_BINARY test.dir_fixture('ninja-fixture') diff --git a/test/ninja/response_file.py b/test/ninja/response_file.py index e9f778a..f2561bb 100644 --- a/test/ninja/response_file.py +++ b/test/ninja/response_file.py @@ -42,7 +42,7 @@ _python_ = TestSCons._python_ _exe = TestSCons._exe _obj = TestSCons._obj -ninja_bin = test.ninja_binary() +ninja_bin = TestSCons.NINJA_BINARY test.dir_fixture('ninja-fixture') diff --git a/test/ninja/shell_command.py b/test/ninja/shell_command.py index 0ed8f2a..8b3d134 100644 --- a/test/ninja/shell_command.py +++ b/test/ninja/shell_command.py @@ -37,7 +37,7 @@ except ImportError: _python_ = TestSCons._python_ _exe = TestSCons._exe -ninja_bin = test.ninja_binary() +ninja_bin = TestSCons.NINJA_BINARY test.dir_fixture('ninja-fixture') diff --git a/test/ninja/shutdown_scons_daemon.py b/test/ninja/shutdown_scons_daemon.py index 25823d7..c646f97 100644 --- a/test/ninja/shutdown_scons_daemon.py +++ b/test/ninja/shutdown_scons_daemon.py @@ -44,7 +44,7 @@ except ImportError: _python_ = TestSCons._python_ _exe = TestSCons._exe -ninja_bin = test.ninja_binary() +ninja_bin = TestSCons.NINJA_BINARY test.dir_fixture("ninja-fixture") diff --git a/testing/framework/TestCmd.py b/testing/framework/TestCmd.py index 7307078..56c282c 100644 --- a/testing/framework/TestCmd.py +++ b/testing/framework/TestCmd.py @@ -337,6 +337,9 @@ except AttributeError: IS_ROOT = False NEED_HELPER = os.environ.get('SCONS_NO_DIRECT_SCRIPT') + + + # sentinel for cases where None won't do _Null = object() diff --git a/testing/framework/TestSCons.py b/testing/framework/TestSCons.py index d6c5125..5c95c24 100644 --- a/testing/framework/TestSCons.py +++ b/testing/framework/TestSCons.py @@ -74,7 +74,8 @@ __all__.extend([ 'lib_', '_lib', 'dll_', - '_dll' + '_dll', + 'NINJA_BINARY' ]) machine_map = { @@ -103,6 +104,12 @@ lib_ = lib_prefix _dll = dll_suffix dll_ = dll_prefix +try: + import ninja + NINJA_BINARY = os.path.abspath(os.path.join(ninja.BIN_DIR, 'ninja' + _exe)) +except ImportError: + NINJA_BINARY = None + if sys.platform == 'cygwin': # On Cygwin, os.path.normcase() lies, so just report back the # fact that the underlying Win32 OS is case-insensitive. @@ -1087,15 +1094,6 @@ class TestSCons(TestCommon): result.append(os.path.join(dirpath, fname)) return sorted(result) - def ninja_binary(self): - try: - import ninja - except ImportError: - return False - - return os.path.abspath(os.path.join(ninja.BIN_DIR, 'ninja' + _exe)) - - def Qt_dummy_installation(self, dir: str = 'qt') -> None: # create a dummy qt installation |