Package tests

This commit is contained in:
Jitka Plesnikova 2021-10-15 15:44:00 +02:00
parent fb781e15e2
commit e30a17ffdd
5 changed files with 52 additions and 0 deletions

1
.fmf/version Normal file
View File

@ -0,0 +1 @@
1

7
gating.yaml Normal file
View File

@ -0,0 +1,7 @@
--- !Policy
product_versions:
- fedora-*
decision_context: bodhi_update_push_stable
subject_type: koji_build
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}

View File

@ -44,6 +44,12 @@ Requires: perl(File::Basename)
Requires: perl(File::Glob) Requires: perl(File::Glob)
Requires: perl(File::Spec) Requires: perl(File::Spec)
# Filter modules bundled for tests
%global __provides_exclude_from %{?__provides_exclude_from:%__provides_exclude_from|}^%{_libexecdir}
%global __requires_exclude %{?__requires_exclude:%__requires_exclude|}^perl\\(ENVDumper\\)
%global __requires_exclude %{__requires_exclude}|^perl\\(TempDir\\)
%global __requires_exclude %{__requires_exclude}|^perl\\(Carp::Foo\\)
%description %description
This module provides a quick, convenient way of bootstrapping a user- This module provides a quick, convenient way of bootstrapping a user-
local Perl module library located within the user's home directory. It local Perl module library located within the user's home directory. It
@ -74,9 +80,24 @@ configuration or privileges, and without installing them system-wide.
If you want your users to be able to install and use their own Perl modules, If you want your users to be able to install and use their own Perl modules,
install this package. install this package.
%package tests
Summary: Tests for %{name}
Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release}
Requires: perl-Test-Harness
%description tests
Tests from %{name}. Execute them
with "%{_libexecdir}/%{name}/test".
%prep %prep
%setup -q -n local-lib-%{version} %setup -q -n local-lib-%{version}
# Help generators to recognize Perl scripts
for F in t/*.t; do
perl -i -MConfig -ple 'print $Config{startperl} if $. == 1 && !s{\A#!.*perl\b}{$Config{startperl}}' "$F"
chmod +x "$F"
done
%build %build
perl Makefile.PL INSTALLDIRS=vendor NO_PACKLIST=1 NO_PERLLOCAL=1 perl Makefile.PL INSTALLDIRS=vendor NO_PACKLIST=1 NO_PERLLOCAL=1
%{make_build} %{make_build}
@ -88,7 +109,17 @@ mkdir -p %{buildroot}%{_sysconfdir}/profile.d
install -pm0644 %{SOURCE10} %{buildroot}%{_sysconfdir}/profile.d/ install -pm0644 %{SOURCE10} %{buildroot}%{_sysconfdir}/profile.d/
install -pm0644 %{SOURCE11} %{buildroot}%{_sysconfdir}/profile.d/ install -pm0644 %{SOURCE11} %{buildroot}%{_sysconfdir}/profile.d/
# Install tests
mkdir -p %{buildroot}%{_libexecdir}/%{name}
cp -a t %{buildroot}%{_libexecdir}/%{name}
cat > %{buildroot}%{_libexecdir}/%{name}/test << 'EOF'
#!/bin/sh
cd %{_libexecdir}/%{name} && exec prove -I . -r -j "$(getconf _NPROCESSORS_ONLN)"
EOF
chmod +x %{buildroot}%{_libexecdir}/%{name}/test
%check %check
export HARNESS_OPTIONS=j$(perl -e 'if ($ARGV[0] =~ /.*-j([0-9][0-9]*).*/) {print $1} else {print 1}' -- '%{?_smp_mflags}')
make test make test
%files %files
@ -99,9 +130,13 @@ make test
%files -n perl-homedir %files -n perl-homedir
%{_sysconfdir}/profile.d/* %{_sysconfdir}/profile.d/*
%files tests
%{_libexecdir}/%{name}
%changelog %changelog
* Fri Oct 15 2021 Jitka Plesnikova <jplesnik@redhat.com> - 2.000027-1 * Fri Oct 15 2021 Jitka Plesnikova <jplesnik@redhat.com> - 2.000027-1
- 2.000027 bump - 2.000027 bump
- Package tests
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.000024-13 * Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.000024-13
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild

5
plans/sanity.fmf Normal file
View File

@ -0,0 +1,5 @@
summary: Sanity tests
discover:
how: fmf
execute:
how: tmt

4
tests/upstream-tests.fmf Normal file
View File

@ -0,0 +1,4 @@
summary: Upstream tests
component: perl-local-lib
require: perl-local-lib-tests
test: /usr/libexec/perl-local-lib/test