Compare commits

..

1 commit

Author SHA1 Message Date
Remi Collet
60e74c35f2 v1.8.1
(cherry picked from commit 2515ca3d60)
2019-06-13 15:40:38 +02:00
4 changed files with 99 additions and 259 deletions

19
.gitignore vendored
View file

@ -16,22 +16,3 @@ clog
/php-phpspec-prophecy-1.7.6-33a7e3c.tgz
/php-phpspec-prophecy-1.8.0-4ba436b.tgz
/php-phpspec-prophecy-1.8.1-1927e75.tgz
/php-phpspec-prophecy-1.9.0-f6811d9.tgz
/php-phpspec-prophecy-1.10.1-cbe1df6.tgz
/php-phpspec-prophecy-1.10.2-b4400ef.tgz
/php-phpspec-prophecy-1.10.3-451c3cd.tgz
/php-phpspec-prophecy-1.11.0-8ff0384.tgz
/php-phpspec-prophecy-1.11.1-b20034b.tgz
/php-phpspec-prophecy-1.12.0-765cd5d.tgz
/php-phpspec-prophecy-1.12.1-8ce8751.tgz
/php-phpspec-prophecy-1.12.2-245710e.tgz
/php-phpspec-prophecy-1.13.0-be1996e.tgz
/php-phpspec-prophecy-1.14.0-d86dfc2.tgz
/php-phpspec-prophecy-1.15.0-bbcd738.tgz
/php-phpspec-prophecy-1.16.0-be8cac5.tgz
/php-phpspec-prophecy-1.17.0-15873c6.tgz
/php-phpspec-prophecy-1.18.0-d4f454f.tgz
/php-phpspec-prophecy-1.19.0-67a759e.tgz
/php-phpspec-prophecy-1.20.0-a0165c6.tgz
/php-phpspec-prophecy-1.22.0-35f1adb.tgz
/php-phpspec-prophecy-1.24.0-a24f1bd.tgz

View file

@ -0,0 +1,31 @@
<?php
/* Autoloader for phpspec/prophecy and its dependencies */
// Rely on include_path as in PHPUnit dependencies + circular dependencies
require_once '/usr/share/php/Fedora/Autoloader/autoload.php';
\Fedora\Autoloader\Autoload::addPsr4('Prophecy\\', __DIR__);
// Dependencies
require_once 'Doctrine/Instantiator/autoload.php';
if ($dep = stream_resolve_include_path('phpDocumentor/Reflection/DocBlock4/autoload.php')) {
require_once $dep;
} else if ($dep = stream_resolve_include_path('phpDocumentor/Reflection/DocBlock/autoload.php')) {
require_once $dep;
} else if ($dep = stream_resolve_include_path('phpDocumentor/Reflection/DocBlock2/autoload.php')) {
require_once $dep;
} else {
trigger_error('phpDocumentor reflection docblock autoloader not found in include path', E_USER_ERROR);
exit(1);
}
unset($dep);
if (!class_exists('SebastianBergmann\\Comparator\\Comparator')) { // v2 from phpunit, v1 from phpspec
require_once (stream_resolve_include_path('SebastianBergmann/Comparator3/autoload.php') ?:
(stream_resolve_include_path('SebastianBergmann/Comparator2/autoload.php') ?:
'SebastianBergmann/Comparator/autoload.php'));
}
if (!class_exists('SebastianBergmann\\RecursionContext\\Context')) { // v3 from phpunit, v2 from phpspec (via exporter)
require_once (stream_resolve_include_path('SebastianBergmann/RecursionContext3/autoload.php') ?: 'SebastianBergmann/RecursionContext/autoload.php');
}

View file

