# file : tests/submit/submit-dir.testscript
# license : MIT; see accompanying LICENSE file
.include data.testscript
: args
{
: none
:
$* 2>>~%EOE% != 0
%\[.+\] \[brep:error\] \[ref \] \[brep-submit-dir\]: usage: .+brep-submit-dir
%
EOE
: dir-not-exist
:
$* $~/dir 2>>~%EOE% != 0
%\[.+\] \[brep:error\] \[ref dir\] \[brep-submit-dir\]: '.+dir' does not exist or is not a directory%
EOE
: slash-stripped
:
: Test that the trailing slash is stripped from the data directory path.
:
$* $~/dir/ 2>>~%EOE% != 0
%\[.+\] \[brep:error\] \[ref dir\] \[brep-submit-dir\]: '.+dir' does not exist or is not a directory%
EOE
}
: success
:
{
test.arguments += $data_dir
: simulate
:
{
$clone_root_data;
echo 'simulate: success' >+$data_dir/request.manifest;
$* >>"EOO";
: 1
status: 200
message: package submission is queued: libhello/0.1.0
reference: $checksum
EOO
test -d $data_dir != 0
}
: for-real
:
{
$clone_root_data_clean;
$* >>"EOO"
: 1
status: 200
message: package submission is queued: libhello/0.1.0
reference: $checksum
EOO
}
}
: failure
:
{
test.arguments += $data_dir
: bad-archive
:
{
$clone_root_data_clean;
echo 'junk' >=$data_dir/libhello-0.1.0.tar.gz;
$* >>"EOO"
: 1
status: 400
message:
\\
package archive is not valid
gzip: libhello-0.1.0.tar.gz: not in gzip format
tar: This does not look like a tar archive
tar: libhello-0.1.0/manifest: Not found in archive
tar: Exiting with failure status due to previous errors
info: libhello-0.1.0.tar.gz does not appear to be a bpkg package
info: run bpkg pkg-verify for details
\\
reference: $checksum
EOO
}
: bad-simulate
:
{
$clone_root_data_clean;
echo 'simulate: fly' >+$data_dir/request.manifest;
$* >>"EOO"
: 1
status: 400
message: unrecognized simulation outcome 'fly'
reference: $checksum
EOO
}
}