summaryrefslogtreecommitdiffstats
path: root/php-mikey179-vfsstream.spec
blob: abf6901fe06eaa13fb6cde0752ceb32f7562344a (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
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
# spec file for php-mikey179-vfsstream
#
# Copyright (c) 2014-2022 Remi Collet
# License: CC-BY-SA
# http://creativecommons.org/licenses/by-sa/4.0/
#
# Please, preserve the changelog entries
#
%global gh_commit    17d16a85e6c26ce1f3e2fa9ceeacdc2855db1e9f
%global gh_short     %(c=%{gh_commit}; echo ${c:0:7})
%global gh_owner     bovigo
%global gh_project   vfsStream
%global pk_owner     mikey179
%global pk_project   vfsstream
%global with_tests   %{?_without_tests:0}%{!?_without_tests:1}

Name:           php-%{pk_owner}-%{pk_project}
Version:        1.6.11
Release:        1%{?dist}
Summary:        PHP stream wrapper for a virtual file system

License:        BSD
URL:            https://github.com/%{gh_owner}/%{gh_project}
Source0:        https://github.com/%{gh_owner}/%{gh_project}/archive/%{gh_commit}/%{name}-%{version}-%{gh_short}.tar.gz

BuildArch:      noarch
BuildRequires:  php(language) >= 5.3
BuildRequires:  %{_bindir}/phpab
%if %{with_tests}
# From composer.json, "require-dev": {
#        "phpunit/phpunit": "~4.5|^5.0"
BuildRequires:  php-composer(phpunit/phpunit) >= 4.5
%endif

# From composer.json, "require": {
#        "php": ">=5.3.0"
Requires:       php(language) >= 5.3
# From phpcompatifo report for 1.6.0
Requires:       php-date
Requires:       php-dom
Requires:       php-pcre
Requires:       php-posix
Requires:       php-spl
Requires:       php-xml
Requires:       php-zip

# provides both cases for compatibility
Provides:       php-composer(%{pk_owner}/%{pk_project}) = %{version}
Provides:       php-composer(%{pk_owner}/%{gh_project}) = %{version}


%description
vfsStream is a PHP stream wrapper for a virtual file system that may be
helpful in unit tests to mock the real file system.

It can be used with any unit test framework, like PHPUnit or SimpleTest.

To use this library, you just have to add, in your project:
  require_once '%{_datadir}/php/org/bovigo/vfs/autoload.php';


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


%build
: Generate autoloader
%{_bindir}/phpab \
    --output src/main/php/org/bovigo/vfs/autoload.php \
             src/main/php/org/bovigo/vfs


%install
mkdir -p                %{buildroot}%{_datadir}/php
cp -pr src/main/php/org %{buildroot}%{_datadir}/php/org


%if %{with_tests}
%check
# erratic result in mock
rm src/test/php/org/bovigo/vfs/vfsStreamWrapperLargeFileTestCase.php

mkdir vendor
ln -s %{buildroot}%{_datadir}/php/org/bovigo/vfs/autoload.php vendor/autoload.php

ret=0
for cmd in php php74 php80; do
  if which $cmd; then
    VER=$($cmd -r 'echo PHP_VERSION_ID;')
    if [ $VER -ge 80100 ]; then
      echo skip test with PHP $ver
    else $cmd %{_bindir}/phpunit \
      --filter '^((?!(unregisterThirdPartyVfsScheme|unregisterWhenNotInRegisteredState)).)*$' \
      --verbose --no-coverage || ret=1
    fi
  fi
done
exit $ret
%endif


%files
%{!?_licensedir:%global license %%doc}
%license LICENSE
%doc *.md
%doc composer.json

%dir %{_datadir}/php/org
%dir %{_datadir}/php/org/bovigo
     %{_datadir}/php/org/bovigo/vfs


%changelog
* Thu Aug 11 2022 Remi Collet <remi@remirepo.net> - 1.6.11-1
- update to 1.6.11

* Thu Jun 30 2022 Remi Collet <remi@remirepo.net> - 1.6.10-2
- add upstream patch for 8.2
- skip test suite with PHP >= 8.1

* Mon Sep 27 2021 Remi Collet <remi@remirepo.net> - 1.6.10-1
- update to 1.6.10

* Mon Jul 19 2021 Remi Collet <remi@remirepo.net> - 1.6.9-1
- update to 1.6.9

* Thu Oct 31 2019 Remi Collet <remi@remirepo.net> - 1.6.8-1
- update to 1.6.8

* Fri Aug  2 2019 Remi Collet <remi@remirepo.net> - 1.6.7-1
- update to 1.6.7

* Tue Apr  9 2019 Remi Collet <remi@remirepo.net> - 1.6.6-2
- fix vendor

* Tue Apr  9 2019 Remi Collet <remi@remirepo.net> - 1.6.6-1
- update to 1.6.6 (no change)
- project ownership have moved to bovigo

* Tue Oct 16 2018 Remi Collet <remi@remirepo.net> - 1.6.5-5
- ignore 1 failed test related to behavior change in 7.3
  open https://github.com/mikey179/vfsStream/pull/172

* Mon Mar  5 2018 Remi Collet <remi@remirepo.net> - 1.6.5-3
- provides both mikey179/vfsstream and mikey179/vfsStream

* Fri Aug  4 2017 Remi Collet <remi@remirepo.net> - 1.6.5-1
- Update to 1.6.5

* Mon Jul 18 2016 Remi Collet <remi@fedoraproject.org> - 1.6.4-1
- update to 1.6.4

* Wed Apr 13 2016 Remi Collet <remi@fedoraproject.org> - 1.6.3-1
- update to 1.6.3

* Wed Jan 13 2016 Remi Collet <remi@fedoraproject.org> - 1.6.2-1
- update to 1.6.2

* Fri Dec  4 2015 Remi Collet <remi@fedoraproject.org> - 1.6.1-1
- update to 1.6.1

* Wed Oct  7 2015 Remi Collet <remi@fedoraproject.org> - 1.6.0-1
- update to 1.6.0
- add generated autoloader

* Sun Mar 29 2015 Remi Collet <remi@fedoraproject.org> - 1.5.0-1
- update to 1.5.0
- create source from git snapshot for test suite
  see https://github.com/mikey179/vfsStream/issues/108

* Sun Sep 14 2014 Remi Collet <remi@fedoraproject.org> - 1.4.0-1
- update to 1.4.0

* Tue Jul 22 2014 Remi Collet <remi@fedoraproject.org> - 1.3.0-1
- update to 1.3.0
- fix license handling

* Fri Jun  6 2014 Remi Collet <remi@fedoraproject.org> - 1.2.0-2
- provides php-composer(mikey179/vfsstream)

* Tue May 13 2014 Remi Collet <remi@fedoraproject.org> - 1.2.0-1
- initial package