Package tests

This commit is contained in:
Michal Josef Špaček 2022-12-16 21:03:07 +01:00
parent 48ca66293d
commit 387dbec326
6 changed files with 58 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

@ -1,2 +1,3 @@
from Config import * from Config import *
addFilter("spelling-error .* cv"); addFilter("spelling-error .* cv");
addFilter("-tests.noarch: W: no-documentation");

View File

@ -47,6 +47,10 @@ Requires: perl(DynaLoader::Functions) >= 0.001
%{?perl_default_filter} %{?perl_default_filter}
# Remove private modules
%global __requires_exclude %{?__requires_exclude:%__requires_exclude|}^perl\\((t::LoadXS|t::WriteHeader)\\)$
%global __provides_exclude_from %{?__provides_exclude_from:%__provides_exclude_from|}^%{_libexecdir}
%description %description
This module makes some new features of the Perl 5.14.0 C API available to This module makes some new features of the Perl 5.14.0 C API available to
XS modules running on older versions of Perl. The features are centered XS modules running on older versions of Perl. The features are centered
@ -58,8 +62,24 @@ available. (It is possible to achieve the effect of cv_set_call_checker
from XS code on much earlier Perl versions, but it is painful to achieve from XS code on much earlier Perl versions, but it is painful to achieve
without the centralized facility.) without the centralized facility.)
%package tests
Summary: Tests for %{name}
BuildArch: noarch
Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release}
Requires: coreutils
Requires: perl-Test-Harness
%description tests
Tests from %{name}. Execute them
with "%{_libexecdir}/%{name}/test".
%prep %prep
%setup -q -n Devel-CallChecker-%{version} %setup -q -n Devel-CallChecker-%{version}
# Help generators to recognize Perl scripts
for F in t/*.t; do
perl -i -MConfig -ple 'print $Config{startperl} if $. == 1 && !s{\A#!\s*perl}{$Config{startperl}}' "$F"
chmod +x "$F"
done
%build %build
perl Build.PL installdirs=vendor optimize="$RPM_OPT_FLAGS" perl Build.PL installdirs=vendor optimize="$RPM_OPT_FLAGS"
@ -69,6 +89,22 @@ perl Build.PL installdirs=vendor optimize="$RPM_OPT_FLAGS"
./Build install destdir=$RPM_BUILD_ROOT create_packlist=0 ./Build install destdir=$RPM_BUILD_ROOT create_packlist=0
find $RPM_BUILD_ROOT -type f -name '*.bs' -size 0 -delete find $RPM_BUILD_ROOT -type f -name '*.bs' -size 0 -delete
%{_fixperms} $RPM_BUILD_ROOT/* %{_fixperms} $RPM_BUILD_ROOT/*
# Install tests
mkdir -p %{buildroot}%{_libexecdir}/%{name}
cp -a t %{buildroot}%{_libexecdir}/%{name}
rm -fr %{buildroot}%{_libexecdir}/%{name}/t/pod*
cat > %{buildroot}%{_libexecdir}/%{name}/test << 'EOF'
#!/bin/bash
set -e
# Test t/rules-dbm.t write into CWD
DIR=$(mktemp -d)
cp -a %{_libexecdir}/%{name}/* "$DIR"
pushd "$DIR"
prove -I . -j "$(getconf _NPROCESSORS_ONLN)"
popd
rm -r "$DIR"
EOF
chmod +x %{buildroot}%{_libexecdir}/%{name}/test
%check %check
./Build test ./Build test
@ -79,8 +115,12 @@ find $RPM_BUILD_ROOT -type f -name '*.bs' -size 0 -delete
%{perl_vendorarch}/Devel* %{perl_vendorarch}/Devel*
%{_mandir}/man3/* %{_mandir}/man3/*
%files tests
%{_libexecdir}/%{name}
%changelog %changelog
* Fri Dec 16 2022 Michal Josef Špaček <mspacek@redhat.com> - 0.008-18 * Fri Dec 16 2022 Michal Josef Špaček <mspacek@redhat.com> - 0.008-18
- Package tests
- Update license to SPDX format - Update license to SPDX format
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.008-17 * Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.008-17

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-Devel-CallChecker
require: perl-Devel-CallChecker-tests
test: /usr/libexec/perl-Devel-CallChecker/test