http_stub 0.9.6 → 0.9.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. data/lib/http_stub/configurer/request/controllable_value.rb +21 -0
  2. data/lib/http_stub/configurer/request/omittable.rb +18 -0
  3. data/lib/http_stub/configurer/request/regexpable.rb +2 -7
  4. data/lib/http_stub/configurer/request/stub.rb +3 -3
  5. data/lib/http_stub/models/exact_value_matcher.rb +13 -0
  6. data/lib/http_stub/models/hash_with_value_matchers.rb +20 -0
  7. data/lib/http_stub/models/omitted_value_matcher.rb +19 -0
  8. data/lib/http_stub/models/regexp_value_matcher.rb +14 -0
  9. data/lib/http_stub/models/stub_headers.rb +1 -1
  10. data/lib/http_stub/models/stub_parameters.rb +1 -1
  11. data/lib/http_stub/models/stub_uri.rb +1 -1
  12. data/lib/http_stub/models/value_matcher.rb +29 -0
  13. data/lib/http_stub/version.rb +1 -1
  14. data/lib/http_stub.rb +7 -2
  15. data/spec/lib/http_stub/configurer/request/controllable_value_spec.rb +34 -0
  16. data/spec/lib/http_stub/configurer/request/omittable_spec.rb +70 -0
  17. data/spec/lib/http_stub/configurer/request/stub_spec.rb +11 -11
  18. data/spec/lib/http_stub/configurer_integration_spec.rb +51 -9
  19. data/spec/lib/http_stub/models/exact_value_matcher_spec.rb +33 -0
  20. data/spec/lib/http_stub/models/hash_with_value_matchers_spec.rb +156 -0
  21. data/spec/lib/http_stub/models/omitted_value_matcher_spec.rb +58 -0
  22. data/spec/lib/http_stub/models/regexp_value_matcher_spec.rb +48 -0
  23. data/spec/lib/http_stub/models/stub_headers_spec.rb +4 -4
  24. data/spec/lib/http_stub/models/stub_parameters_spec.rb +4 -4
  25. data/spec/lib/http_stub/models/stub_uri_spec.rb +9 -9
  26. data/spec/lib/http_stub/models/value_matcher_spec.rb +81 -0
  27. data/spec/lib/http_stub/server_integration_spec.rb +33 -7
  28. data/spec/lib/http_stub/server_spec.rb +13 -16
  29. data/spec/spec_helper.rb +1 -1
  30. metadata +36 -21
  31. data/lib/http_stub/models/hash_with_regexpable_values.rb +0 -20
  32. data/lib/http_stub/models/regexpable_value.rb +0 -22
  33. data/spec/lib/http_stub/models/hash_with_regexpable_values_spec.rb +0 -149
  34. data/spec/lib/http_stub/models/regexpable_value_spec.rb +0 -69
