# remirepo/fedora spec file for php-mock2 # # Copyright (c) 2016-2019 Remi Collet # License: CC-BY-SA # http://creativecommons.org/licenses/by-sa/4.0/ # # Please, preserve the changelog entries # %global gh_commit e2eea560cb01502148ca895221f0b58806c5a4df %global gh_short %(c=%{gh_commit}; echo ${c:0:7}) %global gh_owner php-mock %global gh_project php-mock %global with_tests 0%{!?_without_tests:1} %global major 2 Name: php-mock%{major} Version: 2.1.1 Release: 1%{?dist} Summary: PHP-Mock can mock built-in PHP functions License: WTFPL URL: https://github.com/%{gh_owner}/%{gh_project} Source0: https://github.com/%{gh_owner}/%{gh_project}/archive/%{gh_commit}/%{gh_project}-%{version}-%{gh_short}.tar.gz BuildArch: noarch BuildRequires: php(language) >= 5.6 %if %{with_tests} # from composer.json, "require-dev": { # "phpunit/phpunit": "^5.7 || ^6.5 || ^7.5 || ^8.0" # remirepo:1 %if 0%{?fedora} >= 27 || 0%{?rhel} >= 8 BuildRequires: (php-composer(phpunit/php-text-template) >= 1 with php-composer(phpunit/php-text-template) < 2) BuildRequires: phpunit7 %global phpunit %{_bindir}/phpunit7 # remirepo:5 %else BuildRequires: php-phpunit-Text-Template BuildRequires: php-phpunit-PHPUnit >= 5.7 %global phpunit %{_bindir}/phpunit %endif %endif # For autoloader BuildRequires: php-composer(fedora/autoloader) # from composer.json, "require": { # "php": "^5.6 || ^7.0", # "phpunit/php-text-template": "^1" Requires: php(language) >= 5.6 # remirepo:1 %if 0%{?fedora} >= 27 || 0%{?rhel} >= 8 Requires: (php-composer(phpunit/php-text-template) >= 1 with php-composer(phpunit/php-text-template) < 2) # remirepo:3 %else Requires: php-phpunit-Text-Template %endif # From phpcompatinfo report from version 2.0.0 Requires: php-date Requires: php-reflection Requires: php-spl # For autoloader Requires: php-composer(fedora/autoloader) # remirepo:1 %if 0%{?fedora} > 21 || 0%{?rhel} >= 8 # from composer.json, "suggest": { # "php-mock/php-mock-phpunit": "Allows integration into PHPUnit testcase with the trait PHPMock." Suggests: php-composer(php-mock/php-mock-phpunit) # remirepo:1 %endif Provides: php-composer(%{gh_owner}/%{gh_project}) = %{version} %description PHP-Mock can mock built-in PHP functions (e.g. time()). PHP-Mock relies on PHP's namespace fallback policy. No further extension is needed. Autoloader: %{_datadir}/php/phpmock%{major}/autoload.php %prep %setup -q -n %{gh_project}-%{gh_commit} : Prepare the layout mkdir -p rpm/tests rpm/php mv classes rpm/php/phpmock%{major} mv tests rpm/tests/phpmock%{major} : Create autoloader cat << 'AUTOLOAD' | tee rpm/php/phpmock%{major}/autoload.php >rpm/php/phpmock%{major}/autoload.php ln -s ../../php/phpmock%{major}/autoload.php rpm/tests/phpmock%{major}/autoload.php %build # Nothing %install # Library mkdir -p %{buildroot}%{_datadir} cp -pr rpm/php %{buildroot}%{_datadir}/php cp -pr rpm/tests %{buildroot}%{_datadir}/tests %check %if %{with_tests} # TODO: local build fails, build in mock is ok ret=0 for cmdarg in "php %{phpunit}" "php71 %{_bindir}/phpunit7" "php72 %{_bindir}/phpunit8" "php73 %{_bindir}/phpunit8"; do if which $cmdarg; then set $cmdarg $1 $2 --bootstrap %{buildroot}%{_datadir}/tests/phpmock2/autoload.php --verbose rpm/tests|| ret=1 fi done exit $ret %else : bootstrap build with test suite disabled %endif %files %{!?_licensedir:%global license %%doc} %license LICENSE %doc composer.json %doc *.md %{_datadir}/php/phpmock%{major} %{_datadir}/tests/phpmock%{major} %changelog * Mon Apr 8 2019 Remi Collet - 2.1.1-1 - update to 2.1.1 * Thu Mar 7 2019 Remi Collet - 2.1.0-2 - single autoloader * Wed Mar 6 2019 Remi Collet - 2.1.0-1 - update to 2.1.0 * Fri Mar 23 2018 Remi Collet - 2.0.0-2 - use range dependencies on F27+ * Tue Dec 5 2017 Remi Collet - 2.0.0-1 - rename to php-mock2 - Update to 2.0.0 - raise dependency on PHP 5.6 * Thu May 11 2017 Remi Collet - 1.0.1-4 - switch to fedora/autoloader * Mon Feb 22 2016 Remi Collet - 1.0.1-2 - Fix: license is WTFPL, from review #1306968 * Fri Feb 12 2016 Remi Collet - 1.0.1-1 - initial package