2
0
mirror of https://github.com/boostorg/build.git synced 2026-02-14 12:42:11 +00:00
Commit Graph

991 Commits

Author SHA1 Message Date
Jurko Gospodnetić
0f5763ba68 Cleaned up the internal Boost Build path_features.py test script to make it clearer which tests in it are decoupled from each other. Minor stylistic changes.
[SVN r79646]
2012-07-22 05:14:00 +00:00
Jurko Gospodnetić
1082919fb8 Corrected a Boost Build bug causing it to not report an error if a generator needed to determine its target name itself when a source target passed to it as third or later did not have the same name as the first one. Added a related internal Boost Build unit test.
Caught and reported by Adder <adder.thief _at_ gmail.com>.

[SVN r79629]
2012-07-20 19:12:59 +00:00
Jurko Gospodnetić
f9e355ede9 Updated the internal Boost Build testing framework to support writing or touching files in its test folder without waiting for a timestamp change from a previous build run. This should allow tweaking the tests to run with a bit less delay (up to 2s as currently implemented) between test runs where possible.
[SVN r79628]
2012-07-20 19:06:07 +00:00
Jurko Gospodnetić
ac6b378f22 Refactored the internal Boost Build generators-test.py test into a single Python script not depending on externally prepared files to make it easier to extend with additional tests unrelated the current one but reusing the functionality prepared for the already existing tests. Corrected a minor appender.jam comment typo in the process.
[SVN r79627]
2012-07-20 19:03:50 +00:00
Jurko Gospodnetić
89f740660f Boost Jam/Build code cleanup - minor stylistic changes.
[SVN r79620]
2012-07-20 14:20:55 +00:00
Jurko Gospodnetić
a80848695b Corrected the internal Boost Build library_order.py unit test - updated its test run parameter passing to use lists of strings instead of simple strings (was causing assertion failures with the latest internal Boost Build testing framework implementation), minor stylistic changes.
[SVN r79600]
2012-07-19 12:30:48 +00:00
Jurko Gospodnetić
0e4d14bfe6 Added a new internal Boost Build test illustrating a bug in the current Boost Build/Jam implementation and causing targets to be rebuilt when not necessary in some cases.
[SVN r79599]
2012-07-19 11:53:30 +00:00
Jurko Gospodnetić
e85732818d Corrected internal Boost Build testing framework bug causing it to report detected filesystem changes from a previous instead of the failed test run when the failure was caused by an unexpected exit code, unexpected stderr content, unexpected stdout content or exceeded maximal test duration.
[SVN r79597]
2012-07-19 10:16:41 +00:00
Jurko Gospodnetić
e0f7059b26 Removed an unused variable from one of the internal Boost Build tests.
[SVN r79596]
2012-07-19 04:39:42 +00:00
Jurko Gospodnetić
3c935afa5f Cleaned up Boost Build's internal 'parallel multi-file actions' tests a bit - removed some dead code and updated description comments.
[SVN r79595]
2012-07-19 04:11:50 +00:00
Jurko Gospodnetić
e6a3faf35d Corrected the internal Boost Build generators_test.py unit test to correctly split its appender 'action' into separate appender1 actions (building only a single target each), and still have them all called correctly together or none at all. Old and too-simplistic solution registered called completely independent actions for each target, causing Boost Jam to build only some of the targets in some cases, unlike what it would have done had they all actually been built by a single action.
[SVN r79579]
2012-07-18 12:23:18 +00:00
Jurko Gospodnetić
c16ae1c68a Boost Jam/Build cleanup - minor stylistic changes (comment updates; line wrapping; removed some dead/unused function declarations, parameters & code; declared variables as const; reordered some #include directives alphabetically, removed some unnecessary ones and added several missing ones discovered by the reordering).
[SVN r79569]
2012-07-17 08:56:49 +00:00
Jurko Gospodnetić
678fe54e15 Updated Boost Build tests to run the collect_debug_info.py test only when running the tests non-interactively, i.e. when collecting the test results in an xml output file. When running the tests interactively and observing the results on the console there is no need for this always-failing test to spoil the 'all tests passed' result - the user will generally know everything about his system and can still run this test directly if he wishes to see what it would have returned.
[SVN r79478]
2012-07-13 19:17:04 +00:00
Jurko Gospodnetić
53576e4073 Boost Build testing system code cleanup. Mainly stylistic changes + stopped using old deprecated string module functions in the test_all.py module.
[SVN r79476]
2012-07-13 19:03:54 +00:00
Jurko Gospodnetić
8bc155d307 Boost Build testing system cleanup - separated the concept of the 'time when a test run finished' from 'highest timestamp assigned by a test run'. This is a tiny preparation step towards making Boost Build support timestamp resolutions finer than 1 second.
[SVN r79475]
2012-07-13 18:43:18 +00:00
Jurko Gospodnetić
740cb760de Minor stylistic internal Boost Build testing system changes.
[SVN r79474]
2012-07-13 18:30:09 +00:00
Jurko Gospodnetić
09e4708742 Boost Build cleanup - removed an extra Python module import from the internal core_at_file.py Boost Build test.
[SVN r79473]
2012-07-13 18:20:34 +00:00
Jurko Gospodnetić
9905deabee Fixed a Boost Jam error reporting bug where it would report the error as originating from an incorrect file & line in case the error occurred after parsing the final token in some file. It usually reported it as the file including the file in question or, if the file is the main project build script not included from anywhere, then it reported the error as originating from file '(builtin)' and line -1. Added a related internal Boost Build unit test (core_source_line_tracking.py).
[SVN r79449]
2012-07-12 13:21:46 +00:00
Jurko Gospodnetić
343b4d6532 Updated the internal Boost Build testing system to use the Python subprocess module (introduced in Python 2.4) for running external processes instead of popen2 (deprecated since Python 2.6). We are already using Python 2.4 features in this codebase so there is no need to support Python releases older than 2.4.
Related changes:
  * BoostBuild.Tester & TestCmd.TestCmd interfaces now accept external process parameters as a list of strings, thus avoiding problems with parsing arguments containing spaces.
  * Avoided a potential process hang in case an external process being run prints out enough output to fill up the OS's pipe buffer (OS would pause the process until someone read the data from the pipe but the testing framework would not do this until the process in question had terminated).

[SVN r79448]
2012-07-12 12:55:25 +00:00
Jurko Gospodnetić
c5e5b5324e Boost Build cleanup - minor stylistic internal Boost Build test script & testing system changes.
[SVN r79445]
2012-07-12 12:22:14 +00:00
Jurko Gospodnetić
b9ed6db9e3 Updated the documentation comment for Boost Build testing system's BoostBuild.Tester constructor with information on its pass_d0 parameter.
[SVN r79257]
2012-07-04 09:13:41 +00:00
Jurko Gospodnetić
1791d078cc Boost Build/Jam cleanup - stylistic code changes.
[SVN r79244]
2012-07-03 15:58:26 +00:00
Jurko Gospodnetić
bcbd74f5be Updated Boost Build test_rc.py test to make its internal dummy-RC toolset always use the .obj suffix when generating OBJ targets. This is another attempt at correcting failures for this test on non-Windows platforms.
[SVN r79231]
2012-07-02 18:59:11 +00:00
Jurko Gospodnetić
8704397f4a Yet another attempt at getting Boost Build's test_rc.py test to use its internal dummy-RC toolset correctly. Now disabled reading any external Boost Build configuration files to avoid having other, not actually used, toolsets (e.g. gcc) change the OBJ target suffix used by Boost Build.
[SVN r79225]
2012-07-02 09:50:12 +00:00
Jurko Gospodnetić
60184aec1f Updated Boost Build test_rc.py test to use its internal dummy-RC toolset even when the test site has a different toolset configured in its site-config.jam or user-config.jam configuration files. Added more detailed output information in case this test fails.
[SVN r79221]
2012-07-01 23:53:22 +00:00
Jurko Gospodnetić
c48a0c9ddc Fixed a Boost Build testing framework bug causing occasional & sporadic failures when you have one test build run making some changes, then another making no changes and then try to wait for the clock ticker to change enough to make newly touched or created files newer than the ones already existing on the system. In those cases the second test build run would clear the 'last build finished' timestamp and newly touched files might end up with the last modification timestamp equal to those already existing in the system. Also removed unnecessary wait_for_time_change_since_last_build() calls in BoostBuild.Tester.copy() and BoostBuild.Tester.rm().
[SVN r79173]
2012-06-29 18:24:52 +00:00
Jurko Gospodnetić
18b914bd54 Minor stylistic change in the Boost Build testing framework.
[SVN r79171]
2012-06-29 18:18:28 +00:00
Jurko Gospodnetić
173d1e16ff Updated Boost Build's testing system to close its files explicitly after it is done with them instead of leaving that up to the Python garbage collector.
[SVN r79170]
2012-06-29 18:17:36 +00:00
Jurko Gospodnetić
8ddc6dfeb5 Updated Boost Build's alias.py test to display additional information in case of failure.
[SVN r79169]
2012-06-29 18:10:25 +00:00
Jurko Gospodnetić
8c46361707 Updated the Boost Build test_rc.py test to use an internal dummy toolset to test the functionality in gc.jam. Before, using the some toolsets (e.g. gcc toolset on a non-Windows platform) was using the silent 'null' resource compiler which did not display the output messages required by this test.
[SVN r79168]
2012-06-29 18:07:10 +00:00
Jurko Gospodnetić
41125133ad Boost Build cleanup - minor stylistic changes & comment typo corrections.
[SVN r79166]
2012-06-29 17:59:49 +00:00
Jurko Gospodnetić
270d13afe1 Updated the Boost Build test_rc.py test to display some additional debugging information in case of failures to help debugging some detected test failures on different non-Windows Boost library test runners.
[SVN r79155]
2012-06-28 12:27:44 +00:00
Jurko Gospodnetić
58fca42099 Updated the Boost Build collect_debug_info.py test to correctly parse version variable information from Boost Jam output when they contain colon characters. Minor stylistic changes.
[SVN r79151]
2012-06-28 09:11:55 +00:00
Jurko Gospodnetić
0170776ece Updated the Boost Build core_language.py test to not fail when run on Windows OSs that have a HKLM\SYSTEM\CurrentControlSet\AddServices key, as detected on the VeecoFTC Boost library tester Windows XP Professional SP3 machine.
[SVN r79150]
2012-06-27 22:50:07 +00:00
Jurko Gospodnetić
317f9b1c51 Minor stylistic changes in the Boost Build core_language.py test.
[SVN r79149]
2012-06-27 22:46:10 +00:00
Jurko Gospodnetić
9dc325c5de Added a new Boost Build test - testing the rc.jam toolset. Guards against a regression causing targets depending on a .rc script file to rebuild every time if the .rc script includes a resource file newer than itself.
[SVN r79148]
2012-06-27 22:20:33 +00:00
Jurko Gospodnetić
29c405650d Minor correction to unused code in the collect_debug_info.py Boost Build test.
[SVN r79147]
2012-06-27 20:24:10 +00:00
Jurko Gospodnetić
7f4aff4adb Corrected the Boost Build core_action_output.py test that had a typo causing it to fail when run under a non-Windows OS.
[SVN r79136]
2012-06-27 13:14:44 +00:00
Jurko Gospodnetić
3b7ea5210d Updated the Boost Build collect_debug_info.py test to avoid an assertion failure reported by some Boost library testers (e.g. Sandia-darwin-4.4) and see more information on what caused them.
[SVN r79132]
2012-06-27 09:56:49 +00:00
Jurko Gospodnetić
aff0ad7f04 Updated Boost Build's collect_debug_info.py test to report the used Boost Jam/Build version information and commented out its environment variable usage testing.
[SVN r79126]
2012-06-27 00:48:26 +00:00
Jurko Gospodnetić
01321fb209 Added a new Boost Build/Jam -p command line option handling test.
[SVN r79124]
2012-06-26 20:27:59 +00:00
Jurko Gospodnetić
a690d471a4 Updated the Boost Build core_nt_cmd_line.py test to make it compatible with the ancient Python releases prior to Python version 2.5. It seems those versions do not support the 'x = 1 if condition else 2' construct and report it as a SyntaxError.
[SVN r79119]
2012-06-26 17:46:37 +00:00
Jurko Gospodnetić
353ea4756e Corrected the Boost Build core_nt_cmd_line.py test failure caused by empty actions now getting reported to stdout correctly. Updated the test to make sure all the whitespace action content gets printed out correctly.
[SVN r79106]
2012-06-26 11:03:29 +00:00
Jurko Gospodnetić
bca364c875 Cleaned up the Boost Build core_d12.py test a bit. Still failing with the current Boost Jam implementation.
[SVN r79100]
2012-06-26 10:25:00 +00:00
Jurko Gospodnetić
e17fa79213 Updated Boost Jam to execute commands directly on Windows when that is requested by setting the JAMSHELL variable to '%', the same as for Unix OSs, and not change the user's request under covers to running the command via the default shell if it is 8191 characters long or shorter. Renamed the related Boost Build core_nt_line_length.py test to core_nt_cmd_line.py and updated it with more detailed test cases.
[SVN r79097]
2012-06-25 23:01:59 +00:00
Jurko Gospodnetić
d55d846b27 Updated Boost Build's internal test system to not report an error as if it was not able to run the external diff tool when that tool returns 1 to indicate that the two files given to it are different.
[SVN r79037]
2012-06-23 23:16:01 +00:00
Jurko Gospodnetić
559765ff88 Minor stylistic change in the Boost Build test system.
[SVN r79036]
2012-06-23 23:12:21 +00:00
Jurko Gospodnetić
16016a7b7a Minor stylistic changes in Boost Build tests.
[SVN r79035]
2012-06-23 23:07:29 +00:00
Jurko Gospodnetić
9f82cfe8c3 Cleaned up the Boost Build module_actions.py test. Now the test's source file no longer needs to contain lines with trailing spaces.
[SVN r79034]
2012-06-23 21:18:32 +00:00
Jurko Gospodnetić
838568f286 Minor Boost Build test system Python code cleanup - removed unnecessary trailing semicolons.
[SVN r79003]
2012-06-19 10:08:33 +00:00