summaryrefslogtreecommitdiffstats
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
* Add testscript sleep builtinKaren Arutyunov2019-01-245-4/+37
|
* Update copyright yearKaren Arutyunov2019-01-16103-103/+103
|
* Adjust module tests to comply with the merged proposal (P1103)Boris Kolpackov2018-12-041-8/+5
| | | | Specifically, import can no longer be inside an export block.
* Suppress MSVC warnings at project levelBoris Kolpackov2018-12-031-0/+6
|
* Add support for target and prerequisite specific variable blocksBoris Kolpackov2018-11-217-7/+154
| | | | | | | | | | | | | | | | | | | | | | | | For example, now instead of: lib{foo}: cxx.loptions += -static lib{foo}: cxx.libs += -lpthread We can write: lib{foo}: { cxx.loptions += -static cxx.libs += -lpthread } The same works for prerequisites as well as target type/patterns. For example: exe{*.test}: { test = true install = false }
* Fix expected diagnostics in testBoris Kolpackov2018-11-191-1/+1
|
* Print id of failed testKaren Arutyunov2018-11-179-11/+123
|
* Implement support for dependency chainsBoris Kolpackov2018-11-163-4/+53
| | | | | | | | | | | | | | | | | | | | Now instead of: ./: exe{foo} exe{foo}: cxx{*} We can write: ./: exe{foo}: cxx{*} Or even: ./: exe{foo}: libue{foo}: cxx{*} This can be combined with prerequisite-specific variables (which naturally only apply to the last set of prerequisites in the chain): ./: exe{foo}: libue{foo}: bin.whole = false
* Tweak assert directive diagnosticsBoris Kolpackov2018-11-141-1/+1
|
* Treat invalid names as values if they are quotedBoris Kolpackov2018-10-231-1/+11
|
* Create .buildignore file in testscript root working directoryKaren Arutyunov2018-09-053-3/+24
|
* Rename .test/test{} to .testscript/testscript{}Boris Kolpackov2018-09-0473-138/+139
|
* Fix tests some moreBoris Kolpackov2018-08-091-3/+3
|
* Fix test failures on WindowsBoris Kolpackov2018-08-092-8/+23
|
* Handle few corner cases in concatenated expansionBoris Kolpackov2018-08-091-0/+28
|
* Add support for name patterns without wildcard charactersBoris Kolpackov2018-08-091-2/+5
| | | | | | | | In particular, this allows the "if-exists" specification of prerequisites, for example: for t: $tests exe{$t}: cxx{$t} test{+$t}
* Add support for default extension specification, trailing dot escapingBoris Kolpackov2018-08-071-0/+71
| | | | | | | | | | | | | For example: cxx{*}: extension = cxx cxx{foo} # foo.cxx cxx{foo.test} # foo.test (probably what we want...) cxx{foo.test...} # foo.test.cxx (... is this) cxx{foo..} # foo. cxx{foo....} # foo.. cxx{foo.....} # error (must come in escape pair)
* Make project variable to be of project_name typeKaren Arutyunov2018-07-302-4/+4
|
* Handle leading 'module;' marker (p0713)Boris Kolpackov2018-07-241-0/+17
|
* Implement bash moduleBoris Kolpackov2018-07-203-1/+233
|
* Add --after <ref-file> option for testscript touch builtinKaren Arutyunov2018-07-172-9/+30
|
* Add temporary sleep to in test to verify debugging hypothesisBoris Kolpackov2018-07-171-0/+3
|
* Handle executables (permissions, extensions) in in::ruleBoris Kolpackov2018-07-171-0/+17
|
* Implement in moduleBoris Kolpackov2018-07-162-0/+101
| | | | | | | | | | | | | | | | | | | | Given test.in containing something along these lines: foo = $foo$ Now we can do: using in file{test}: in{test.in} file{test}: foo = FOO The alternative variable substitution symbol can be specified with the in.symbol variable and lax (instead of the default strict) mode with in.substitution. For example: file{test}: in.symbol = '@' file{test}: in.substitution = lax
* Resolve function overload via the argument reversal to untypedBoris Kolpackov2018-07-162-14/+2
|
* Add testscript mv builtinKaren Arutyunov2018-07-141-0/+252
|
* Adjust modules test to maybe-cleanup .ii files (no longer there for VC)Boris Kolpackov2018-07-121-1/+1
|
* Regularize .gitignore filesKaren Arutyunov2018-06-201-0/+2
|
* Add $process.run() and $process.run_regex() functionsBoris Kolpackov2018-06-202-0/+35
| | | | | | | | | | | | | | $process.run(<prog>[ <args>...]) Return trimmed stdout. $process.run_regex(<prog>[ <args>...], <pat> [, <fmt>]) Return stdout lines matched and optionally processed with regex. Each line of stdout (including the customary trailing blank) is matched (as a whole) against <pat> and, if successful, returned, optionally processed with <fmt>, as an element of a list.
* Remove target/scope irregularity workaroundsBoris Kolpackov2018-05-243-5/+4
|
* Update copyright yearKaren Arutyunov2018-05-1990-90/+90
|
* Fix testscripts using types for testscript and manifest targetsKaren Arutyunov2018-05-194-9/+9
|
* Get rid of doc{version} and types for testscript and manifest in buildfilesKaren Arutyunov2018-05-1917-17/+17
|
* Support for deriving target type from file name, handle testscript, buildfileBoris Kolpackov2018-05-191-1/+1
| | | | | | | | | | In particular, instead of: exe{test}: test{testscript} We should now write: exe{test}: testscript
* Redo testscript diagnostics not to rely on invalid pathsKaren Arutyunov2018-05-161-3/+6
|
* Regularize directory target/scope-specific variable assignment syntaxBoris Kolpackov2018-05-037-6/+131
|
* Redo run directive diagnostics not to rely on invalid pathsBoris Kolpackov2018-04-271-2/+3
|
* Add support for build hooksBoris Kolpackov2018-04-272-0/+35
| | | | | | | | | | The following buildfiles are loaded (if present) at appropriate times from the out_root subdirectories of a project: build/bootstrap/pre-*.build # before loading bootstrap.build build/bootstrap/post-*.build # after loading bootstrap.build build/root/pre-*.build # before loading root.build build/root/post-*.build # after loading root.build
* Fix bug in directive/run testBoris Kolpackov2018-04-261-4/+4
|
* Implement run buildfile directiveBoris Kolpackov2018-04-261-0/+36
| | | | | | | Now we can do: run echo 'foo = bar' print $foo
* Add missed file to builtins tests buildfileKaren Arutyunov2018-03-191-1/+1
|
* Add support for cp builtin -p optionKaren Arutyunov2018-03-192-3/+73
|
* Enable modules support only for VC 15u5 and up, drop hacks for earlierBoris Kolpackov2018-02-141-48/+10
|
* Fix broken test (and few other things)Boris Kolpackov2018-02-0911-64/+48
|
* Add tests for auto-generated test inputs/outputsBoris Kolpackov2018-02-0511-3/+153
|
* Get rid of action rule override semanticsBoris Kolpackov2018-02-032-3/+2
| | | | | Instead we now have two more or less separate match states for outer and inner parts of an action.
* Add cxx.module_name alias for cc.module_nameBoris Kolpackov2018-01-051-2/+2
|
* Redo string/stream representation of dir{} name/targetBoris Kolpackov2017-12-161-8/+8
| | | | | | | | | | | | | | Now instead of: dir{foo/bar/} We get: foo/dir{bar/} Which feels more consistent with how we print other names/targets. That is, "directory bar/ in directory foo/" similar how foo/exe{bar} is "executable bar in directory foo/".
* Adapt testscripts to build2 output changesKaren Arutyunov2017-11-301-4/+4
|
* Enable module re-export tests for ClangBoris Kolpackov2017-11-221-1/+0
| | | | This support has been merged into trunk.