2016-09-20 18:41:12 +00:00
|
|
|
package packagetest;
|
|
|
|
|
|
|
|
use strict;
|
|
|
|
|
|
|
|
use base 'Exporter';
|
|
|
|
use Exporter;
|
|
|
|
|
|
|
|
use testapi;
|
|
|
|
our @EXPORT = qw/prepare_test_packages verify_installed_packages verify_updated_packages/;
|
|
|
|
|
|
|
|
# enable the openqa test package repositories and install the main
|
2023-03-14 20:54:56 +00:00
|
|
|
# test packages, remove test package and install the fake one
|
2016-09-20 18:41:12 +00:00
|
|
|
sub prepare_test_packages {
|
2023-03-14 20:54:56 +00:00
|
|
|
my ($package) = @_;
|
|
|
|
$package //= "python3-kickstart";
|
2016-09-20 18:41:12 +00:00
|
|
|
# remove python3-kickstart if installed (we don't use assert
|
|
|
|
# here in case it's not)
|
2023-03-14 20:54:56 +00:00
|
|
|
script_run "dnf -y remove $package", 180;
|
2016-09-20 18:41:12 +00:00
|
|
|
# grab the test repo definitions
|
|
|
|
assert_script_run 'curl -o /etc/yum.repos.d/openqa-testrepo-1.repo https://fedorapeople.org/groups/qa/openqa-repos/openqa-testrepo-1.repo';
|
|
|
|
# install the test packages from repo1
|
2023-03-14 20:54:56 +00:00
|
|
|
assert_script_run "dnf -y --disablerepo=* --enablerepo=openqa-testrepo-1 install $package";
|
2018-03-29 02:42:31 +00:00
|
|
|
if (get_var("DESKTOP") eq 'kde' && get_var("TEST") eq 'desktop_update_graphical') {
|
|
|
|
# kick pkcon so our special update will definitely get installed
|
|
|
|
assert_script_run 'pkcon refresh force';
|
|
|
|
}
|
2016-09-20 18:41:12 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
# check our test packages installed correctly (this is a test that dnf
|
|
|
|
# actually does what it claims)
|
|
|
|
sub verify_installed_packages {
|
2023-03-14 20:54:56 +00:00
|
|
|
my ($package) = @_;
|
|
|
|
$package //= "python3-kickstart";
|
|
|
|
validate_script_output "rpm -q $package", sub { $_ =~ m/^$package-1.1.noarch$/ };
|
|
|
|
assert_script_run "rpm -V $package";
|
2016-09-20 18:41:12 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
# check updating the test packages and the fake python3-kickstart work
|
|
|
|
# as expected
|
|
|
|
sub verify_updated_packages {
|
2023-03-14 20:54:56 +00:00
|
|
|
my ($package) = @_;
|
|
|
|
$package //= "python3-kickstart";
|
|
|
|
# we don't know what version of the test package we'll actually
|
2016-09-20 18:41:12 +00:00
|
|
|
# get, so just check it's *not* the fake one
|
2023-03-14 20:54:56 +00:00
|
|
|
validate_script_output "rpm -q $package", sub { $_ !~ m/^$package-1-1.noarch$/ };
|
|
|
|
assert_script_run "rpm -V $package";
|
2016-09-20 18:41:12 +00:00
|
|
|
}
|