From ea8a024372e81e5cffd44535c932b477f9a279d2 Mon Sep 17 00:00:00 2001 From: Ken Dreyer Date: Sun, 24 Nov 2013 17:45:56 -0700 Subject: fix tests move modifications to %prep run "make test" --- rubygem-unicorn.spec | 88 ++++++++++++++++++++++------------------------------ 1 file changed, 37 insertions(+), 51 deletions(-) (limited to 'rubygem-unicorn.spec') 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 -- cgit