diff options
author | Karen Arutyunov <karen@codesynthesis.com> | 2018-09-04 14:02:11 +0300 |
---|---|---|
committer | Karen Arutyunov <karen@codesynthesis.com> | 2018-09-04 14:02:11 +0300 |
commit | f8fdb500cc705e2b8b4a74166ceb2c6d8cee3fd3 (patch) | |
tree | 3f94b0b79ebad275904b9dc4a4165326ff598492 /tests/pkg-unpack.test | |
parent | f727c2b8fe273a12d059826291523060dab4b512 (diff) |
Rename .test/test{} to .testscript/testscript{}
Diffstat (limited to 'tests/pkg-unpack.test')
-rw-r--r-- | tests/pkg-unpack.test | 297 |
1 files changed, 0 insertions, 297 deletions
diff --git a/tests/pkg-unpack.test b/tests/pkg-unpack.test deleted file mode 100644 index 1e20b22..0000000 --- a/tests/pkg-unpack.test +++ /dev/null @@ -1,297 +0,0 @@ -# file : tests/pkg-unpack.test -# copyright : Copyright (c) 2014-2018 Code Synthesis Ltd -# license : MIT; see accompanying LICENSE file - -.include common.test auth.test config.test remote.test remote-git.test - -# Source repository: -# -# pkg-unpack -# |-- hello -# | |-- libhello-1.0.0.tar.gz -# | `-- repositories.manifest -# |-- libfoo-1.1.0 -# | |-- build -# | | `-- bootstrap.build -# | |-- buildfile -# | `-- manifest -# |-- t1 -# | |-- libfoo-1.0.0.tar.gz -# | |-- libfoo-1.1.0.tar.gz -# | `-- repositories.manifest -# | -# `-- git -# `-- style-basic.git - -# Prepare repositories used by tests if running in the local mode. -# -+if ($remote != true) - rep_create += 2>! - - # Create the signed 'hello' repository. - # - cp -r $src/hello $out/hello - cat <<<$cert_manifest >+$out/hello/repositories.manifest - - $rep_create --key $key $out/hello &$out/hello/packages.manifest \ - &$out/hello/signature.manifest - - # Create the 't1' repository. - # - cp -r $src/t1 $out/t1 && $rep_create $out/t1 &$out/t1/packages.manifest - - # Create git repositories. - # - $git_extract $src/git/style-basic.tar &$out_git/state0/*** -end - -pkg_fetch += -d cfg 2>! -pkg_purge += -d cfg -pkg_status += -d cfg -rep_add += -d cfg 2>! -rep_fetch += -d cfg --auth all 2>! -pkg_configure += -d cfg -pkg_disfigure += -d cfg - -: replace-with-existing -: -$clone_cfg; -$* foo -r 2>>EOE != 0 - error: --replace|-r can only be specified with external package - EOE - -: no-dir -: -$clone_cfg; -$* -e 2>>EOE != 0 - error: package directory argument expected - info: run 'bpkg help pkg-unpack' for more information - EOE - -: not-package-dir -: -$clone_cfg; -$* -e ./ 2>>/EOE != 0 - error: no manifest file in package directory ./ - EOE - -: dir-not-exist -: -$clone_cfg; -$* -e ./no-such-dir 2>>/EOE != 0 - error: package directory ./no-such-dir/ does not exist - EOE - -: no-name -: -$clone_cfg; -$* 2>>EOE != 0 - error: package name argument expected - info: run 'bpkg help pkg-unpack' for more information - EOE - -: fetched-rep -: -{ - +$clone_cfg && $rep_add $rep/t1 && $rep_fetch --trust-yes - - : package-exists - : - { - $clone_cfg && $pkg_fetch libfoo/1.0.0; - - $* -e $src/libfoo-1.1.0 2>>/EOE != 0; - error: package libfoo already exists in configuration cfg/ - info: version: 1.0.0, state: fetched, substate: none - info: use 'pkg-unpack --replace|-r' to replace - EOE - - $pkg_purge libfoo 2>'purged libfoo/1.0.0'; - $* -e $src/libfoo-1.1.0 2>'using libfoo/1.1.0 (external)'; - $pkg_status libfoo/1.1.0 1>'libfoo unpacked 1.1.0'; - - $pkg_configure libfoo 2>'configured libfoo/1.1.0'; - test -d cfg/libfoo; - $pkg_disfigure libfoo 2>'disfigured libfoo/1.1.0'; - - $pkg_purge libfoo 2>'purged libfoo/1.1.0' - } - - : replace-fetched - : - { - $clone_cfg && $pkg_fetch libfoo/1.0.0; - - $* -e $src/libfoo-1.1.0 2>>/EOE != 0; - error: package libfoo already exists in configuration cfg/ - info: version: 1.0.0, state: fetched, substate: none - info: use 'pkg-unpack --replace|-r' to replace - EOE - - $* -r -e $src/libfoo-1.1.0 2>'using libfoo/1.1.0 (external)'; - $pkg_status libfoo/1.1.0 1>'libfoo unpacked 1.1.0'; - - $pkg_purge libfoo 2>'purged libfoo/1.1.0' - } - - : replace-unpacked - : - { - $clone_cfg && $pkg_fetch libfoo/1.0.0; - - $* libfoo 2>'unpacked libfoo/1.0.0'; - - $* -e $src/libfoo-1.1.0 2>>/EOE != 0; - error: package libfoo already exists in configuration cfg/ - info: version: 1.0.0, state: unpacked, substate: none - info: use 'pkg-unpack --replace|-r' to replace - EOE - - $* -r -e $src/libfoo-1.1.0 2>'using libfoo/1.1.0 (external)'; - $pkg_status libfoo/1.1.0 1>'libfoo unpacked 1.1.0'; - - $pkg_purge libfoo 2>'purged libfoo/1.1.0' - } - - : wrong-state - : - { - $clone_cfg; - - $* libfoo 2>>/EOE != 0; - error: package libfoo does not exist in configuration cfg/ - EOE - - $* -e $src/libfoo-1.1.0 2>'using libfoo/1.1.0 (external)'; - - $* libfoo 2>>EOE != 0; - error: package libfoo is unpacked - info: expected it to be fetched - EOE - - $pkg_purge libfoo 2>'purged libfoo/1.1.0' - } - - : right-state - : - { - $clone_cfg && $pkg_fetch libfoo/1.0.0; - - $pkg_status libfoo/1.0.0 1>'libfoo fetched 1.0.0'; - $* libfoo 2>'unpacked libfoo/1.0.0'; - $pkg_status libfoo/1.0.0 1>'libfoo unpacked 1.0.0'; - - $pkg_configure libfoo 2>'configured libfoo/1.0.0'; - test -d cfg/libfoo-1.0.0; - $pkg_disfigure libfoo 2>'disfigured libfoo/1.0.0'; - - $pkg_purge libfoo 2>'purged libfoo/1.0.0' - } - - : purge-existing - : - { - $clone_cfg; - cp --no-cleanup -r $src/libfoo-1.1.0 ./; - - $* -p -e libfoo-1.1.0 2>'using libfoo/1.1.0 (external)'; - - $pkg_purge libfoo 2>'purged libfoo/1.1.0' - } -} - -: dir-rep -: -{ - rep_add += --type dir - - : no-repos - : - { - $clone_root_cfg; - - $* libfoo/1.1.0 2>>/EOE != 0 - error: configuration cfg/ has no repositories - info: use 'bpkg rep-add' to add a repository - EOE - } - - : unfetched - : - { - $clone_root_cfg && $rep_add $src/libfoo-1.1.0; - - $* libfoo/1.1.0 2>>/EOE != 0 - error: configuration cfg/ has no available packages - info: use 'bpkg rep-fetch' to fetch available packages list - EOE - } - - : unavailable - : - { - $clone_root_cfg && $rep_add $src/libfoo-1.1.0 && $rep_fetch; - - $* libfoo/1.0.0 2>>EOE != 0 - error: package libfoo 1.0.0 is not available - EOE - } - - : unavailable-dir-based - : - { - $clone_root_cfg && $rep_add $rep/t1 --type pkg && $rep_fetch --trust-yes; - - $* libfoo/1.0.0 2>>EOE != 0 - error: package libfoo 1.0.0 is not available from a directory-based repository - EOE - } - - : available - : - { - $clone_root_cfg && $rep_add $src/libfoo-1.1.0 && $rep_fetch; - - $* libfoo/1.1.0 2>>EOE; - using libfoo/1.1.0 (external) - EOE - - $pkg_status libfoo 1>'libfoo unpacked 1.1.0'; - - $pkg_configure libfoo 2>'configured libfoo/1.1.0'; - test -d cfg/libfoo; - $pkg_disfigure libfoo 2>'disfigured libfoo/1.1.0' - } -} - -: existing -: -{ - : version-fixup - : - : Test that the version is populated with the snapshot information for the - : package directory that is under the version control. - : - if ($remote != true) - { - $clone_root_cfg; - - rep = $canonicalize([dir_path] $out_git/state0); - - $* -e $rep/style-basic.git 2>>~%EOE% - %using style-basic/1\.1\.0-a\.0\.\d+\..+ \(external\)% - EOE - } -} - -: hello -: -{ - $clone_cfg; - $rep_add $rep/hello && $rep_fetch --trust $cert_fp &cfg/.bpkg/certs/**; - $pkg_fetch libhello/1.0.0; - - $* libhello 2>'unpacked libhello/1.0.0'; - - $pkg_purge libhello 2>'purged libhello/1.0.0' -} |