summaryrefslogtreecommitdiffstats
path: root/rubygem-unicorn.spec
diff options
context:
space:
mode:
authorKen Dreyer <ktdreyer@ktdreyer.com>2013-11-24 17:45:56 -0700
committerKen Dreyer <ktdreyer@ktdreyer.com>2013-11-24 22:38:45 -0700
commitea8a024372e81e5cffd44535c932b477f9a279d2 (patch)
tree81ef2858fbe71e836726bcb0eff5403a113a3773 /rubygem-unicorn.spec
parent793c76f58c5ee74c6817574a20bb2d963d2fc022 (diff)
downloadrubygem-unicorn-ea8a024372e81e5cffd44535c932b477f9a279d2.tar.gz
rubygem-unicorn-ea8a024372e81e5cffd44535c932b477f9a279d2.tar.xz
rubygem-unicorn-ea8a024372e81e5cffd44535c932b477f9a279d2.zip
fix tests
move modifications to %prep run "make test"
Diffstat (limited to 'rubygem-unicorn.spec')
-rw-r--r--rubygem-unicorn.spec88
1 files changed, 37 insertions, 51 deletions
diff --git a/rubygem-unicorn.spec b/rubygem-unicorn.spec
index 3a2105c..db0f16d 100644
--- a/rubygem-unicorn.spec
+++ b/rubygem-unicorn.spec
@@ -31,6 +31,8 @@ BuildRequires: rubygem(rack)
BuildRequires: rubygem(raindrops) >= 0.7
BuildRequires: rubygem(kgio) >= 2.6
BuildRequires: rubygem(minitest)
+BuildRequires: rubygem(isolate)
+BuildRequires: ragel
ExcludeArch: ppc ppc64
Provides: rubygem(%{gem_name}) = %{version}
@@ -50,75 +52,78 @@ Requires: %{name} = %{version}-%{release}
Documentation for %{name}
%prep
-%setup -q -c -T
+gem unpack %{SOURCE0}
-%build
-mkdir -p .%{gem_dir}
-export CONFIGURE_ARGS="--with-cflags='%{optflags}'"
-gem install --local --install-dir .%{gem_dir} \
- -V \
- --force %{SOURCE0}
+%setup -q -D -T -n %{gem_name}-%{version}
+
+gem spec %{SOURCE0} -l --ruby > %{gem_name}.gemspec
# Fix wrong shebang
%if 0%{?fedora} >= 18
grep -rl /this/will/be/overwritten/or/wrapped/anyways/do/not/worry/ruby \
- ./usr/share/gems/gems/%{gem_name}-%{version}/bin/unicorn | \
+ bin/unicorn | \
xargs sed -i -e 's|/this/will/be/overwritten/or/wrapped/anyways/do/not/worry/ruby|/usr/bin/ruby|'
grep -rl /this/will/be/overwritten/or/wrapped/anyways/do/not/worry/ruby \
- ./usr/share/gems/gems/%{gem_name}-%{version}/bin/unicorn_rails | \
+ bin/unicorn_rails | \
xargs sed -i -e 's|/this/will/be/overwritten/or/wrapped/anyways/do/not/worry/ruby|/usr/bin/ruby|'
%endif
# Fixing test-suite files
sed -i '2 i\
-require "rubygems"' .%{gem_instdir}/test/unit/test_configurator.rb
+require "rubygems"' test/unit/test_configurator.rb
sed -i '2 i\
-require "rubygems"' .%{gem_instdir}/test/unit/test_http_parser_ng.rb
+require "rubygems"' test/unit/test_http_parser_ng.rb
sed -i '2 i\
-require "rubygems"' .%{gem_instdir}/test/unit/test_http_parser_xftrust.rb
+require "rubygems"' test/unit/test_http_parser_xftrust.rb
sed -i '2 i\
-require "rubygems"' .%{gem_instdir}/test/unit/test_response.rb
+require "rubygems"' test/unit/test_response.rb
sed -i '2 i\
-require "rubygems"' .%{gem_instdir}/test/unit/test_signals.rb
+require "rubygems"' test/unit/test_signals.rb
sed -i '2 i\
-require "rubygems"' .%{gem_instdir}/test/unit/test_stream_input.rb
+require "rubygems"' test/unit/test_stream_input.rb
sed -i '2 i\
-require "rubygems"' .%{gem_instdir}/test/unit/test_upload.rb
+require "rubygems"' test/unit/test_upload.rb
sed -i '2 i\
-require "rubygems"' .%{gem_instdir}/test/unit/test_droplet.rb
+require "rubygems"' test/unit/test_droplet.rb
sed -i '2 i\
-require "rubygems"' .%{gem_instdir}/test/unit/test_http_parser.rb
+require "rubygems"' test/unit/test_http_parser.rb
sed -i '2 i\
-require "rubygems"' .%{gem_instdir}/test/unit/test_request.rb
+require "rubygems"' test/unit/test_request.rb
sed -i '2 i\
-require "rubygems"' .%{gem_instdir}/test/unit/test_server.rb
+require "rubygems"' test/unit/test_server.rb
sed -i '2 i\
-require "rubygems"' .%{gem_instdir}/test/unit/test_socket_helper.rb
+require "rubygems"' test/unit/test_socket_helper.rb
sed -i '2 i\
-require "rubygems"' .%{gem_instdir}/test/unit/test_tee_input.rb
+require "rubygems"' test/unit/test_tee_input.rb
sed -i '2 i\
-require "rubygems"' .%{gem_instdir}/test/unit/test_util.rb
+require "rubygems"' test/unit/test_util.rb
sed -i '2 i\
-require "rubygems"' .%{gem_instdir}/test/unit/test_sni_hostnames.rb
+require "rubygems"' test/unit/test_sni_hostnames.rb
##sed -i '2 i\
-##require "rubygems"' .%{gem_instdir}/test/rails/test_rails.rb
+##require "rubygems"' test/rails/test_rails.rb
+
+
+%build
+# Create the gem as gem install only works on a gem file
+gem build %{gem_name}.gemspec
+%gem_install
%install
mkdir -p %{buildroot}%{gem_dir}
@@ -126,8 +131,8 @@ cp -a .%{gem_dir}/* \
%{buildroot}%{gem_dir}/
mkdir -p %{buildroot}%{_bindir}
-cp -a .%{gem_dir}/bin/unicorn %{buildroot}%{_bindir}/
-cp -a .%{gem_dir}/bin/unicorn_rails %{buildroot}%{_bindir}/
+cp -a .%{gem_instdir}/bin/unicorn %{buildroot}%{_bindir}/
+cp -a .%{gem_instdir}/bin/unicorn_rails %{buildroot}%{_bindir}/
# Remove leftovers
rm %{buildroot}/%{gem_instdir}/.CHANGELOG.old
@@ -161,28 +166,11 @@ install -d -m0755 %{buildroot}%{gem_extdir_mri}/lib
mv %{buildroot}%{gem_instdir}/lib/unicorn_http.so %{buildroot}%{gem_extdir_mri}/lib/
%check
-cd %{buildroot}%{gem_dir}/gems/%{gem_name}-%{version}
-
-echo "Running tests"
-
-%if 0%{?fedora} >= 18
-RUBYOPT="-Ilib -I%{buildroot}%{gem_extdir} -Itest" testrb test/unit/test_configurator.rb
-RUBYOPT="-Ilib -I%{buildroot}%{gem_extdir} -Itest" testrb test/unit/test_droplet.rb
-RUBYOPT="-Ilib -I%{buildroot}%{gem_extdir} -Itest" testrb test/unit/test_http_parser.rb
-RUBYOPT="-Ilib -I%{buildroot}%{gem_extdir} -Itest" testrb test/unit/test_http_parser_ng.rb
-RUBYOPT="-Ilib -I%{buildroot}%{gem_extdir} -Itest" testrb test/unit/test_http_parser_xftrust.rb
-RUBYOPT="-Ilib -I%{buildroot}%{gem_extdir} -Itest" testrb test/unit/test_request.rb
-RUBYOPT="-Ilib -I%{buildroot}%{gem_extdir} -Itest" testrb test/unit/test_response.rb
-RUBYOPT="-Ilib -I%{buildroot}%{gem_extdir} -Itest" testrb test/unit/test_server.rb
-RUBYOPT="-Ilib -I%{buildroot}%{gem_extdir} -Itest" testrb test/unit/test_signals.rb
-RUBYOPT="-Ilib -I%{buildroot}%{gem_extdir} -Itest" testrb test/unit/test_sni_hostnames.rb
-RUBYOPT="-Ilib -I%{buildroot}%{gem_extdir} -Itest" testrb test/unit/test_socket_helper.rb
-RUBYOPT="-Ilib -I%{buildroot}%{gem_extdir} -Itest" testrb test/unit/test_stream_input.rb
-RUBYOPT="-Ilib -I%{buildroot}%{gem_extdir} -Itest" testrb test/unit/test_upload.rb
-RUBYOPT="-Ilib -I%{buildroot}%{gem_extdir} -Itest" testrb test/unit/test_tee_input.rb
-RUBYOPT="-Ilib -I%{buildroot}%{gem_extdir} -Itest" testrb test/unit/test_util.rb
-#RUBYOPT="-Ilib -I%%{buildroot}%%{gem_extdir} -Itest" testrb test/rails/test_rails.rb
-%endif
+# Don't use testrb.
+# http://rubyforge.org/pipermail/mongrel-unicorn/2012-December/001647.html
+pushd .%{gem_instdir}
+ make test
+popd
%files
%{gem_extdir_mri}/*
@@ -190,8 +178,6 @@ RUBYOPT="-Ilib -I%{buildroot}%{gem_extdir} -Itest" testrb test/unit/test_util.rb
%{gem_cache}
%{gem_spec}
%{gem_instdir}/lib
-%{gem_dir}/bin/unicorn
-%{gem_dir}/bin/unicorn_rails
%{_bindir}/unicorn
%{_bindir}/unicorn_rails
%{gem_instdir}/bin/unicorn