summaryrefslogtreecommitdiffstats
path: root/php-mock-integration2.spec
blob: e9621e00c01941da039ca8e3f4e4fa7ce0d318f9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
# remirepo/fedora spec file for php-mock-integration2
#
# 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    003d585841e435958a02e9b986953907b8b7609b
%global gh_short     %(c=%{gh_commit}; echo ${c:0:7})
%global gh_owner     php-mock
%global gh_project   php-mock-integration
%global with_tests   0%{!?_without_tests:1}
%global major        2

Name:           php-mock-integration%{major}
Version:        2.1.0
Release:        1%{?dist}
Summary:        Integration package for PHP-Mock

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.27 || ^6 || ^7 || ^8 || ^9"
# remirepo:1
%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8
BuildRequires: (php-composer(php-mock/php-mock)         >= 2.2 with php-composer(php-mock/php-mock)         < 3)
BuildRequires: (php-composer(phpunit/php-text-template) >= 1   with php-composer(phpunit/php-text-template) < 3)
%global phpunit %{_bindir}/phpunit8
# remirepo:5
%else
BuildRequires:  php-mock2
BuildRequires:  php-phpunit-Text-Template
%global phpunit %{_bindir}/phpunit
%endif
BuildRequires:  %{phpunit}
# For autoloader
BuildRequires: php-composer(fedora/autoloader)
%endif

# from composer.json, "require": {
#        "php": ">=5.6",
#        "php-mock/php-mock": "^2.2",
#        "phpunit/php-text-template": "^1 || ^2"
Requires:       php(language) >= 5.6
# remirepo:1
%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8
Requires:      (php-composer(php-mock/php-mock)         >= 2.2 with php-composer(php-mock/php-mock)         < 3)
Requires:      (php-composer(phpunit/php-text-template) >= 1   with php-composer(phpunit/php-text-template) < 3)
# remirepo:4
%else
Requires:       php-mock2
Requires:       php-phpunit-Text-Template
%endif
# From phpcompatinfo report from version 2.0.0
# only core and standard

Provides:       php-composer(%{gh_owner}/%{gh_project}) = %{version}


%description
This is a support package for PHP-Mock integration into other frameworks.


%prep
%setup -q -n %{gh_project}-%{gh_commit}

# Same namespace than php-mock, not specific autoloader needed


%build
# Nothing


%install
mkdir -p       %{buildroot}%{_datadir}/php/
mkdir -p       %{buildroot}%{_datadir}/php/phpmock%{major}
cp -pr classes %{buildroot}%{_datadir}/php/phpmock%{major}/integration


%check
%if %{with_tests}
mkdir vendor
cat << 'EOF' | tee vendor/autoload.php
<?php
require_once '%{_datadir}/php/Fedora/Autoloader/autoload.php';
\Fedora\Autoloader\Autoload::addPsr4('phpmock\\', '%{buildroot}%{_datadir}/php/phpmock%{major}');
\Fedora\Autoloader\Autoload::addPsr4('phpmock\\integration\\', dirname(__DIR__) . '/tests');
require_once '%{_datadir}/php/phpmock%{major}/autoload.php';
require_once dirname(__DIR__) . '/tests/autoload.php';
EOF

ret=0
for cmdarg in "php %{phpunit}" "php72 %{_bindir}/phpunit7" "php73 %{_bindir}/phpunit8" "php74 %{_bindir}/phpunit9"; do
  if which $cmdarg; then
    set $cmdarg
    $1 $2 --verbose || ret=1
  fi
done
exit $ret
%else
: bootstrap build with test suite disabled
%endif


%files
# remirepo:1
%{!?_licensedir:%global license %%doc}
%license LICENSE
%doc composer.json
%doc *.md
%{_datadir}/php/phpmock%{major}/integration


%changelog
* Mon Feb 10 2020 Remi Collet <remi@remirepo.net> - 2.1.0-1
- update to 2.1.0
- raise dependency on php-mock 2.2

* Thu Mar  7 2019 Remi Collet <remi@remirepo.net> - 2.0.0-5
- use php-mock2 2.1 single autoloader

* Fri Mar 23 2018 Remi Collet <remi@remirepo.net> - 2.0.0-2
- use range dependencies on F27+

* Tue Dec  5 2017 Remi Collet <remi@remirepo.net> - 2.0.0-1
- rename to php-mock-integration2
- Update to 2.0.0
- raise dependency on PHP 5.6
- raise dependency on php-mock 2

* Thu May 11 2017 Remi Collet <remi@remirepo.net> - 1.0.0-4
- switch to fedora/autoloader

* Mon Feb 22 2016 Remi Collet <remi@fedoraproject.org> - 1.0.0-2
- Fix: license is WTFPL

* Fri Feb 12 2016 Remi Collet <remi@fedoraproject.org> - 1.0.0-1
- initial package