@@ -0,0 +1,156 @@
1
+ describe HttpStub::Models::HashWithValueMatchers do
2
+
3
+ let(:stubbed_hash) do
4
+ (1..3).reduce({}) do |result, i|
5
+ result["key#{i}"] = "value#{i}"
6
+ result
7
+ end
8
+ end
9
+
10
+ let(:value_matchers) do
11
+ stubbed_hash.values.map { |value| double(HttpStub::Models::ValueMatcher, to_s: value).as_null_object }
12
+ end
13
+
14
+ let(:value_matcher_hash) { HttpStub::Models::HashWithValueMatchers.new(stubbed_hash) }
15
+
16
+ before(:each) do
17
+ value_matchers.each { |value| HttpStub::Models::ValueMatcher.stub(:new).with(value.to_s).and_return(value) }
18
+ end
19
+
20
+ it "should be hash" do
21
+ value_matcher_hash.should be_a(Hash)
22
+ end
23
+
24
+ describe "constructor" do
25
+
26
+ it "should create a value matcher representation of each value in the hash" do
27
+ value_matchers.each do |value|
28
+ HttpStub::Models::ValueMatcher.should_receive(:new).with(value.to_s).and_return(value)
29
+ end
30
+
31
+ value_matcher_hash.values.should eql(value_matchers)
32
+ end
33
+
34
+ end
35
+
36
+ describe "#match?" do
37
+
38
+ context "when the stubbed hash contains multiple entries" do
39
+
40
+ context "and the provided hash has the same number of entries" do
41
+
42
+ context "and the keys match" do
43
+
44
+ let(:provided_hash) do
45
+ stubbed_hash.reduce({}) do |result, entry|
46
+ result[entry[0]] = "another #{entry[1]}"
47
+ result
48
+ end
49
+ end
50
+
51
+ context "and the values match" do
52
+
53
+ before(:each) do
54
+ value_matchers.each { |value| value.stub(:match?).with("another #{value}").and_return(true) }
55
+ end
56
+
57
+ it "should return true" do
58
+ value_matcher_hash.match?(provided_hash).should be_true
59
+ end
60
+
61
+ end
62
+
63
+ context "and a value does not match" do
64
+
65
+ before(:each) do
66
+ value_matchers.each { |value| value.stub(:match?).with("another #{value}").and_return(true) }
67
+
68
+ non_matching_value = value_matchers[1]
69
+ non_matching_value.stub(:match?).with("another #{non_matching_value}").and_return(false)
70
+ end
71
+
72
+ it "should return false" do
73
+ value_matcher_hash.match?(provided_hash).should be_false
74
+ end
75
+
76
+ end
77
+
78
+ end
79
+
80
+ context "and a key does not match" do
81
+
82
+ let(:provided_hash) { { "key1" => "value1", "differentkey2" => "another value2", "key3" => "value3" } }
83
+
84
+ it "should determine if the corresponding value matches nil" do
85
+ expected_values = [ "value1", nil, "value3" ]
86
+ value_matchers.zip(expected_values).each do |value_matcher, expected_value|
87
+ value_matcher.stub(:match?).with(expected_value)
88
+ end
89
+
90
+ value_matcher_hash.match?(provided_hash)
91
+ end
92
+
93
+ it "should return the result of evaluating the value matchers" do
94
+ value_matchers.each { |value| value.stub(:match?).and_return(true) }
95
+
96
+ value_matcher_hash.match?(provided_hash).should be_true
97
+ end
98
+
99
+ end
100
+
101
+ end
102
+
103
+ context "and the provided hash contains more entries" do
104
+
105
+ let(:provided_hash) do
106
+ (1..5).reduce({}) do |result, i|
107
+ result["key#{i}"] = "another value#{i}"
108
+ result
109
+ end
110
+ end
111
+
112
+ context "and it has matching keys and values" do
113
+
114
+ before(:each) do
115
+ value_matchers.each { |value| value.stub(:match?).with("another #{value}").and_return(true) }
116
+ end
117
+
118
+ it "should return true" do
119
+ value_matcher_hash.match?(provided_hash).should be_true
120
+ end
121
+
122
+ end
123
+
124
+ end
125
+
126
+ end
127
+
128
+ context "when the stubbed hash is empty" do
129
+
130
+ let(:stubbed_hash) { {} }
131
+
132
+ context "and the provided hash is not empty" do
133
+
134
+ let(:provided_hash) { { "key" => "value" } }
135
+
136
+ it "should return true" do
137
+ value_matcher_hash.match?(provided_hash).should be_true
138
+ end
139
+
140
+ end
141
+
142
+ context "and the provided hash is empty" do
143
+
144
+ let(:provided_hash) { {} }
145
+
146
+ it "should return true" do
147
+ value_matcher_hash.match?(provided_hash).should be_true
148
+ end
149
+
150
+ end
151
+
152
+ end
153
+
154
+ end
155
+
156
+ end
@@ -0,0 +1,58 @@
1
+ describe HttpStub::Models::OmittedValueMatcher do
2
+
3
+ describe ".match?" do
4
+
5
+ context "when the stubbed value is 'control:omitted'" do
6
+
7
+ let(:stub_value) { "control:omitted" }
8
+
9
+ context "and the actual value is nil" do
10
+
11
+ let(:actual_value) { nil }
12
+
13
+ it "should return true" do
14
+ perform_match.should be_true
15
+ end
16
+
17
+ end
18
+
19
+ context "and the actual value is non-empty string" do
20
+
21
+ let(:actual_value) { "some non-empty string" }
22
+
23
+ it "should return false" do
24
+ perform_match.should be_false
25
+ end
26
+
27
+ end
28
+
29
+ context "and the actual value is an empty string" do
30
+
31
+ let(:actual_value) { "" }
32
+
33
+ it "should return false" do
34
+ perform_match.should be_false
35
+ end
36
+
37
+ end
38
+
39
+ end
40
+
41
+ context "when the stub value is not 'control:omitted'" do
42
+
43
+ let(:stub_value) { "some other stub value" }
44
+ let(:actual_value) { nil }
45
+
46
+ it "should return false" do
47
+ perform_match.should be_false
48
+ end
49
+
50
+ end
51
+
52
+ def perform_match
53
+ HttpStub::Models::OmittedValueMatcher.match?(stub_value, actual_value)
54
+ end
55
+
56
+ end
57
+
58
+ end
@@ -0,0 +1,48 @@
1
+ describe HttpStub::Models::RegexpValueMatcher do
2
+
3
+ describe ".match?" do
4
+
5
+ context "when the stub value is a string prefixed with 'regexp:'" do
6
+
7
+ let(:stub_value) { "regexp:^a[0-9]*\\$z$" }
8
+
9
+ context "and the actual value matches the regular expression" do
10
+
11
+ let(:actual_value) { "a789$z" }
12
+
13
+ it "should return true" do
14
+ perform_match.should be_true
15
+ end
16
+
17
+ end
18
+
19
+ context "and the actual value does not match the regular expression" do
20
+
21
+ let(:actual_value) { "a789" }
22
+
23
+ it "should return false" do
24
+ perform_match.should be_false
25
+ end
26
+
27
+ end
28
+
29
+ end
30
+
31
+ context "when the provided value is not a string prefixed with 'regexp'" do
32
+
33
+ let(:stub_value) { "does not start with regexp:" }
34
+ let(:actual_value) { "some actual value" }
35
+
36
+ it "should return false" do
37
+ perform_match.should be_false
38
+ end
39
+
40
+ end
41
+
42
+ def perform_match
43
+ HttpStub::Models::RegexpValueMatcher.match?(stub_value, actual_value)
44
+ end
45
+
46
+ end
47
+
48
+ end
@@ -10,7 +10,7 @@ describe HttpStub::Models::StubHeaders do
10
10
  it "should create a regexpable representation of the stubbed headers whose keys are downcased and underscored" do
