diff options
-rwxr-xr-x | t/09-multilib.t | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/t/09-multilib.t b/t/09-multilib.t index a849b37..128cf3b 100755 --- a/t/09-multilib.t +++ b/t/09-multilib.t @@ -7,11 +7,12 @@ use Test::More; use Capture::Tiny qw/ capture_merged /; use FindBin '$RealBin'; use lib $RealBin; -use Test::Sbotools qw/ make_slackbuilds_txt set_lo sboinstall /; +use Test::Sbotools qw/ make_slackbuilds_txt set_lo sboinstall sboclean /; +use File::Temp 'tempdir'; $ENV{TEST_MULTILIB} //= 0; if ($ENV{TEST_INSTALL} and ($ENV{TEST_MULTILIB} == 2)) { - plan tests => 5; + plan tests => 8; } else { plan skip_all => 'Only run these tests if TEST_INSTALL=1 and TEST_MULTILIB=2'; } @@ -19,7 +20,7 @@ $ENV{TEST_ONLINE} //= 0; sub cleanup { capture_merged { - system(qw!/sbin/removepkg multilibsbo multilibsbo-compat32 multilibsbo2 multilibsbo2-compat32 multilibsbo4 multilibsbo4-compat32!); + system(qw!/sbin/removepkg multilibsbo multilibsbo-compat32 multilibsbo2 multilibsbo2-compat32 multilibsbo3 multilibsbo4 multilibsbo4-compat32!); unlink "$RealBin/LO-multilib/multilibsbo/perf.dummy"; unlink "$RealBin/LO-multilib/multilibsbo2/perf.dummy"; unlink "$RealBin/LO-multilib/multilibsbo3/perf.dummy"; @@ -42,7 +43,7 @@ set_lo("$RealBin/LO-multilib"); # 1: Testing multilibsbo sboinstall qw/ -p multilibsbo /, { input => "y\ny\ny", expected => qr/Cleaning for multilibsbo-compat32-1[.]0[.][.][.]\n/ }; -system(qw!/sbin/removepkg multilibsbo multilibsbo-compat32!); +capture_merged { system(qw!/sbin/removepkg multilibsbo multilibsbo-compat32!); }; # 2: Testing multilibsbo with dependencies sboinstall qw/ -p multilibsbo2 /, { input => "y\ny\ny\ny\ny", expected => qr/Cleaning for multilibsbo2-compat32-1[.]0[.][.][.]\n/ }; @@ -57,6 +58,18 @@ SKIP: { sboinstall qw/ -p multilibsbo4 /, { input => "y\ny", expected => qr!tar xvf .*/git-lfs-linux-386-1.1.0.tar.gz! }; } +# 6-8: sboclean cleans up after compat32 build +SKIP: { + local $ENV{TMP} = tempdir(CLEANUP => 0); + my $pkg_dir = $ENV{TMP} . '/package-multilibsbo-compat32'; + capture_merged { system(qw!/sbin/removepkg multilibsbo multilibsbo-compat32!); }; + sboinstall qw/ -c TRUE -p multilibsbo /, { input => "y\ny\ny", test => 0 }; + ok (-e $pkg_dir, 'compat32 package dir exists before sboclean'); + sboclean '-w', { input => "n" }; + ok (! -e $pkg_dir, 'compat32 package dir properly deleted'); + capture_merged { system(qw!/sbin/removepkg multilibsbo multilibsbo-compat32!); }; +} + # Cleanup END { cleanup(); |