aboutsummaryrefslogtreecommitdiff
path: root/tests/manifest/task.testscript
diff options
context:
space:
mode:
Diffstat (limited to 'tests/manifest/task.testscript')
-rw-r--r--tests/manifest/task.testscript192
1 files changed, 186 insertions, 6 deletions
diff --git a/tests/manifest/task.testscript b/tests/manifest/task.testscript
index 9852f91..8320f59 100644
--- a/tests/manifest/task.testscript
+++ b/tests/manifest/task.testscript
@@ -1,5 +1,4 @@
# file : tests/manifest/task.testscript
-# copyright : Copyright (c) 2014-2019 Code Synthesis Ltd
# license : MIT; see accompanying LICENSE file
test.options += -t
@@ -13,16 +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
+ 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
@@ -66,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
:
{
@@ -94,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
@@ -143,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
@@ -151,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
@@ -166,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
@@ -237,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
@@ -261,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
:
{
@@ -294,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