11
11
  downcased_and_underscored_hash = { "another_stub_key" => "value" }
12
12
  stubbed_headers.should_receive(:downcase_and_underscore_keys).and_return(downcased_and_underscored_hash)
13
- HttpStub::Models::HashWithRegexpableValues.should_receive(:new).with(downcased_and_underscored_hash)
13
+ HttpStub::Models::HashWithValueMatchers.should_receive(:new).with(downcased_and_underscored_hash)
14
14
 
15
15
  stub_headers
16
16
  end
@@ -22,7 +22,7 @@ describe HttpStub::Models::StubHeaders do
22
22
  let(:stubbed_headers) { nil }
23
23
 
24
24
  it "should create a regexpable representation of an empty hash" do
25
- HttpStub::Models::HashWithRegexpableValues.should_receive(:new).with({})
25
+ HttpStub::Models::HashWithValueMatchers.should_receive(:new).with({})
26
26
 
27
27
  stub_headers
28
28
  end
@@ -32,10 +32,10 @@ describe HttpStub::Models::StubHeaders do
32
32
  describe "#match?" do
33
33
 
34
34
  let(:request_headers) { { "request_key" => "value" } }
35
- let(:regexpable_stubbed_headers) { double(HttpStub::Models::HashWithRegexpableValues).as_null_object }
35
+ let(:regexpable_stubbed_headers) { double(HttpStub::Models::HashWithValueMatchers).as_null_object }
36
36
 
37
37
  before(:each) do
38
- HttpStub::Models::HashWithRegexpableValues.stub(:new).and_return(regexpable_stubbed_headers)
38
+ HttpStub::Models::HashWithValueMatchers.stub(:new).and_return(regexpable_stubbed_headers)
39
39
  HttpStub::Models::RequestHeaderParser.stub(:parse).with(request).and_return(request_headers)
40
40
  end
41
41
 
@@ -4,14 +4,14 @@ describe HttpStub::Models::StubParameters do
4
4
  let(:request) { double("HttpRequest", params: request_parameters) }
5
5
 
6
6
  let(:stubbed_parameters) { { "key1" => "value1", "key2" => "value2", "key3" => "value3" } }
