[DRE-commits] [ruby-http-parser.rb] 02/03: Make tests run
Balasankar C
balasankarc-guest at moszumanska.debian.org
Mon Jul 20 15:59:13 UTC 2015
This is an automated email from the git hooks/post-receive script.
balasankarc-guest pushed a commit to branch master
in repository ruby-http-parser.rb.
commit 4770d4b61c0f78ed16597d6ac91e14c2889c6696
Author: Balasankar C <balasankarc at autistici.org>
Date: Mon Jul 20 21:27:51 2015 +0530
Make tests run
---
debian/patches/0005-tweak-to-support-rspec3.patch | 364 ++++++++++++++++++++++
debian/patches/series | 1 +
debian/ruby-tests.rake | 14 +-
3 files changed, 376 insertions(+), 3 deletions(-)
diff --git a/debian/patches/0005-tweak-to-support-rspec3.patch b/debian/patches/0005-tweak-to-support-rspec3.patch
new file mode 100644
index 0000000..7f40161
--- /dev/null
+++ b/debian/patches/0005-tweak-to-support-rspec3.patch
@@ -0,0 +1,364 @@
+Description: Tweak tests to support RSpec3
+ Tests were using old syntax which gave errors and deprecation warnings with
+ RSpec 3. Patched them to use the new syntax.
+Author: Balasankar C <balasankarc at autistici.org>
+Last-Update: 2015-07-20
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/spec/parser_spec.rb
++++ b/spec/parser_spec.rb
+@@ -21,24 +21,24 @@
+ end
+
+ it "should have initial state" do
+- @parser.headers.should be_nil
++ expect(@parser.headers).to be_nil
+
+- @parser.http_version.should be_nil
+- @parser.http_method.should be_nil
+- @parser.status_code.should be_nil
++ expect(@parser.http_version).to be_nil
++ expect(@parser.http_method).to be_nil
++ expect(@parser.status_code).to be_nil
+
+- @parser.request_url.should be_nil
++ expect(@parser.request_url).to be_nil
+
+- @parser.header_value_type.should == :mixed
++ expect(@parser.header_value_type).to eq(:mixed)
+ end
+
+ it "should allow us to set the header value type" do
+ [:mixed, :arrays, :strings].each do |type|
+ @parser.header_value_type = type
+- @parser.header_value_type.should == type
++ expect(@parser.header_value_type).to eq(type)
+
+ parser_tmp = HTTP::Parser.new(nil, type)
+- parser_tmp.header_value_type.should == type
++ expect(parser_tmp.header_value_type).to eq(type)
+ end
+ end
+
+@@ -47,16 +47,16 @@
+ HTTP::Parser.default_header_value_type = type
+
+ parser = HTTP::Parser.new
+- parser.header_value_type.should == type
++ expect(parser.header_value_type).to eq(type)
+ end
+ end
+
+ it "should throw an Argument Error if header value type is invalid" do
+- proc{ @parser.header_value_type = 'bob' }.should raise_error(ArgumentError)
++ expect(proc{ @parser.header_value_type = 'bob' }).to raise_error(ArgumentError)
+ end
+
+ it "should throw an Argument Error if default header value type is invalid" do
+- proc{ HTTP::Parser.default_header_value_type = 'bob' }.should raise_error(ArgumentError)
++ expect(proc{ HTTP::Parser.default_header_value_type = 'bob' }).to raise_error(ArgumentError)
+ end
+
+ it "should implement basic api" do
+@@ -69,26 +69,26 @@
+ "\r\n" +
+ "World"
+
+- @started.should be_true
+- @done.should be_true
++ expect(@started).to be_truthy
++ expect(@done).to be_truthy
+
+- @parser.http_major.should == 1
+- @parser.http_minor.should == 1
+- @parser.http_version.should == [1,1]
+- @parser.http_method.should == 'GET'
+- @parser.status_code.should be_nil
+-
+- @parser.request_url.should == '/test?ok=1'
+-
+- @parser.headers.should == @headers
+- @parser.headers['User-Agent'].should == 'curl/7.18.0'
+- @parser.headers['Host'].should == '0.0.0.0:5000'
++ expect(@parser.http_major).to eq(1)
++ expect(@parser.http_minor).to eq(1)
++ expect(@parser.http_version).to eq([1,1])
++ expect(@parser.http_method).to eq('GET')
++ expect(@parser.status_code).to be_nil
++
++ expect(@parser.request_url).to eq('/test?ok=1')
++
++ expect(@parser.headers).to eq(@headers)
++ expect(@parser.headers['User-Agent']).to eq('curl/7.18.0')
++ expect(@parser.headers['Host']).to eq('0.0.0.0:5000')
+
+- @body.should == "World"
++ expect(@body).to eq("World")
+ end
+
+ it "should raise errors on invalid data" do
+- proc{ @parser << "BLAH" }.should raise_error(HTTP::Parser::Error)
++ expect(proc{ @parser << "BLAH" }).to raise_error(HTTP::Parser::Error)
+ end
+
+ it "should abort parser via callback" do
+@@ -102,33 +102,33 @@
+
+ bytes = @parser << data
+
+- bytes.should == 37
+- data[bytes..-1].should == 'World'
++ expect(bytes).to eq(37)
++ expect(data[bytes..-1]).to eq('World')
+
+- @headers.should == {'Content-Length' => '5'}
+- @body.should be_empty
+- @done.should be_false
++ expect(@headers).to eq({'Content-Length' => '5'})
++ expect(@body).to be_empty
++ expect(@done).to be_falsey
+ end
+
+ it "should reset to initial state" do
+ @parser << "GET / HTTP/1.0\r\n\r\n"
+
+- @parser.http_method.should == 'GET'
+- @parser.http_version.should == [1,0]
++ expect(@parser.http_method).to eq('GET')
++ expect(@parser.http_version).to eq([1,0])
+
+- @parser.request_url.should == '/'
++ expect(@parser.request_url).to eq('/')
+
+- @parser.reset!.should be_true
++ expect(@parser.reset!).to be_truthy
+
+- @parser.http_version.should be_nil
+- @parser.http_method.should be_nil
+- @parser.status_code.should be_nil
++ expect(@parser.http_version).to be_nil
++ expect(@parser.http_method).to be_nil
++ expect(@parser.status_code).to be_nil
+
+- @parser.request_url.should be_nil
++ expect(@parser.request_url).to be_nil
+ end
+
+ it "should optionally reset parser state on no-body responses" do
+- @parser.reset!.should be_true
++ expect(@parser.reset!).to be_truthy
+
+ @head, @complete = 0, 0
+ @parser.on_headers_complete = proc {|h| @head += 1; :reset }
+@@ -138,21 +138,21 @@
+ head_response = "HTTP/1.1 200 OK\r\nContent-Length:10\r\n\r\n"
+
+ @parser << head_response
+- @head.should == 1
+- @complete.should == 1
++ expect(@head).to eq(1)
++ expect(@complete).to eq(1)
+
+ @parser << head_response
+- @head.should == 2
+- @complete.should == 2
++ expect(@head).to eq(2)
++ expect(@complete).to eq(2)
+ end
+
+ it "should retain callbacks after reset" do
+- @parser.reset!.should be_true
++ expect(@parser.reset!).to be_truthy
+
+ @parser << "GET / HTTP/1.0\r\n\r\n"
+- @started.should be_true
+- @headers.should == {}
+- @done.should be_true
++ expect(@started).to be_truthy
++ expect(@headers).to eq({})
++ expect(@done).to be_truthy
+ end
+
+ it "should parse headers incrementally" do
+@@ -166,10 +166,10 @@
+ @parser << chunk
+ end
+
+- @parser.headers.should == {
++ expect(@parser.headers).to eq({
+ 'Header1' => 'value 1',
+ 'Header2' => 'value 2'
+- }
++ })
+ end
+
+ it "should handle multiple headers using strings" do
+@@ -181,7 +181,7 @@
+ "Set-Cookie: NID=46jSHxPM; path=/; domain=.bob.com; HttpOnly\r\n" +
+ "\r\n"
+
+- @parser.headers["Set-Cookie"].should == "PREF=ID=a7d2c98; expires=Fri, 05-Apr-2013 05:00:45 GMT; path=/; domain=.bob.com, NID=46jSHxPM; path=/; domain=.bob.com; HttpOnly"
++ expect(@parser.headers["Set-Cookie"]).to eq("PREF=ID=a7d2c98; expires=Fri, 05-Apr-2013 05:00:45 GMT; path=/; domain=.bob.com, NID=46jSHxPM; path=/; domain=.bob.com; HttpOnly")
+ end
+
+ it "should handle multiple headers using strings" do
+@@ -193,10 +193,10 @@
+ "Set-Cookie: NID=46jSHxPM; path=/; domain=.bob.com; HttpOnly\r\n" +
+ "\r\n"
+
+- @parser.headers["Set-Cookie"].should == [
++ expect(@parser.headers["Set-Cookie"]).to eq([
+ "PREF=ID=a7d2c98; expires=Fri, 05-Apr-2013 05:00:45 GMT; path=/; domain=.bob.com",
+ "NID=46jSHxPM; path=/; domain=.bob.com; HttpOnly"
+- ]
++ ])
+ end
+
+ it "should handle multiple headers using mixed" do
+@@ -208,10 +208,10 @@
+ "Set-Cookie: NID=46jSHxPM; path=/; domain=.bob.com; HttpOnly\r\n" +
+ "\r\n"
+
+- @parser.headers["Set-Cookie"].should == [
++ expect(@parser.headers["Set-Cookie"]).to eq([
+ "PREF=ID=a7d2c98; expires=Fri, 05-Apr-2013 05:00:45 GMT; path=/; domain=.bob.com",
+ "NID=46jSHxPM; path=/; domain=.bob.com; HttpOnly"
+- ]
++ ])
+ end
+
+ it "should handle a single cookie using mixed" do
+@@ -222,23 +222,23 @@
+ "Set-Cookie: PREF=ID=a7d2c98; expires=Fri, 05-Apr-2013 05:00:45 GMT; path=/; domain=.bob.com\r\n" +
+ "\r\n"
+
+- @parser.headers["Set-Cookie"].should == "PREF=ID=a7d2c98; expires=Fri, 05-Apr-2013 05:00:45 GMT; path=/; domain=.bob.com"
++ expect(@parser.headers["Set-Cookie"]).to eq("PREF=ID=a7d2c98; expires=Fri, 05-Apr-2013 05:00:45 GMT; path=/; domain=.bob.com")
+ end
+
+ it "should support alternative api" do
+ callbacks = double('callbacks')
+- callbacks.stub(:on_message_begin){ @started = true }
+- callbacks.stub(:on_headers_complete){ |e| @headers = e }
+- callbacks.stub(:on_body){ |chunk| @body << chunk }
+- callbacks.stub(:on_message_complete){ @done = true }
++ allow(callbacks).to receive(:on_message_begin){ @started = true }
++ allow(callbacks).to receive(:on_headers_complete){ |e| @headers = e }
++ allow(callbacks).to receive(:on_body){ |chunk| @body << chunk }
++ allow(callbacks).to receive(:on_message_complete){ @done = true }
+
+ @parser = HTTP::Parser.new(callbacks)
+ @parser << "GET / HTTP/1.0\r\n\r\n"
+
+- @started.should be_true
+- @headers.should == {}
+- @body.should == ''
+- @done.should be_true
++ expect(@started).to be_truthy
++ expect(@headers).to eq({})
++ expect(@body).to eq('')
++ expect(@done).to be_truthy
+ end
+
+ it "should ignore extra content beyond specified length" do
+@@ -249,8 +249,8 @@
+ "hello" +
+ " \n"
+
+- @body.should == 'hello'
+- @done.should be_true
++ expect(@body).to eq('hello')
++ expect(@done).to be_truthy
+ end
+
+ it 'sets upgrade_data if available' do
+@@ -260,8 +260,8 @@
+ "Upgrade: WebSocket\r\n\r\n" +
+ "third key data"
+
+- @parser.upgrade?.should be_true
+- @parser.upgrade_data.should == 'third key data'
++ expect(@parser.upgrade?).to be_truthy
++ expect(@parser.upgrade_data).to eq('third key data')
+ end
+
+ it 'sets upgrade_data to blank if un-available' do
+@@ -270,8 +270,8 @@
+ "Connection: Upgrade\r\n" +
+ "Upgrade: WebSocket\r\n\r\n"
+
+- @parser.upgrade?.should be_true
+- @parser.upgrade_data.should == ''
++ expect(@parser.upgrade?).to be_truthy
++ expect(@parser.upgrade_data).to eq('')
+ end
+
+ it 'should stop parsing headers when instructed' do
+@@ -285,13 +285,13 @@
+
+ @parser.on_headers_complete = proc { |e| :stop }
+ offset = (@parser << request)
+- @parser.upgrade?.should be_true
+- @parser.upgrade_data.should == ''
+- offset.should == request.length
++ expect(@parser.upgrade?).to be_truthy
++ expect(@parser.upgrade_data).to eq('')
++ expect(offset).to eq(request.length)
+ end
+
+ it "should execute on_body on requests with no content-length" do
+- @parser.reset!.should be_true
++ expect(@parser.reset!).to be_truthy
+
+ @head, @complete, @body = 0, 0, 0
+ @parser.on_headers_complete = proc {|h| @head += 1 }
+@@ -302,9 +302,9 @@
+
+ @parser << head_response
+ @parser << ''
+- @head.should == 1
+- @complete.should == 1
+- @body.should == 1
++ expect(@head).to eq(1)
++ expect(@complete).to eq(1)
++ expect(@body).to eq(1)
+ end
+
+
+@@ -316,12 +316,12 @@
+ it "should parse #{type}: #{test['name']}" do
+ @parser << test['raw']
+
+- @parser.http_method.should == test['method']
+- @parser.keep_alive?.should == test['should_keep_alive']
++ expect(@parser.http_method).to eq(test['method'])
++ expect(@parser.keep_alive?).to eq(test['should_keep_alive'])
+
+ if test.has_key?('upgrade') and test['upgrade'] != 0
+- @parser.upgrade?.should be_true
+- @parser.upgrade_data.should == test['upgrade']
++ expect(@parser.upgrade?).to be_truthy
++ expect(@parser.upgrade_data).to eq(test['upgrade'])
+ end
+
+ fields = %w[
+@@ -340,14 +340,14 @@
+ end
+
+ fields.each do |field|
+- @parser.send(field).should == test[field]
++ expect(@parser.send(field)).to eq(test[field])
+ end
+
+- @headers.size.should == test['num_headers']
+- @headers.should == test['headers']
++ expect(@headers.size).to eq(test['num_headers'])
++ expect(@headers).to eq(test['headers'])
+
+- @body.should == test['body']
+- @body.size.should == test['body_size'] if test['body_size']
++ expect(@body).to eq(test['body'])
++ expect(@body.size).to eq(test['body_size']) if test['body_size']
+ end
+ end
+ end
diff --git a/debian/patches/series b/debian/patches/series
index d17f084..8e407a3 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -2,3 +2,4 @@
0002-Remove-git-ls-files-call-in-gemspec.patch
0003-Build-with-system-libhttp-parser.patch
0004-Do-not-overload-loadpath.patch
+0005-tweak-to-support-rspec3.patch
diff --git a/debian/ruby-tests.rake b/debian/ruby-tests.rake
index a2fba75..195d73e 100644
--- a/debian/ruby-tests.rake
+++ b/debian/ruby-tests.rake
@@ -1,7 +1,15 @@
-require "rspec/core/rake_task"
+require 'rspec/core/rake_task'
-RSpec::Core::RakeTask.new(:spec) do |t|
- t.rspec_opts = %w(-fs -c)
+RSpec::Core::RakeTask.new(:spec) do |spec|
+ spec.pattern = './spec/**/*_spec.rb'
end
task :default => :spec
+
+#require "rspec/core/rake_task"
+
+#RSpec::Core::RakeTask.new(:spec) do |t|
+ #t.rspec_opts = %w(-fs -c)
+#end
+
+#task :default => :spec
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-ruby-extras/ruby-http-parser.rb.git
More information about the Pkg-ruby-extras-commits
mailing list