aboutsummaryrefslogtreecommitdiff
path: root/tests/directive
AgeCommit message (Collapse)AuthorFilesLines
2022-10-25Allow concatenation of path/dir_path type to be a path patternKaren Arutyunov1-1/+1
2022-03-23Make project configuration variables non-nullable by defaultBoris Kolpackov1-3/+33
A project configuration variable with the NULL default value is naturally assumed nullable, for example: config [string] config.libhello.fallback_name ?= [null] Otherwise, to make a project configuration nullable we use the `null` variable attribute, for example: config [string, null] config.libhello.fallback_name ?= "World"
2021-05-28Ban conversion of patterns to valuesBoris Kolpackov2-1/+4
Also improve conversion diagnostic.
2020-05-01Fix outstanding issue with directive vs assignment differentiationBoris Kolpackov1-0/+23
Specifically, now the following does the right thing: print +foo
2020-03-31Handle duplicate config directives for same variableBoris Kolpackov1-1/+9
2020-03-27Implement project configuration reporting, similar to build system modulesBoris Kolpackov1-0/+64
2020-03-20Initial implementation of config directive for project-specific configurationBoris Kolpackov1-0/+164
2020-02-07Drop copyright notice from source codeKaren Arutyunov3-3/+0
2019-09-30Allow attributes in if-else, assert directive's conditionsBoris Kolpackov1-0/+6
2019-08-21Make testscripts to ignore user's default options filesKaren Arutyunov1-4/+6
2019-08-19Revert previous (erroneously pushed to master) commitKaren Arutyunov1-6/+4
2019-08-19Make testscripts to ignore user's default options filesKaren Arutyunov1-4/+6
2019-01-16Update copyright yearKaren Arutyunov3-3/+3
2018-11-21Add support for target and prerequisite specific variable blocksBoris Kolpackov1-1/+1
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 }
2018-11-14Tweak assert directive diagnosticsBoris Kolpackov1-1/+1
2018-09-04Rename .test/test{} to .testscript/testscript{}Boris Kolpackov3-5/+5
2018-05-19Update copyright yearKaren Arutyunov3-3/+3
2018-04-27Redo run directive diagnostics not to rely on invalid pathsBoris Kolpackov1-2/+3
2018-04-26Fix bug in directive/run testBoris Kolpackov1-4/+4
2018-04-26Implement run buildfile directiveBoris Kolpackov1-0/+36
Now we can do: run echo 'foo = bar' print $foo
2017-07-12Make use of wildcards in buildfilesKaren Arutyunov1-1/+1
2017-01-05Update copyright yearBoris Kolpackov2-2/+2
2016-12-16Convert tests/ to subproject, initial work on cross-testing supportBoris Kolpackov1-1/+1
2016-12-05Use new convert() in if-else, assert parsingBoris Kolpackov1-1/+1
2016-12-01Organize tests/, factor common testscript fragmentsBoris Kolpackov3-15/+2
2016-11-23Implement assert directiveBoris Kolpackov3-0/+46
The grammar is as follows: assert <expression> [<description>] assert! <expression> [<description>] The expression must evaluate to 'true' or 'false', just like in if-else.
2015-12-03Implement new potential directive keyword testBoris Kolpackov3-12/+0
Now we can use directive names as variables and targets type, for example: print = foo # variable print{foo}: # target
2015-09-09Add support for quoting directive namesBoris Kolpackov3-0/+12
Now only unquoted, literal names are recognized as directives, for example: 'print' = abc print $print