7
- let(:regexpable_stubbed_paremeters) { double(HttpStub::Models::HashWithRegexpableValues).as_null_object }
7
+ let(:regexpable_stubbed_paremeters) { double(HttpStub::Models::HashWithValueMatchers).as_null_object }
8
8
 
9
9
  let(:stub_parameters) { HttpStub::Models::StubParameters.new(stubbed_parameters) }
10
10
 
11
11
  describe "when stubbed parameters are provided" do
12
12
 
13
13
  it "should create a regexpable representation of the stubbed parameters" do
14
- HttpStub::Models::HashWithRegexpableValues.should_receive(:new).with(stubbed_parameters)
14
+ HttpStub::Models::HashWithValueMatchers.should_receive(:new).with(stubbed_parameters)
15
15
 
16
16
  stub_parameters
17
17
  end
@@ -23,7 +23,7 @@ describe HttpStub::Models::StubParameters do
23
23
  let(:stubbed_parameters) { nil }
24
24
 
25
25
  it "should create a regexpable representation of an empty hash" do
26
- HttpStub::Models::HashWithRegexpableValues.should_receive(:new).with({})
26
+ HttpStub::Models::HashWithValueMatchers.should_receive(:new).with({})
27
27
 
28
28
  stub_parameters
29
29
  end
@@ -33,7 +33,7 @@ describe HttpStub::Models::StubParameters do
33
33
  describe "#match?" do
34
34
 
35
35
  it "should delegate to the regexpable representation of the stubbed parameters to determine a match" do
36
- HttpStub::Models::HashWithRegexpableValues.stub(:new).and_return(regexpable_stubbed_paremeters)
36
+ HttpStub::Models::HashWithValueMatchers.stub(:new).and_return(regexpable_stubbed_paremeters)
37
37
  regexpable_stubbed_paremeters.should_receive(:match?).with(request_parameters).and_return(true)
38
38
 
39
39
  stub_parameters.match?(request).should be(true)
@@ -2,15 +2,15 @@ describe HttpStub::Models::StubUri do
2
2
 
3
3
  let(:stubbed_uri) { "/some/uri" }
4
4
  let(:request) { double("HttpRequest", path_info: request_uri) }
5
- let(:regexpable_value) { double(HttpStub::Models::RegexpableValue).as_null_object }
5
+ let(:value_matcher) { double(HttpStub::Models::ValueMatcher).as_null_object }
6
6
  let(:stub_uri) { HttpStub::Models::StubUri.new(stubbed_uri) }
7
7
 
8
- before(:each) { HttpStub::Models::RegexpableValue.stub(:new).and_return(regexpable_value) }
8
+ before(:each) { HttpStub::Models::ValueMatcher.stub(:new).and_return(value_matcher) }
9
9
 
10
10
  describe "constructor" do
11
11
 
12
- it "should create a regexpable representation of the provided uri" do
13
- HttpStub::Models::RegexpableValue.should_receive(:new).with(stubbed_uri)
12
+ it "should create a value matcher for the provided uri" do
13
+ HttpStub::Models::ValueMatcher.should_receive(:new).with(stubbed_uri)
14
14
 
15
15
  stub_uri
16
16
  end
@@ -21,8 +21,8 @@ describe HttpStub::Models::StubUri do
21
21
 
22
22
  let(:request_uri) { "/some/uri" }
23
23
 
24
- it "should delegate to the regexpable representation of the provided uri" do
25
- regexpable_value.should_receive(:match?).with(request_uri).and_return(true)
24
+ it "should delegate to the value matcher representation of the provided uri" do
25
+ value_matcher.should_receive(:match?).with(request_uri).and_return(true)
26
26
 
27
27
  stub_uri.match?(request).should be_true
28
28
  end
@@ -31,10 +31,10 @@ describe HttpStub::Models::StubUri do
31
31
 
32
32
  describe "#to_s" do
33
33
 
34
- it "should delegate to the regexpable representation of the provided uri" do
35
- regexpable_value.should_receive(:to_s).and_return("some regexpable value string")
34
+ it "should delegate to the value matcher representation of the provided uri" do
35
+ value_matcher.should_receive(:to_s).and_return("some value matcher string")
36
36
 
37
- stub_uri.to_s.should eql("some regexpable value string")
37
+ stub_uri.to_s.should eql("some value matcher string")
38
38
  end
39
39
 
40
40
  end
