Compare commits

..

No commits in common. "rawhide" and "f18" have entirely different histories.

6 changed files with 127 additions and 269 deletions

12
.gitignore vendored
View file

@ -1,2 +1,10 @@
/flexmock-*.gem
/flexmock-*-test-missing-files.tar.gz
flexmock-0.8.7.gem
/flexmock-0.8.11.gem
/flexmock-0.9.0.gem
/flexmock-1.0.2.gem
/flexmock-1.0.3.gem
/flexmock-1.1.0.gem
/flexmock-1.2.0.gem
/flexmock-1.3.0.gem
/flexmock-1.3.1.gem
/flexmock-1.3.2.gem

View file

@ -1,33 +0,0 @@
diff -urp '--exclude=*~' flexmock-3.0.2.orig/lib/flexmock/spy_describers.rb flexmock-3.0.2/lib/flexmock/spy_describers.rb
--- flexmock-3.0.2.orig/lib/flexmock/spy_describers.rb 2025-08-13 16:49:42.102930421 +0900
+++ flexmock-3.0.2/lib/flexmock/spy_describers.rb 2025-08-13 16:56:27.493387656 +0900
@@ -18,7 +18,7 @@ class FlexMock
end
def describe_spy(spy, sym, args, kw, options, not_clause="")
- result = "expected "
+ result = "expected ".dup
result << FlexMock.format_call(sym, args, kw)
result << " to#{not_clause} be received by " << spy.inspect
result << times_description(options[:times])
@@ -29,7 +29,7 @@ class FlexMock
end
def describe_calls(spy)
- result = ''
+ result = ''.dup
if spy.flexmock_calls.empty?
result << "No messages have been received\n"
else
diff -urp '--exclude=*~' flexmock-3.0.2.orig/test/container_methods_test.rb flexmock-3.0.2/test/container_methods_test.rb
--- flexmock-3.0.2.orig/test/container_methods_test.rb 2025-08-13 16:49:41.505249913 +0900
+++ flexmock-3.0.2/test/container_methods_test.rb 2025-08-13 18:12:33.787388043 +0900
@@ -112,7 +112,7 @@ class TestFlexmockContainerMethods < Min
end
def test_stubbing_a_string
- s = "hello"
+ s = "hello".dup
flexmock(:base, s, :length => 2)
assert_equal 2, s.length
end

View file

@ -1,12 +0,0 @@
diff -urp flexmock.orig/test/partial_mock_test.rb flexmock/test/partial_mock_test.rb
--- flexmock.orig/test/partial_mock_test.rb 2024-11-18 15:38:57.625597258 +0900
+++ flexmock/test/partial_mock_test.rb 2024-11-18 15:44:56.469851634 +0900
@@ -633,7 +633,7 @@ class TestStubbing < Minitest::Test
exception = assert_raises(NameError) do
obj.mocked_method
end
- assert_match(/undefined method `does_not_exist' for/, exception.message)
+ assert_match(/undefined method [`']does_not_exist' for/, exception.message)
end
def test_it_checks_whether_mocks_are_forbidden_before_forwarding_the_call

View file

