aboutsummaryrefslogtreecommitdiff
path: root/tests/rep-info.testscript
diff options
context:
space:
mode:
Diffstat (limited to 'tests/rep-info.testscript')
-rw-r--r--tests/rep-info.testscript68
1 files changed, 68 insertions, 0 deletions
diff --git a/tests/rep-info.testscript b/tests/rep-info.testscript
index 8db405d..2c02c8f 100644
--- a/tests/rep-info.testscript
+++ b/tests/rep-info.testscript
@@ -13,6 +13,8 @@
# | |-- foo-1.tar.gz
# | `-- repositories.manifest
# |
+# |-- t15 (see pkg-build for details)
+# |
# `-- git
# |-- libbar.git -> style-basic.git (prerequisite)
# `-- style-basic.git
@@ -35,6 +37,11 @@
$rc --key $key $out/signed &$out/signed/packages.manifest \
&$out/signed/signature.manifest
+ # Create the compatibility repository.
+ #
+ cp -r $src/t15 $out/compatibility
+ $rc $out/compatibility &$out/compatibility/packages.manifest --ignore-unknown
+
# Create git repositories.
#
$git_extract $src/git/libbar.tar
@@ -125,6 +132,10 @@ $* --name $rep/testing >"pkg:build2.org/rep-info/testing ($rep/testing)"
: dir
:
{
+ # Note that on Windows we still use tar rather than bsdtar here, since
+ # the later fails for dangling symlinks and we have such symlinks in
+ # this repository archive.
+ #
tar ($posix ? : --force-local) -xf $src/git/libbar.tar &state0/***;
$* --type dir "state0/libbar.git" >>~%EOO%d;
@@ -432,3 +443,60 @@ else
EOO
}
}
+
+: compatibility
+:
+{
+ : packages
+ :
+ {
+ $* --packages $rep/compatibility >>EOO
+
+ libbar/1.0.0
+ libbaz/1.0.0
+ libbiz/1.0.0
+ libfoo/1.0.0
+ EOO
+ }
+
+ : package-manifests-ignore-toolchain
+ :
+ {
+ $* --packages --manifest --ignore-unknown $rep/compatibility >>~%EOO%
+ : 1
+ name: libbar
+ version: 1.0.0
+ %.+
+ depends: * build2 >= 0.16.0
+ depends: * bpkg >= 0.16.0
+ %.+
+ :
+ name: libbaz
+ version: 1.0.0
+ summary: libbaz
+ %.+
+ depends: * build2 >= 65536.0.0
+ depends: * bpkg >= 65536.0.0
+ %.+
+ :
+ name: libbiz
+ version: 1.0.0
+ summary: libbiz
+ %.+
+ :
+ name: libfoo
+ version: 1.0.0
+ summary: libfoo
+ %.+
+ EOO
+ }
+
+ : package-manifests-fail
+ :
+ {
+ $* --packages --manifest $rep/compatibility 2>>~%EOE% != 0
+ error: unable to satisfy constraint (build2 >= 65536.0.0) for package libbaz
+ % info: available build2 version is .+%
+ EOE
+ }
+}