@@ -0,0 +1,81 @@
1
+ describe HttpStub::Models::ValueMatcher do
2
+
3
+ let(:stub_value) { "some stub value" }
4
+
5
+ let(:value_matcher) { HttpStub::Models::ValueMatcher.new(stub_value) }
6
+
7
+ describe "#match?" do
8
+
9
+ let(:actual_value) { "some actual value" }
10
+
11
+ it "should determine if actual value should be omitted" do
12
+ HttpStub::Models::OmittedValueMatcher.should_receive(:match?).with(stub_value, actual_value)
13
+
14
+ perform_match
15
+ end
16
+
17
+ it "should determine if the actual value matches a regular expression" do
18
+ HttpStub::Models::RegexpValueMatcher.should_receive(:match?).with(stub_value, actual_value)
19
+
20
+ perform_match
21
+ end
22
+
23
+ it "should determine if the actual value exactly matches the stub value" do
24
+ HttpStub::Models::ExactValueMatcher.should_receive(:match?).with(stub_value, actual_value)
25
+
26
+ perform_match
27
+ end
28
+
29
+ context "when an omitted match occurs" do
30
+
31
+ before(:each) { HttpStub::Models::OmittedValueMatcher.should_receive(:match?).and_return(true) }
32
+
33
+ it "should return true" do
34
+ perform_match.should be_true
35
+ end
36
+
37
+ end
38
+
39
+ context "when a regular expression match occurs" do
40
+
41
+ before(:each) { HttpStub::Models::RegexpValueMatcher.should_receive(:match?).and_return(true) }
42
+
43
+ it "should return true" do
44
+ perform_match.should be_true
45
+ end
46
+
47
+ end
48
+
49
+ context "when an exact match occurs" do
50
+
51
+ before(:each) { HttpStub::Models::ExactValueMatcher.should_receive(:match?).and_return(true) }
52
+
53
+ it "should return true" do
54
+ perform_match.should be_true
55
+ end
56
+
57
+ end
58
+
59
+ context "when no match occurs" do
60
+
61
+ it "should return false" do
62
+ perform_match.should be_false
63
+ end
64
+
65
+ end
66
+
67
+ def perform_match
68
+ value_matcher.match?(actual_value)
69
+ end
70
+
71
+ end
72
+
73
+ describe "#to_s" do
74
+
75
+ it "should return the stub value provided" do
76
+ value_matcher.to_s.should eql(stub_value)
77
+ end
78
+
79
+ end
80
+
81
+ end
@@ -4,21 +4,47 @@ describe HttpStub::Server, "when the server is running" do
4
4
 
5
5
  let(:configurer) { HttpStub::Examples::ConfigurerWithManyActivators.new }
6
6
 
7
+ describe "POST #stubs" do
8
+
9
+ context "when provided with the minimum data required" do
10
+
11
+ before(:each) do
12
+ @response = HTTParty.post(
13
+ "#{server_uri}/stubs",
14
+ body: { uri: "/some/path", method: "get", response: { status: 200, body: "Some body" } }.to_json
15
+ )
16
+ end
17
+
18
+ it "should return a 200 response code" do
19
+ @response.code.should eql(200)
20
+ end
21
+
22
+ it "should register a stub returning the provided response for a matching request" do
23
+ stubbed_response = HTTParty.get("#{server_uri}/some/path")
24
+
25
+ stubbed_response.code.should eql(200)
26
+ stubbed_response.body.should eql("Some body")
27
+ end
28
+
29
+ end
30
+
31
+ end
32
+
7
33
  describe "and a configurer with multiple stub activators is initialized" do
8
34
 
9
35
  before(:all) do
10
- HttpStub::Examples::ConfigurerWithManyActivators.host server_host
11
- HttpStub::Examples::ConfigurerWithManyActivators.port server_port
36
+ HttpStub::Examples::ConfigurerWithManyActivators.host(server_host)
37
+ HttpStub::Examples::ConfigurerWithManyActivators.port(server_port)
12
38
  HttpStub::Examples::ConfigurerWithManyActivators.initialize!
13
39
  end
14
40
 
15
41
  describe "GET #stubs/activators" do
16
42
 
17
- let(:response) { Net::HTTP.get_response(server_host, "/stubs/activators", server_port) }
43
+ let(:response) { HTTParty.get("#{server_uri}/stubs/activators") }
18
44
  let(:response_document) { Nokogiri::HTML(response.body) }
