Add tests and gating.yaml

This commit is contained in:
Jitka Plesnikova 2024-07-24 13:53:04 +02:00
parent d7bfd5b89c
commit 1a1ba2976e
5 changed files with 64 additions and 1 deletions

1
.fmf/version Normal file
View File

@ -0,0 +1 @@
1

7
gating.yaml Normal file
View File

@ -0,0 +1,7 @@
# RHEL
--- !Policy
product_versions:
- rhel-*
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}

View File

@ -3,7 +3,7 @@
Name: perl-IPC-Run
Version: 20231003.0
Release: 4%{?dist}
Release: 5%{?dist}
Summary: Perl module for interacting with child processes
# the rest: GPL+ or Artistic
# The Win32* modules are not part of the binary RPM package
@ -62,6 +62,9 @@ Requires: perl(Data::Dumper)
Requires: perl(File::Basename)
Requires: perl(IO::Pty) >= 1.08
# Filter modules bundled for tests
%global __provides_exclude_from %{?__provides_exclude_from:%__provides_exclude_from|}^%{_libexecdir}
%description
IPC::Run allows you run and interact with child processes using files,
pipes, and pseudo-ttys. Both system()-style and scripted usages are
@ -71,6 +74,15 @@ both supported and may be mixed.
Various redirection operators reminiscent of those seen on common Unix
and DOS command lines are provided.
%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
%setup -q -n IPC-Run-%{version}
@ -86,6 +98,12 @@ rm t/readonly.t
sed -i -e '/^t/readonly\.t/d' MANIFEST
%endif
# 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
perl Makefile.PL INSTALLDIRS=vendor
make %{?_smp_mflags}
@ -94,6 +112,20 @@ make %{?_smp_mflags}
make pure_install DESTDIR=%{buildroot}
find %{buildroot} -type f -name .packlist -delete
%{_fixperms} -c %{buildroot}
# Install tests
mkdir -p %{buildroot}%{_libexecdir}/%{name}
cp -a t %{buildroot}%{_libexecdir}/%{name}
cat > %{buildroot}%{_libexecdir}/%{name}/test << 'EOF'
#!/bin/bash
set -e
DIR=$(mktemp -d)
pushd "$DIR"
cp -a %{_libexecdir}/%{name}/* ./
prove -I . -j "$(getconf _NPROCESSORS_ONLN)"
popd
rm -rf "$DIR"
EOF
chmod +x %{buildroot}%{_libexecdir}/%{name}/test
%check
make test
@ -107,7 +139,13 @@ make test
%{_mandir}/man3/IPC::Run::IO.3*
%{_mandir}/man3/IPC::Run::Timer.3*
%files tests
%{_libexecdir}/%{name}
%changelog
* Wed Jul 24 2024 Jitka Plesnikova <jplesnik@redhat.com> - 20231003.0-5
- Package tests
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 20231003.0-4
- Bump release for June 2024 mass rebuild

5
plans/sanity.fmf Normal file
View File

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

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

@ -0,0 +1,12 @@
summary: Upstream tests
contact: Jitka Plesnikova <jplesnik@redhat.com>
component: perl-IPC-Run
require: perl-IPC-Run-tests
test: /usr/libexec/perl-IPC-Run/test
enabled: true
tag:
- rhel-buildroot
adjust:
- enabled: false
when: distro < rhel-10 or distro < centos-stream-10
continue: false