@ -1,22 +1,26 @@
# remirepo/fedora spec file for php-phpspec-prophecy
#
# SPDX-FileCopyrightText: Copyright 2015-2026 Remi Collet
# SPDX-License-Identifier: CECILL-2.1
# http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
# Copyright (c) 2015-2019 Remi Collet
# License: CC-BY-SA
# http://creativecommons.org/licenses/by-sa/4.0/
#
# Please, preserve the changelog entries
#
%global gh_commit a24f1bda2d00a03877f7f99d9e6b150baf543f6d
%global bootstrap 0
%global gh_commit 1927e75f4ed19131ec9bcc3b002e07fb1173ee76
%global gh_short %(c=%{gh_commit}; echo ${c:0:7})
%global gh_owner phpspec
%global gh_project prophecy
%bcond_without tests
%bcond_with phpspec
%if %{bootstrap}
# no test because of circular dependency with phpspec
%global with_tests 0%{?_with_tests:1}
%else
%global with_tests 0%{!?_without_tests:1}
%endif
Name: php-phpspec-prophecy
Version: 1.24.0
Release: 2%{?dist}
Version: 1.8.1
Release: 1%{?dist}
Summary: Highly opinionated mocking framework for PHP
License: MIT
@ -24,41 +28,50 @@ URL: https://github.com/%{gh_owner}/%{gh_project}
Source0: %{name}-%{version}-%{gh_short}.tgz
Source2: makesrc.sh
BuildArch: noarch
BuildRequires: php(language) >= 8.2
%if %{with tests}
BuildRequires: (php-composer(phpdocumentor/reflection-docblock) >= 5.2 with php-composer(phpdocumentor/reflection-docblock) < 6)
BuildRequires: (php-composer(sebastian/comparator) >= 3.0 with php-composer(sebastian/comparator) < 8)
BuildRequires: (php-composer(sebastian/recursion-context) >= 3.0 with php-composer(sebastian/recursion-context) < 8)
BuildRequires: (php-composer(doctrine/instantiator) >= 1.2 with php-composer(doctrine/instantiator) < 3)
# from composer.json, "require-dev": {
# "friendsofphp/php-cs-fixer": "^3.88",
# "phpspec/phpspec": "^6.0 || ^7.0 || ^8.0",
# "phpstan/phpstan": "^2.1.13",
# "phpunit/phpunit": "^11.0 || ^12.0"
%if %{with phpspec}
BuildRequires: php-composer(phpspec/phpspec) >= 6.0
%endif
BuildRequires: phpunit11
BuildRequires: phpunit12
%endif
# Autoloader
BuildRequires: php-fedora-autoloader-devel
Source1: %{name}-autoload.php
BuildArch: noarch
%if %{with_tests}
# from composer.json, "require-dev": {
# "phpspec/phpspec": "^2.5|^3.2"
# "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.5 || ^7.1"
BuildRequires: php-composer(phpspec/phpspec) >= 2.5
# Autoloader
BuildRequires: php-composer(fedora/autoloader)
%endif
# from composer.json, "requires": {
# "php": "8.2.* || 8.3.* || 8.4.*",
# "phpdocumentor/reflection-docblock": "^5.2",
# "sebastian/comparator": "^3.0 || ^4.0 || ^5.0 || ^6.0 || ^7.0",
# "doctrine/instantiator": "^1.2 || ^2.0",
# "sebastian/recursion-context": "^3.0 || ^4.0 || ^5.0 || ^6.0 || ^7.0",
# "symfony/deprecation-contracts": "^2.5 || ^3.1"
Requires: php(language) >= 8.2
Requires: (php-composer(phpdocumentor/reflection-docblock) >= 5.2 with php-composer(phpdocumentor/reflection-docblock) < 6)
Requires: (php-composer(sebastian/comparator) >= 3.0 with php-composer(sebastian/comparator) < 8)
Requires: (php-composer(sebastian/recursion-context) >= 3.0 with php-composer(sebastian/recursion-context) < 8)
Requires: (php-composer(doctrine/instantiator) >= 1.2 with php-composer(doctrine/instantiator) < 3)
# From phpcompatinfo report for version 1.11.0
# only pcre, reflection and spl
# "php": "^5.3|^7.0",
# "phpdocumentor/reflection-docblock": "^2.0|^3.0.2|^4.0",
# "sebastian/comparator": "^1.1|^2.0|^3.0",
# "doctrine/instantiator": "^1.0.2",
# "sebastian/recursion-context": "^1.0|^2.0|^3.0"
Requires: php(language) >= 5.3
%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8
Requires: (php-composer(phpdocumentor/reflection-docblock) >= 2.0 with php-composer(phpdocumentor/reflection-docblock) < 5)
Requires: (php-composer(sebastian/comparator) >= 1.1 with php-composer(sebastian/comparator) < 4)
# recursion-context will be pulled by phpspec or phpunit or phpunit6
#Requires: (php-composer(sebastian/recursion-context) >= 1.0 with php-composer(sebastian/recursion-context) < 4)
# use 1.0.4 to ensure we have the autoloader
Requires: (php-composer(doctrine/instantiator) >= 1.0.4 with php-composer(doctrine/instantiator) < 2)
%else
Requires: php-composer(phpdocumentor/reflection-docblock) >= 2.0
# ignore v4 for now
Requires: php-composer(phpdocumentor/reflection-docblock) < 4
Requires: php-composer(sebastian/comparator) >= 1.1
Requires: php-composer(sebastian/comparator) < 3
# recursion-context will be pulled by phpspec or phpunit or phpunit6
#Requires: php-composer(sebastian/recursion-context) >= 1.0
#Requires: php-composer(sebastian/recursion-context) < 4
# use 1.0.4 to ensure we have the autoloader
Requires: php-composer(doctrine/instantiator) >= 1.0.4
Requires: php-composer(doctrine/instantiator) < 2
%endif
# From phpcompatinfo report for version 1.1.0
Requires: php-pcre
Requires: php-reflection
Requires: php-spl
# Autoloader
Requires: php-composer(fedora/autoloader)
@ -76,55 +89,11 @@ to be used inside any testing framework out there with minimal effort.
%prep
%setup -q -n %{gh_project}-%{gh_commit}
cp %{SOURCE1} src/Prophecy/autoload.php
%build
phpab --template fedora --output src/Prophecy/autoload.php src
cat << 'EOF' | tee -a src/Prophecy/autoload.php
if (PHP_VERSION_ID > 80400) {
$inst = [
'%{_datadir}/php/Doctrine/Instantiator2/autoload.php',
'%{_datadir}/php/Doctrine/Instantiator/autoload.php',
];
} else {
$inst = '%{_datadir}/php/Doctrine/Instantiator/autoload.php';
}
\Fedora\Autoloader\Dependencies::required([
$inst,
'%{_datadir}/php/phpDocumentor/Reflection/DocBlock5/autoload.php',
]);
if (!class_exists('SebastianBergmann\\Comparator\\Comparator')) { // v2 from phpunit, v1 from phpspec
$inst = [
'%{_datadir}/php/SebastianBergmann/Comparator6/autoload.php',
'%{_datadir}/php/SebastianBergmann/Comparator5/autoload.php',
'%{_datadir}/php/SebastianBergmann/Comparator4/autoload.php',
'%{_datadir}/php/SebastianBergmann/Comparator3/autoload.php',
];
if (PHP_VERSION_ID > 80300) {
array_unshift($inst, '%{_datadir}/php/SebastianBergmann/Comparator7/autoload.php');
}
\Fedora\Autoloader\Dependencies::required([$inst]);
}
if (!class_exists('SebastianBergmann\\RecursionContext\\Context')) { // v2 from phpunit, v1 from phpspec
$inst = [
'%{_datadir}/php/SebastianBergmann/RecursionContext6/autoload.php',
'%{_datadir}/php/SebastianBergmann/RecursionContext5/autoload.php',
'%{_datadir}/php/SebastianBergmann/RecursionContext4/autoload.php',
'%{_datadir}/php/SebastianBergmann/RecursionContext3/autoload.php',
];
if (PHP_VERSION_ID > 80300) {
array_unshift($inst, '%{_datadir}/php/SebastianBergmann/RecursionContext7/autoload.php');
}
\Fedora\Autoloader\Dependencies::required([$inst]);
}
// from https://github.com/symfony/deprecation-contracts
if (!function_exists('trigger_deprecation')) {
function trigger_deprecation(string $package, string $version, string $message, mixed ...$args): void
{
@trigger_error(($package || $version ? "Since $package $version: " : '').($args ? vsprintf($message, $args) : $message), \E_USER_DEPRECATED);
}
}
EOF
# Nothing
%install
@ -133,40 +102,25 @@ cp -pr src/* %{buildroot}%{_datadir}/php
%check
%if %{with tests}
: Dev autoloader
mkdir vendor
phpab --output vendor/autoload.php fixtures tests
cat << 'EOF' | tee -a vendor/autoload.php
require_once '%{buildroot}%{_datadir}/php/Prophecy/autoload.php';
EOF
%if %{with_tests}
: check autoloader
php %{buildroot}%{_datadir}/php/Prophecy/autoload.php
%if %{with phpspec}
: check phpspec
phpspec --version
%endif
VER=$(phpspec --version | sed -n -e 's/.* //;s/\..*$//;p')
if [ $VER -ge 4 ]; then
: phpspec $VER is too recent
exit 0
fi
ret=0
for cmd in php php82 php83 php84 php85; do
for cmd in php php70 php71 php72 php73 php74; do
if which $cmd; then
$cmd -d auto_prepend_file=vendor/autoload.php \
%{_bindir}/phpunit11 \
|| ret=1
$cmd -d include_path=.:%{buildroot}%{_datadir}/php:%{_datadir}/php \
%{_bindir}/phpspec run --format pretty --verbose --no-ansi || ret=1
fi
done
if [ -x %{_bindir}/phpunit12 ]; then
for cmd in php php83 php84 php85; do
if which $cmd; then
$cmd -d auto_prepend_file=vendor/autoload.php \
%{_bindir}/phpunit12 \
|| ret=1
fi
done
fi
exit $ret
%else
: Test suite disabled
@ -174,6 +128,7 @@ exit $ret
%files
%{!?_licensedir:%global license %%doc}
%license LICENSE
%doc *.md
%doc composer.json
@ -181,136 +136,9 @@ exit $ret
%changelog
* Mon Jan 12 2026 Remi Collet <remi@remirepo.net> - 1.24.0-2
- update to 1.24.0
- use doctrine/instantiator v2 only with PHP 8.4+
- raise dependency on PHP 8.2
* Fri Jul 25 2025 Fedora Release Engineering <releng@fedoraproject.org> - 1.22.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Wed Apr 30 2025 Remi Collet <remi@remirepo.net> - 1.22.0-1
- update to 1.22.0
- re-license spec file to CECILL-2.1
* Sat Jan 18 2025 Fedora Release Engineering <releng@fedoraproject.org> - 1.20.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Thu Nov 21 2024 Remi Collet <remi@remirepo.net> - 1.20.0-1
- update to 1.20.0
* Fri Jul 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.19.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Thu Feb 29 2024 Remi Collet <remi@remirepo.net> - 1.19.0-1
- update to 1.19.0
- allow doctrine/instantiator 6
- allow sebastian/recursion-context 6
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.18.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.18.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Dec 8 2023 Remi Collet <remi@remirepo.net> - 1.18.0-1
- update to 1.18.0
- run test suite with phpunit8, phpunit9 and phpunit10
* Wed Sep 27 2023 Remi Collet <remi@remirepo.net> - 1.17.0-4
- disable phpspec tests
* Fri Jul 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.17.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Fri Feb 3 2023 Remi Collet <remi@remirepo.net> - 1.17.0-2
- fix autoloader
* Fri Feb 3 2023 Remi Collet <remi@remirepo.net> - 1.17.0-1
- update to 1.17.0
- allow doctrine/instantiator v2
* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.16.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Thu Dec 1 2022 Remi Collet <remi@remirepo.net> - 1.16.0-1
- update to 1.16.0
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.15.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.15.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Wed Dec 8 2021 Remi Collet <remi@remirepo.net> - 1.15.0-1
- update to 1.15.0
* Fri Sep 10 2021 Remi Collet <remi@remirepo.net> - 1.14.0-1
- update to 1.14.0
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.13.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Thu Mar 18 2021 Remi Collet <remi@remirepo.net> - 1.13.0-1
- update to 1.13.0
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.12.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Mon Dec 21 2020 Remi Collet <remi@remirepo.net> - 1.12.2-1
- update to 1.12.2
- switch to phpunit9
* Tue Sep 29 2020 Remi Collet <remi@remirepo.net> - 1.12.1-1
- update to 1.12.1
* Mon Sep 28 2020 Remi Collet <remi@remirepo.net> - 1.12.0-2
- switch to classmap autoloader
* Mon Sep 28 2020 Remi Collet <remi@remirepo.net> - 1.12.0-1
- update to 1.12.0
- raise dependency on phpdocumentor/reflection-docblock 5.2
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.11.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Wed Jul 8 2020 Remi Collet <remi@remirepo.net> - 1.11.1-1
- update to 1.11.1
* Wed Jul 8 2020 Remi Collet <remi@remirepo.net> - 1.11.0-1
- update to 1.11.0
- raise dependency on PHP 7.2
- raise dependency on phpdocumentor/reflection-docblock 5.0
- raise dependency on sebastian/comparator 3.0
- raise dependency on doctrine/instantiator 1.2
- raise dependency on sebastian/recursion-context 3.0
* Fri Mar 6 2020 Remi Collet <remi@remirepo.net> - 1.10.3-1
- update to 1.10.3
- allow phpdocumentor/reflection-docblock 5.0
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.10.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Tue Jan 21 2020 Remi Collet <remi@remirepo.net> - 1.10.2-1
- update to 1.10.2
- allow sebastian/comparator 4 and sebastian/recursion-context 4
* Fri Jan 3 2020 Remi Collet <remi@remirepo.net> - 1.10.1-1
- update to 1.10.1
* Fri Oct 4 2019 Remi Collet <remi@remirepo.net> - 1.9.0-1
- update to 1.9.0
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.8.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Thu Jun 13 2019 Remi Collet <remi@remirepo.net> - 1.8.1-1
- update to 1.8.1
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.8.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Mon Aug 20 2018 Remi Collet <remi@remirepo.net> - 1.8.0-1
- update to 1.8.0

View file

@ -1 +1 @@
SHA512 (php-phpspec-prophecy-1.24.0-a24f1bd.tgz) = 1fb41f8835788bb06c4ec0ae67460f80370d0466a0036368ce5822750a3544ba306a3660011b95b127276695027cd099bcd85259e4d1faeff36caa11dd4610de
SHA512 (php-phpspec-prophecy-1.8.1-1927e75.tgz) = af79e9075c138fdc7cb3f316db7b5de0141ec9d2c02ea7fe891c0cfa5e52c939303aa387e40dc03f88fd794009c729ba7dc59ac79d1dec9d22c678594c549731