@ -1,32 +0,0 @@
#!/bin/bash
usage() {
echo "$0 <VERSION>"
}
set -e
set -x
if [ $# -lt 1 ] ; then
usage
exit 1
fi
VERSION=$1
TMPDIR=$(mktemp -d /var/tmp/flexmock-XXXXXX)
CURDIR=$(pwd)
pushd $TMPDIR
git clone https://github.com/doudou/flexmock.git
cd flexmock
git reset --hard v$VERSION
cd ..
tar czf $CURDIR/flexmock-${VERSION}-test-missing-files.tar.gz flexmock/test/
popd
rm -rf $TMPDIR

View file

@ -1,28 +1,42 @@
%global ruby_sitelib %(ruby -rrbconfig -e "puts Config::CONFIG['sitelibdir']")
%if 0%{?fedora} < 19
%global rubyabi 1.9.1
%endif
%global gem_name flexmock
# Note
# 0.8.11 seems to work only with ruby 1.8.7+
# (test fails with 1.8.6.x (i.e. F-13))
Summary: Mock object library for ruby
Name: rubygem-%{gem_name}
Version: 3.0.2
Version: 1.3.2
Release: 1%{?dist}
License: MIT
URL: https://github.com/doudou/flexmock
Source0: https://rubygems.org/gems/%{gem_name}-%{version}.gem
Source1: %{gem_name}-%{version}-test-missing-files.tar.gz
# Source1 is created fron Source2
Source2: flexmock-create-missing-test-files.sh
# make testsuite compatible for ruby34 formatting change
Patch0: flexmock-3.0.2-testsuite-ruby34-formatting.patch
# Remove warnings for string literal being frozen in the future
Patch1: flexmock-3.0.2-ruby34-string-literal-frozen.patch
Group: Development/Languages
License: Copyright only
URL: http://flexmock.rubyforge.org
Source0: http://gems.rubyforge.org/gems/%{gem_name}-%{version}.gem
%if 0%{?fedora} >= 19
Requires: ruby(release)
BuildRequires: ruby(release)
%else
Requires: ruby(abi) = %{rubyabi}
Requires: ruby
BuildRequires: ruby(abi) = %{rubyabi}
BuildRequires: ruby
%endif
BuildRequires: rubygems-devel
BuildRequires: rubygem(minitest) >= 5
BuildRequires: rubygem(rspec) >= 3
BuildRequires: rubygem(minitest)
BuildRequires: rubygem(rake)
Requires: ruby(rubygems)
Provides: rubygem(%{gem_name}) = %{version}-%{release}
BuildArch: noarch
%if 0%{?fedora} >= 17
Obsoletes: ruby-%{gem_name} < 0.9.0-3
%endif
%description
FlexMock is a simple, but flexible, mock object library for Ruby unit
@ -30,213 +44,127 @@ testing.
%package doc
Summary: Documentation for %{name}
Group: Documentation
Requires: %{name} = %{version}-%{release}
%description doc
This package contains documentation for %{name}.
%package -n ruby-%{gem_name}
Summary: Non-Gem support package for %{gem_name}
Group: Development/Languages
Requires: %{name} = %{version}-%{release}
Provides: ruby(%{gem_name}) = %{version}-%{release}
%description -n ruby-%{gem_name}
This package provides non-Gem support for %{gem_name}.
%prep
%setup -q -n %{gem_name}-%{version} -a 1
mv ../%{gem_name}-%{version}.gemspec .
%setup -q -c -T
mv flexmock/test .
%patch -P0 -p1
%patch -P1 -p1
%gem_install -n %{SOURCE0}
find . -name \*.rb | xargs sed -i -e '\@/usr/bin/env@d'
find . -name \*.gem -or -name \*.rb -or -name \*.rdoc | xargs chmod 0644
%build
gem build %{gem_name}-%{version}.gemspec
%gem_install
%install
mkdir -p %{buildroot}%{gem_dir}
cp -a .%{gem_dir}/* %{buildroot}%{gem_dir}/
pushd %{buildroot}%{gem_instdir}
rm -rf \
.autotest .gitignore .togglerc .travis.yml .yardopts \
.github \
Gemfile \
Rakefile \
flexmock.blurb \
flexmock.gemspec \
install.rb \
test/ \
%{nil}
# Create symlinks
# Copied from rubygem-getetxt.spec
##
## Note that before switching to gem %%{ruby_sitelib}/%%{gem_name}
## already existed as a directory, so this cannot be replaced
## by symlink (cpio fails)
## Similarly, all directories under %%{ruby_sitelib} cannot be
## replaced by symlink
#
create_symlink_rec(){
ORIGBASEDIR=$1
TARGETBASEDIR=$2
## First calculate relative path of ORIGBASEDIR
## from TARGETBASEDIR
TMPDIR=$TARGETBASEDIR
BACKDIR=
DOWNDIR=
num=0
nnum=0
while true
do
num=$((num+1))
TMPDIR=$(echo $TMPDIR | %{__sed} -e 's|/[^/][^/]*$||')
DOWNDIR=$(echo $ORIGBASEDIR | %{__sed} -e "s|^$TMPDIR||")
if [ x$DOWNDIR != x$ORIGBASEDIR ]
then
nnum=0
while [ $nnum -lt $num ]
do
BACKDIR="../$BACKDIR"
nnum=$((nnum+1))
done
break
fi
done
RELBASEDIR=$( echo $BACKDIR/$DOWNDIR | %{__sed} -e 's|//*|/|g' )
## Next actually create symlink
pushd %{buildroot}/$ORIGBASEDIR
find . -type f | while read f
do
DIRNAME=$(dirname $f)
BACK2DIR=$(echo $DIRNAME | %{__sed} -e 's|/[^/][^/]*|/..|g')
%{__mkdir_p} %{buildroot}${TARGETBASEDIR}/$DIRNAME
LNNAME=$(echo $BACK2DIR/$RELBASEDIR/$f | \
%{__sed} -e 's|^\./||' | %{__sed} -e 's|//|/|g' | \
%{__sed} -e 's|/\./|/|' )
%{__ln_s} -f $LNNAME %{buildroot}${TARGETBASEDIR}/$f
done
popd
rm -f %{buildroot}%{gem_cache}
}
%if 0%{?fedora} < 17
create_symlink_rec %{gem_instdir}/lib %{ruby_sitelib}
%endif
%check
cp -a test .%{gem_instdir}
pushd .%{gem_instdir}
export RUBYOPT=-W:deprecated
export RUBYLIB=$(pwd)/lib:$(pwd):$(pwd)/test
ruby \
-e 'Dir.glob("test/*_test.rb").each {|f| require f}'
# Note: exclude failing tests for now
rspec test/rspec_integration/ \
--exclude-pattern 'test/rspec_integration/spy_example_spec.rb' \
%{nil}
popd
rake test_all --trace
%files
%defattr(-,root,root,-)
%dir %{gem_instdir}
%license %{gem_instdir}/LICENSE.txt
%doc %{gem_instdir}/[A-CR-Z]*
%doc %{gem_instdir}/[A-Z]*
%exclude %{gem_instdir}/TAGS
%exclude %{gem_instdir}/Rakefile
%exclude %{gem_instdir}/install.rb
%{gem_libdir}
%{gem_instdir}/rakelib/
%{gem_cache}
%{gem_spec}
%files doc
%{gem_instdir}/todo.txt
%defattr(-,root,root,-)
%{gem_instdir}/Rakefile
%{gem_instdir}/flexmock.blurb
%{gem_instdir}/doc/
%{gem_docdir}/
%{gem_instdir}/test/
%{gem_dir}/doc/%{gem_name}-%{version}/
%if 0%{?fedora} < 17
%files -n ruby-%{gem_name}
%defattr(-,root,root,-)
%{ruby_sitelib}/%{gem_name}.rb
%{ruby_sitelib}/%{gem_name}/
%endif
%changelog
* Wed Aug 13 2025 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.0.2-1
- 3.0.2
- Fix warnigs for string literal being frozen in the future ruby
* Fri Jul 25 2025 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Sat Jan 18 2025 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Mon Nov 18 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.0.1-2
- Make testsuite compatible with ruby34 formatting change
* Wed Sep 11 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.0.1-1
- 3.0.1
* Tue Sep 03 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.0.0-1
- 3.0.0
* Fri Jul 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.8-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Fri Jan 26 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.8-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Mon Jan 22 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.8-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Mon Aug 14 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 2.3.8-1
- 2.3.8
* Tue Aug 08 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 2.3.6-15
- Handle MiniTest 5.19+
* Fri Jul 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.6-14
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.6-13
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.6-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.6-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.6-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.6-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Sun Jan 24 2021 Mamoru TASAKA <mtasaka@fedoraproject.org> - 2.3.6-8
- Patch to support ruby 3.0
- Use binding.source_location for test
- Properly accept argument and keywords
- Relax error message on test a bit
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.6-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.6-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.6-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.6-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.6-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.6-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Fri Oct 6 2017 Mamoru TASAKA <mtasaka@fedoraproject.org> - 2.3.6-1
- 2.3.6
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Fri Mar 17 2017 Mamoru TASAKA <mtasaka@fedoraproject.org> - 2.3.5-1
- 2.3.5
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Thu Dec 1 2016 Mamoru TASAKA <mtasaka@fedoraproject.org> - 2.3.4-1
- 2.3.4
* Mon Oct 17 2016 Mamoru TASAKA <mtasaka@fedoraproject.org> - 2.3.0-1
- 2.3.0
* Fri Jul 15 2016 Mamoru TASAKA <mtasaka@fedoraproject.org> - 2.2.1-1
- 2.2.1
* Thu May 5 2016 Mamoru TASAKA <mtasaka@fedoraproject.org> - 2.1.0-1
- 2.1.0
* Wed Apr 13 2016 Mamoru TASAKA <mtasaka@fedoraproject.org> - 2.0.5-1
- 2.0.5
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Tue Dec 29 2015 Mamoru TASAKA <mtasaka@fedoraproject.org> - 2.0.4-1
- 2.0.4
* Wed Dec 16 2015 Mamoru TASAKA <mtasaka@fedoraproject.org> - 2.0.3-1
- 2.0.3
* Thu Sep 24 2015 Mamoru TASAKA <mtasaka@fedoraproject.org> - 2.0.2-1
- 2.0.2
* Thu Sep 24 2015 Mamoru TASAKA <mtasaka@fedoraproject.org> - 2.0.1-1
- 2.0.1
* Thu Sep 24 2015 Mamoru TASAKA <mtasaka@fedoraproject.org> - 2.0.0-1
- 2.0.0
* Fri Aug 14 2015 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.3.3-5
- Fix two failing tests, and omit one test currently
* Thu Jun 18 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.3.3-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Thu Jun 19 2014 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.3.3-3
- Force to use minitest ver4 for now
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.3.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Sun May 4 2014 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.3.3-1
- 1.3.3
* Wed Aug 6 2013 Mamoru TASAKA <mtasaka@fedoraproject.org> - 1.3.2-1
- 1.3.2

View file

@ -1,2 +1 @@
SHA512 (flexmock-3.0.2.gem) = 07902e5641e2d014e626c1b64f65aeae493fff88ea4f7be42816e63f7609db92ff5fa3b1ad3010e6c352c88f81480667326d83257f55de17b388f3ab68ece827
SHA512 (flexmock-3.0.2-test-missing-files.tar.gz) = 3660f0f4cdeab1f92d5b89a57217effdacfdf91fa80eea22fb0baa4bba99bed99b5a8f6c918fd6e008bd2c5d3005ec5a9bd18feb11d9c56c03b292a3a9cc3abd
12949cb3f5d1f20aae591cbd637dc9a7 flexmock-1.3.2.gem