19
45
 
20
46
  it "should return a 200 response code" do
21
- response.code.should eql("200")
47
+ response.code.should eql(200)
22
48
  end
23
49
 
24
50
  it "should return response whose body contains a link to each activator in alphabetical order" do
@@ -56,14 +82,14 @@ describe HttpStub::Server, "when the server is running" do
56
82
  describe "when multiple stubs are configured" do
57
83
 
58
84
  before(:all) do
59
- (1..3).each { |i| Net::HTTP.get_response(server_host, "/activator#{i}", server_port) }
85
+ (1..3).each { |i| HTTParty.get("#{server_uri}/activator#{i}") }
60
86
  end
61
87
 
62
- let(:response) { Net::HTTP.get_response(server_host, "/stubs", server_port) }
88
+ let(:response) { HTTParty.get("#{server_uri}/stubs") }
63
89
  let(:response_document) { Nokogiri::HTML(response.body) }
64
90
 
65
91
  it "should return a 200 response code" do
66
- response.code.should eql("200")
92
+ response.code.should eql(200)
67
93
  end
68
94
 
69
95
  it "should return a response whose body contains the uri of each stub" do
@@ -37,12 +37,8 @@ describe HttpStub::Server do
37
37
 
38
38
  def issue_stub_request
39
39
  post "/stubs", {
40
- "uri" => "/a_path",
41
- "method" => "a method",
42
- "response" => {
43
- "status" => 200,
44
- "body" => "Foo"
45
- }
40
+ uri: "/a_path", method: "a method",
41
+ response: { status: 200, body: "Foo" }
46
42
  }.to_json
47
43
  end
48
44
 
@@ -57,7 +53,9 @@ describe HttpStub::Server do
57
53
  end
58
54
 
59
55
  it "should respond with the response provided by the controller" do
60
- stub_activator_controller.stub(:register).and_return(HttpStub::Models::Response.new("status" => 302, "body" => ""))
56
+ stub_activator_controller.stub(:register).and_return(
57
+ HttpStub::Models::Response.new("status" => 302, "body" => "")
58
+ )
61
59
 
62
60
  issue_stub_activator_request
63
61
 
@@ -66,13 +64,8 @@ describe HttpStub::Server do
66
64
 
67
65
  def issue_stub_activator_request
68
66
  post "/stubs/activators", {
69
- "activation_uri" => "/an_activation_path",
70
- "uri" => "/a_path",
71
- "method" => "a method",
72
- "response" => {
73
- "status" => 200,
74
- "body" => "Foo"
75
- }
67
+ activation_uri: "/an_activation_path", uri: "/a_path", method: "a method",
68
+ response: { status: 200, body: "Foo" }
76
69
  }.to_json
77
70
  end
78
71
 
@@ -141,7 +134,9 @@ describe HttpStub::Server do
141
134
  context "but the stub activator controller activates a stub" do
142
135
 
143
136
  before(:each) do
144
- stub_activator_controller.stub(:activate).and_return(HttpStub::Models::Response.new("status" => 300, "body" => "A body"))
137
+ stub_activator_controller.stub(:activate).and_return(
138
+ HttpStub::Models::Response.new("status" => 300, "body" => "A body")
139
+ )
145
140
  end
146
141
 
147
142
  it "should respond with the activation response status code" do
@@ -185,7 +180,9 @@ describe HttpStub::Server do
185
180
  end
186
181
 
187
182
  it "should respond with the response's content type" do
188
- stub_controller.stub(:replay).and_return(HttpStub::Models::Response.new("status" => 200, "body" => "A body", "content_type" => "application/xhtml"))
183
+ stub_controller.stub(:replay).and_return(
184
+ HttpStub::Models::Response.new("status" => 200, "body" => "A body", "content_type" => "application/xhtml")
185
+ )
189
186
  get "/some/stubbed/uri"
190
187
  response.content_type.should eql("application/xhtml")
191
188
  end
data/spec/spec_helper.rb CHANGED
@@ -2,7 +2,7 @@ require 'simplecov'
2
2
  SimpleCov.start do
3
3
  add_filter "/spec/"
4
4
  add_filter "/vendor/"
5
- minimum_coverage 98.1
5
+ minimum_coverage 98.3
6
6
  refuse_coverage_drop
7
7
  end if ENV["coverage"]
8
8