-
Notifications
You must be signed in to change notification settings - Fork 556
/
request_signature_spec.rb
37 lines (28 loc) · 1.32 KB
/
request_signature_spec.rb
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
require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
describe RequestSignature do
describe "initialization" do
it "should have assigned normalized uri" do
WebMock::Util::URI.should_receive(:normalize_uri).and_return("www.example.kom")
signature = RequestSignature.new(:get, "www.example.com")
signature.uri.should == "www.example.kom"
end
it "should have assigned uri without normalization if uri is URI" do
WebMock::Util::URI.should_not_receive(:normalize_uri)
uri = Addressable::URI.parse("www.example.com")
signature = RequestSignature.new(:get, uri)
signature.uri.should == uri
end
it "should have assigned normalized headers" do
WebMock::Util::Headers.should_receive(:normalize_headers).with('A' => 'a').and_return('B' => 'b')
RequestSignature.new(:get, "www.example.com", :headers => {'A' => 'a'}).headers.should == {'B' => 'b'}
end
it "should have assigned body" do
RequestSignature.new(:get, "www.example.com", :body => "abc").body.should == "abc"
end
end
it "should report string describing itself" do
RequestSignature.new(:get, "www.example.com",
:body => "abc", :headers => {'A' => 'a', 'B' => 'b'}).to_s.should ==
"GET http://www.example.com/ with body 'abc' with headers {'A'=>'a', 'B'=>'b'}"
end
end