## START: Set by rpmautospec ## (rpmautospec version 0.6.0) ## RPMAUTOSPEC: autorelease, autochangelog %define autorelease(e:s:pb:n) %{?-p:0.}%{lua: release_number = 1; base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); print(release_number + base_release_number - 1); }%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} ## END: Set by rpmautospec %global pypi_name nihtest %global forgeurl https://github.com/nih-at/nihtest %bcond_without tests Name: python-%{pypi_name} Version: 1.7.0 Release: %{autorelease} Summary: A testing tool for command line utilities %forgemeta License: BSD-3-Clause URL: %forgeurl Source: %forgesource Patch: run_tests_using_cmake_and_ctest.patch BuildArch: noarch BuildRequires: python3-devel BuildRequires: git-core # For generating manpages BuildRequires: make, mandoc # For running tests using CMake %if %{with tests} BuildRequires: cmake, gcc %endif %global _description %{expand: This is nihtest, a testing tool for command line utilities. Tests are run in a sandbox directory to guarantee a clean separation of the test. It checks that exit code, standard and error outputs are as expected and compares the files in the sandbox after the run with the expected results.} %description %_description %package -n python3-%{pypi_name} Summary: %{summary} Provides: nihtest = %{?epoch:%{epoch}:}%{version}-%{release} %description -n python3-%{pypi_name} %_description %prep %autosetup -p1 -n %{pypi_name}-%{version} -S git # Work around issue with package discovery due to SPECPARTS dir # https://github.com/rpm-software-management/rpm/issues/2532 # Another option seems to be to remove that dir echo -e '\n[tool.setuptools]\npackages = ["nihtest"]\n' >> pyproject.toml %generate_buildrequires %pyproject_buildrequires %build %pyproject_wheel # Generate man pages and docs pushd manpages make %{?_smp_mflags} popd %install %pyproject_install %pyproject_save_files %{pypi_name} mkdir -p %{buildroot}/%{_mandir}/man{1,5} mv manpages/nihtest.man manpages/nihtest.1 mv manpages/nihtest-case.man manpages/nihtest-case.5 mv manpages/nihtest.conf.man manpages/nihtest.conf.5 cp -a manpages/*.1 %{buildroot}/%{_mandir}/man1 cp -a manpages/*.5 %{buildroot}/%{_mandir}/man5 %check %pyproject_check_import # Run tests using CMake %if %{with tests} # Solution for running tests provided by Benson Muite touch check.sh echo "PATH=%{buildroot}%{_bindir}:${PATH} PYTHONPATH=%{buildroot}%{python3_sitearch}:%{buildroot}%{python3_sitelib}:${PYTHONPATH} %{python3} %{buildroot}%{_bindir}/nihtest -v \$1 " >> check.sh sed -i 's|${NIHTEST}|bash %{_builddir}/%{pypi_name}-%{version}/check.sh|g' tests/CMakeLists.txt sed -i 's|ENVIRONMENT "PATH=${path}"|ENVIRONMENT "PYTHONPATH=%{buildroot}%{python3_sitearch}:%{buildroot}%{python3_sitelib}:$ENV{PYTHONPATH}"|g' tests/CMakeLists.txt echo "PYTHONPATH=%{buildroot}%{python3_sitearch}:%{buildroot}%{python3_sitelib}" >> tests/nihtest.conf.in %cmake %cmake_build %ctest %endif %files -n python3-%{pypi_name} -f %{pyproject_files} %doc README.* %doc manpages/*.html %{_bindir}/%{pypi_name} %{_mandir}/man1/%{pypi_name}.1* %{_mandir}/man5/%{pypi_name}*.5* %changelog ## START: Generated by rpmautospec * Sat Apr 20 2024 Packit - 1.7.0-1 - Update to 1.7.0 upstream release - Resolves: rhbz#2276165 * Wed Apr 10 2024 Packit - 1.6.0-1 - Update to 1.6.0 upstream release - Resolves: rhbz#2274346 * Sat Mar 16 2024 Packit - 1.5.1-1 - [packit] 1.5.1 upstream release - Resolves rhbz#2269783 * Fri Jan 26 2024 Fedora Release Engineering - 1.5.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Mon Jan 22 2024 Fedora Release Engineering - 1.5.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Thu Jan 18 2024 Packit - 1.5.0-1 - [packit] 1.5.0 upstream release - Resolves rhbz#2258952 * Wed Jan 03 2024 Packit - 1.4.0-1 - [packit] 1.4.0 upstream release - Resolves rhbz#2255699 * Tue Nov 14 2023 Sandro - 1.2.0-4 - Add Packit config * Fri Jul 21 2023 Fedora Release Engineering - 1.2.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild * Wed Jul 19 2023 Sandro - 1.2.0-1 - Update to 1.2.0 (RHBZ#2224038) * Mon Jul 10 2023 Sandro - 1.1.1-1 - Initial release (RHBZ#2217257) ## END: Generated by rpmautospec