diff options
Diffstat (limited to 'tests/manifest/task.testscript')
-rw-r--r-- | tests/manifest/task.testscript | 224 |
1 files changed, 186 insertions, 38 deletions
diff --git a/tests/manifest/task.testscript b/tests/manifest/task.testscript index 65ecd29..8320f59 100644 --- a/tests/manifest/task.testscript +++ b/tests/manifest/task.testscript @@ -12,18 +12,53 @@ test.options += -t : $* <<EOF >>EOF : 1 - name: libfoo + name: foo + version: 1.0 + repository-url: http://pkg.example.org/1/math + trust: AB:0D:3F:C1:B0:13:E4:0E:AD:4A:08:06:AE:F3:85:DB:E2:27:5F:83:11:47:A2:7\ + 8:64:3C:73:60:F8:66:3A:A4 + requires: host + tests: foo-tests + examples: foo-examples + dependency-checksum: 12345 + machine: windows_10-msvc_14 + auxiliary-machine-pgsql: x86_64-linux_debian_12-postgresql_16 + auxiliary-machine: x86_64-linux_debian_12-mysql* + target: x86_64-microsoft-win32-msvc14.0 + environment: lld + auxiliary-environment:\ + PGSQL_DATABASE_HOST=192.168.0.1 + PGSQL_DATABASE_PORT=1245 + \ + target-config: config.cc.coptions=/Z7 config.cc.loptions=/DEBUG + package-config: config.foo.network=true + warning-regex: '^warning: ' '^.+: warning: ' + interactive: error + worker-checksum: 1 + EOF + + # @@ TMP Remove when toolchain 0.16.0 is released. + # + : no-package-config + : + $* <<EOF >>EOF + : 1 + name: foo version: 1.0 repository-url: http://pkg.example.org/1/math trust: AB:0D:3F:C1:B0:13:E4:0E:AD:4A:08:06:AE:F3:85:DB:E2:27:5F:83:11:47:A2:7\ 8:64:3C:73:60:F8:66:3A:A4 - test-exclude: libfoo-tests/1.0 - test-exclude: libfoo-examples/1.0 + requires: host + tests: foo-tests + examples: foo-examples + dependency-checksum: 12345 machine: windows_10-msvc_14 target: x86_64-microsoft-win32-msvc14.0 environment: lld config: config.cc.coptions=/Z7 config.cc.loptions=/DEBUG warning-regex: '^warning: ' '^.+: warning: ' + interactive: error + worker-checksum: 1 EOF : no-config-regex-environment @@ -67,6 +102,53 @@ test.options += -t target: x86_64-microsoft-win32-msvc14.0 EOO + : requires + : + { + $* <<EOF >>EOF + : 1 + name: foo + version: 1.0 + repository-url: http://pkg.example.org/1/math + requires: {c++ >= 14 windows} + requires: host + machine: windows + target: x86_64-microsoft-win32-msvc14.0 + EOF + } + + : requires-invalid + : + { + $* <<EOI 2>>EOE != 0 + : 1 + name: foo + version: 1.0 + repository-url: http://pkg.example.org/1/math + requires: {c++ >= 14 windows + machine: windows + target: x86_64-microsoft-win32-msvc14.0 + EOI + stdin:5:29: error: requirement or '}' expected + EOE + } + + : tests + : + { + $* <<EOF >>EOF + : 1 + name: libfoo + version: 1.0 + repository-url: http://pkg.example.org/1/math + tests: libfoo-tests + examples: libfoo-examples == 1.2.3 + benchmarks: libfoo-benchmarks ~1.2.0 + machine: windows + target: x86_64-microsoft-win32-msvc14.0 + EOF + } + : config : { @@ -95,6 +177,34 @@ test.options += -t EOF } + : host + : + { + : true + : + $* <<EOF >>EOF + : 1 + name: libfoo + version: 1.0 + repository-url: http://pkg.example.org/1/math + machine: windows + target: x86_64-microsoft-win32-msvc14.0 + host: true + EOF + + : false + : + $* <<EOF >>EOF + : 1 + name: libfoo + version: 1.0 + repository-url: http://pkg.example.org/1/math + machine: windows + target: x86_64-microsoft-win32-msvc14.0 + host: false + EOF + } + : trust-yes : $* <<EOF >>EOF @@ -144,6 +254,14 @@ test.options += -t machine: windows_10-msvc_14 EOI + : auxiliary-machine + : + $* <<EOI 2>'stdin:3:1: error: task auxiliary machine environment redefinition' == 1 + : 1 + auxiliary-machine-pgsql: x86_64-linux_debian_12-postgresql_16 + auxiliary-machine-pgsql: x86_64-linux_debian_12-postgresql_14 + EOI + : target : $* <<EOI 2>'stdin:3:1: error: task target redefinition' == 1 @@ -152,14 +270,38 @@ test.options += -t target: x86_64-microsoft-win32-msvc14.0 EOI + : auxiliary-environment + : + $* <<EOI 2>'stdin:7:1: error: task auxiliary environment redefinition' == 1 + : 1 + auxiliary-environment: + \ + PGSQL_DATABASE_HOST=192.168.0.1 + PGSQL_DATABASE_PORT=1245 + \ + auxiliary-environment: + \ + PGSQL_DATABASE_HOST=192.168.0.1 + PGSQL_DATABASE_PORT=1245 + \ + EOI + : config : - $* <<EOI 2>'stdin:3:1: error: task configuration redefinition' == 1 + $* <<EOI 2>'stdin:3:1: error: task target configuration redefinition' == 1 : 1 config: config.cc.coptions=/Z7 config: config.cc.loptions=/DEBUG EOI + : host + : + $* <<EOI 2>'stdin:3:1: error: task host value redefinition' == 1 + : 1 + host: true + host: false + EOI + : warning-regex : $* <<EOI 2>'stdin:3:1: error: task warning regex redefinition' == 1 @@ -167,6 +309,22 @@ test.options += -t warning-regex: '^warning: ' warning-regex: '^.+: warning: ' EOI + + : interactive + : + $* <<EOI 2>'stdin:3:1: error: task interactive value redefinition' == 1 + : 1 + interactive: error + interactive: warning + EOI + + : worker-checksum + : + $* <<EOI 2>'stdin:3:1: error: task worker checksum redefinition' == 1 + : 1 + worker-checksum: 1 + worker-checksum: 1 + EOI } : invalid @@ -224,37 +382,6 @@ test.options += -t EOE } - : test-exclude - : - { - : invalid-name - : - $* <<EOI 2>>EOE == 1 - : 1 - test-exclude: 0ibfoo-tests/1.0 - EOI - stdin:2:15: error: invalid test exclusion package name: illegal first character (must be alphabetic) - EOE - - : no-version - : - $* <<EOI 2>>EOE == 1 - : 1 - test-exclude: libfoo-tests - EOI - stdin:2:15: error: invalid test exclusion package: '/' is expected - EOE - - : invalid-version - : - $* <<EOI 2>>EOE == 1 - : 1 - test-exclude: libfoo-tests/+1 - EOI - stdin:2:15: error: invalid test exclusion package version: unexpected end - EOE - } - : machine-empty : $* <<EOI 2>'stdin:2:9: error: empty task machine' == 1 @@ -269,12 +396,12 @@ test.options += -t target: EOI - : config + : target-config : { : empty : - $* <<EOI 2>'stdin:2:8: error: empty task configuration' == 1 + $* <<EOI 2>'stdin:2:8: error: empty task target configuration' == 1 : 1 config: EOI @@ -293,13 +420,20 @@ test.options += -t : $* <<EOI 2>'stdin:3:7: error: invalid task configuration: unterminated quoted string' == 1 : 1 - config: \ + config:\ 'abc=x \ EOI } } + : host + : + $* <<EOI 2>"stdin:2:7: error: invalid task host value 'yes'" == 1 + : 1 + host: yes + EOI + : warning-regex : { @@ -326,6 +460,20 @@ test.options += -t : 1 trust: abc EOI + + : interactive + : + $* <<EOI 2>'stdin:2:13: error: empty task interactive value' == 1 + : 1 + interactive: + EOI + + : worker-checksum + : + $* <<EOI 2>'stdin:2:17: error: empty task worker checksum' == 1 + : 1 + worker-checksum: + EOI } : unknown-name |