rspec-webservice_matchers 4.10.0 → 4.13

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.
@@ -31,7 +31,7 @@ describe 'be_status' do
31
31
  }.to fail_matching(/404/)
32
32
  end
33
33
 
34
- it 'succeeds even if the site times out on the first try' do
34
+ xit 'succeeds even if the site times out on the first try' do
35
35
  expect('http://www.timeout-once.com').to be_status 200
36
36
  end
37
37
 
@@ -61,11 +61,7 @@ describe 'be_up' do
61
61
  }.to fail_matching(/^received status 404$/i)
62
62
  end
63
63
 
64
- it 'succeeds even if the site times out on the first try' do
64
+ xit 'succeeds even if the site times out on the first try' do
65
65
  expect('http://www.timeout-once.com').to be_up
66
66
  end
67
-
68
- it 'works on cars.com' do
69
- expect('http://cars.com').to be_up
70
- end
71
67
  end
@@ -10,7 +10,7 @@ describe '#up?' do
10
10
  expect(WebTest::Util.up?('temp-redirector.org')).to be_truthy
11
11
  end
12
12
 
13
- it 'retries timeout errors once' do
13
+ xit 'retries timeout errors once' do
14
14
  expect(WebTest::Util.up?('http://www.timeout-once.com')).to be_truthy
15
15
  end
16
16
  end
@@ -1,4 +1,5 @@
1
1
  # frozen_string_literal: true
2
+
2
3
  require 'spec_helper'
3
4
  require 'rspec/webservice_matchers'
4
5
 
@@ -16,27 +17,27 @@ describe 'redirect_permanently_to' do
16
17
  end
17
18
 
18
19
  it 'gives a good error message for the wrong redirect type' do
19
- expect {
20
+ expect do
20
21
  expect('temp-redirector.org').to redirect_permanently_to 'http://a-page.com/a/page.txt'
21
- }.to fail_matching(/temporary/i)
22
+ end.to fail_matching(/temporary/i)
22
23
  end
23
24
 
24
25
  it 'gives a good error message for a redirect to the wrong location' do
25
- expect {
26
+ expect do
26
27
  expect('perm-redirector.com').to redirect_permanently_to 'http://the-wrong-site.com/'
27
- }.to fail_matching(/location/i)
28
+ end.to fail_matching(/location/i)
28
29
  end
29
30
 
30
31
  it 'gives a good error message for a non-redirect status' do
31
- expect {
32
+ expect do
32
33
  expect('notfound.com').to redirect_permanently_to 'http://the-wrong-site.com/'
33
- }.to fail_matching(/^not a redirect: received status 404$/i)
34
+ end.to fail_matching(/^not a redirect: received status 404$/i)
34
35
  end
35
36
 
36
37
  it 'gives a good error message when the hostname is bad' do
37
- expect {
38
- expect('asdhfjadhsfksd.com').to redirect_permanently_to 'http://the-wrong-site.com/'
39
- }.to fail_matching(/not known/i)
38
+ expect do
39
+ expect('not-a-domain.com').to redirect_permanently_to 'http://the-wrong-site.com/'
40
+ end.to fail_matching(/not known/i)
40
41
  end
41
42
  end
42
43
 
@@ -54,26 +55,26 @@ describe 'redirect_temporarily_to' do
54
55
  end
55
56
 
56
57
  it 'gives a good error message for the wrong redirect type' do
57
- expect {
58
+ expect do
58
59
  expect('perm-redirector.com').to redirect_temporarily_to 'www.website.com/'
59
- }.to fail_matching(/permanent/i)
60
+ end.to fail_matching(/permanent/i)
60
61
  end
61
62
 
62
63
  it 'gives a good error message for a redirect to the wrong location' do
63
- expect {
64
+ expect do
64
65
  expect('temp-307-redirector.net').to redirect_temporarily_to 'www.nowhere.com'
65
- }.to fail_matching(/location/i)
66
+ end.to fail_matching(/location/i)
66
67
  end
67
68
 
68
69
  it 'gives a good error message for a non-redirect status' do
69
- expect {
70
+ expect do
70
71
  expect('notfound.com').to redirect_temporarily_to 'www.nowhere.com'
71
- }.to fail_matching(/^not a redirect: received status 404$/i)
72
+ end.to fail_matching(/^not a redirect: received status 404$/i)
72
73
  end
73
74
 
74
75
  it 'gives a good error message when the hostname is bad' do
75
- expect {
76
- expect('234678234687234.com').to redirect_temporarily_to 'www.nowhere.com'
77
- }.to fail_matching(/not known/i)
76
+ expect do
77
+ expect('not-a-domain.com').to redirect_temporarily_to 'www.nowhere.com'
78
+ end.to fail_matching(/not known/i)
78
79
  end
79
80
  end
@@ -1,62 +1,87 @@
1
1
  # frozen_string_literal: true
2
+
2
3
  require 'spec_helper'
3
4
  require 'rspec/webservice_matchers'
4
5
 
5
- describe 'have_a_valid_cert matcher' do
6
- it 'passes when SSL is properly configured' do
7
- # EFF created the HTTPS Everywhere movement
8
- # TODO: set up a test server for this. (?)
9
- expect('www.eff.org').to have_a_valid_cert
10
- end
6
+ describe 'SSL tests' do
7
+ before(:each) { WebMock.allow_net_connect! }
8
+ after(:each) { WebMock.disable_net_connect! }
11
9
 
12
- it 'fails if the server is not serving SSL at all' do
13
- expect {
14
- expect('www.psu.edu').to have_a_valid_cert
15
- }.to fail_matching(/443/)
16
- end
10
+ describe 'have_a_valid_cert matcher' do
11
+ it 'passes when SSL is properly configured' do
12
+ # EFF created the HTTPS Everywhere movement
13
+ # TODO: set up a test server for this. (?)
14
+ expect('www.eff.org').to have_a_valid_cert
15
+ end
17
16
 
18
- it 'provides a relevant error message' do
19
- expect {
20
- expect('www.psu.edu').to have_a_valid_cert
21
- }.to fail_matching(/(unreachable)|(no route to host)|(connection refused)/i)
22
- end
17
+ it 'fails if the server is not serving SSL at all' do
18
+ expect do
19
+ expect('neverssl.com').to have_a_valid_cert
20
+ end.to fail_matching(/Unable to verify/)
21
+ end
23
22
 
24
- it "provides a relevant error message when the domain name doesn't exist" do
25
- expect {
26
- expect('sdfgkljhsdfghjkhsdfgj.edu').to have_a_valid_cert
27
- }.to fail_matching(/not known/i)
28
- end
23
+ it 'provides a relevant error message' do
24
+ expect do
25
+ expect('neverssl.com').to have_a_valid_cert
26
+ end.to fail_matching(/(unreachable)|(no route to host)|(connection refused)|(redirect was detected)/i)
27
+ end
29
28
 
30
- it "provides a good error message when it's a redirect" do
31
- expect {
32
- # Can't figure out how to do this with WebMock.
33
- expect('bloc.io').to have_a_valid_cert
34
- }.to fail_matching(/redirect/i)
35
- end
29
+ xit "provides a relevant error message when the domain name doesn't exist" do
30
+ expect do
31
+ expect('sdfgkljhsdfghjkhsdfgj.edu').to have_a_valid_cert
32
+ end.to fail_matching(/not known/i)
33
+ end
36
34
 
37
- # TODO: Find a good way to test this.
38
- # it 'provides a good error message if the request times out' do
39
- # expect {
40
- # expect('www.myapp.com').to have_a_valid_cert
41
- # }.to fail_matching(/(timeout)|(execution expired)/)
42
- # end
43
- end
35
+ xit "provides a good error message when it's a redirect" do
36
+ expect do
37
+ # Can't figure out how to do this with WebMock.
38
+ expect('bloc.io').to have_a_valid_cert
39
+ end.to fail_matching(/redirect/i)
40
+ end
44
41
 
45
- # See https://www.eff.org/https-everywhere
46
- describe 'enforce_https_everywhere' do
47
- it 'passes when http requests are redirected to valid https urls' do
48
- expect('eff.org').to enforce_https_everywhere
42
+ # TODO: Find a good way to test this.
43
+ xit 'provides a good error message if the request times out' do
44
+ expect {
45
+ expect('www.myapp.com').to have_a_valid_cert
46
+ }.to fail_matching(/(timeout)|(execution expired)/)
47
+ end
49
48
  end
50
49
 
51
- it 'provides a relevant error message' do
52
- expect {
53
- expect('www.psu.edu').to enforce_https_everywhere
54
- }.to fail_matching(/200/)
55
- end
50
+ # See https://www.eff.org/https-everywhere
51
+ describe 'enforce_https_everywhere' do
52
+ it 'passes when http requests are redirected to valid https urls' do
53
+ expect('www.eff.org').to enforce_https_everywhere
54
+ end
55
+
56
+ it 'passes when given an https url' do
57
+ expect('https://www.eff.org').to enforce_https_everywhere
58
+ end
59
+
60
+ it 'passes when given an http url' do
61
+ expect('http://www.eff.org').to enforce_https_everywhere
62
+ end
63
+
64
+ it 'provides a relevant error code' do
65
+ expect do
66
+ expect('neverssl.com').to enforce_https_everywhere
67
+ end.to fail_matching(/200/)
68
+ end
69
+
70
+ it 'provides a relevant error code with https url' do
71
+ expect do
72
+ expect('https://neverssl.com').to enforce_https_everywhere
73
+ end.to fail_matching(/200/)
74
+ end
56
75
 
57
- it "provides a relevant error message when the domain name doesn't exist" do
58
- expect {
59
- expect('asdhfjkalsdhfjklasdfhjkasdhfl.com').to enforce_https_everywhere
60
- }.to fail_matching(/connection failed/i)
76
+ it 'provides a relevant error code with http url' do
77
+ expect do
78
+ expect('http://neverssl.com').to enforce_https_everywhere
79
+ end.to fail_matching(/200/)
80
+ end
81
+ # it "provides a relevant error message when the domain name doesn't exist" do
82
+ # expect do
83
+ # expect('asdhfjkalsdhfjklasdfhjkasdhfl.com').to enforce_https_everywhere
84
+ # end.to fail_matching(/connection failed/i)
85
+ # end
61
86
  end
62
87
  end
data/spec/spec_helper.rb CHANGED
@@ -1,56 +1,5 @@
1
1
  # frozen_string_literal: true
2
- require 'webmock/rspec'
2
+ require 'web_mock_config'
3
+ require 'failure_matchers'
3
4
 
4
- RSpec.configure do |config|
5
- config.before(:each) do
6
- WebMock.stub_request :any, 'http://a-page.com/a/page.txt'
7
- WebMock.stub_request :any, 'www.website.com'
8
- WebMock.stub_request(:any, /notfound.com/).to_return(status: 404)
9
- WebMock.stub_request(:any, 'outoforder.com').to_return(status: 503)
10
-
11
- # A host which doesn't support HEAD
12
- WebMock.stub_request(:head, 'appengine.com').to_return(status: 405)
13
- WebMock.stub_request(:get, 'appengine.com').to_return(status: 200)
14
-
15
- WebMock.stub_request(:any, 'perm-redirector.com')
16
- .to_return(status: 301, headers: { Location: 'http://www.website.com/' })
17
-
18
- WebMock.stub_request(:any, 'temp-redirector.org')
19
- .to_return(status: 302, headers: { Location: 'http://a-page.com/a/page.txt' })
20
-
21
- WebMock.stub_request(:any, 'temp-307-redirector.net')
22
- .to_return(status: 307, headers: { Location: 'http://a-page.com/a/page.txt' })
23
-
24
- # Timeout scenarios
25
- WebMock.stub_request(:any, 'www.timeout.com').to_timeout
26
- WebMock.stub_request(:any, 'www.timeout-once.com').to_timeout.then.to_return(body: 'abc')
27
-
28
- # Insights API
29
- key = ENV['WEBSERVICE_MATCHER_INSIGHTS_KEY']
30
- WebMock.stub_request(:get, "https://www.googleapis.com/pagespeedonline/v2/runPagespeed?key=#{key}&screenshot=false&url=http://nonstop.qa")
31
- .with(headers: { 'Accept' => '*/*', 'Accept-Encoding' => 'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'User-Agent' => 'Faraday v0.9.2' })
32
- .to_return(
33
- status: 200,
34
- body: IO.read('spec/fixtures/pagespeed.json'),
35
- headers: {})
36
-
37
- WebMock.allow_net_connect!
38
- end
39
- end
40
-
41
- module RSpec
42
- # Matchers to help test RSpec matchers
43
- module Matchers
44
- def fail
45
- raise_error(RSpec::Expectations::ExpectationNotMetError)
46
- end
47
-
48
- def fail_with(message)
49
- raise_error(RSpec::Expectations::ExpectationNotMetError, message)
50
- end
51
-
52
- def fail_matching(regex)
53
- raise_error(RSpec::Expectations::ExpectationNotMetError, regex)
54
- end
55
- end
56
- end
5
+ SAMPLE_PAGESPEED_JSON_RESPONSE = 'spec/fixtures/pagespeed.json'
@@ -0,0 +1,54 @@
1
+ # frozen_string_literal: true
2
+ require 'faraday'
3
+ require 'webmock/rspec'
4
+
5
+ RSpec.configure do |config|
6
+ config.before(:each) do
7
+ # HOSTS WHICH RETURN ERRORS
8
+ WebMock.stub_request(:any, /notfound.com/).to_return(status: 404)
9
+ WebMock.stub_request(:any, 'outoforder.com').to_return(status: 503)
10
+ WebMock.stub_request(:any, 'not-a-domain.com')
11
+ .to_raise(Faraday::ConnectionFailed.new('Failed to open TCP ' \
12
+ 'connection to asdhfjkahsdfadfd.com:80 ' \
13
+ '(getaddrinfo: nodename nor servname provided, ' \
14
+ 'or not known)'))
15
+
16
+ # FUNCTIONING WEB PAGES
17
+ WebMock.stub_request :any, 'http://a-page.com/a/page.txt'
18
+ WebMock.stub_request :any, 'www.website.com'
19
+
20
+ # A HOST WHICH DOESN'T SUPPORT HEAD
21
+ WebMock.stub_request(:head, 'appengine.com').to_return(status: 405)
22
+ WebMock.stub_request(:get, 'appengine.com').to_return(status: 200)
23
+
24
+ # FUNCTIONING REDIRECTS
25
+ WebMock.stub_request(:head, 'perm-redirector.com')
26
+ .to_return(status: 301,
27
+ body: '',
28
+ headers: { Location: 'http://www.website.com/' })
29
+
30
+ WebMock.stub_request(:any, 'temp-redirector.org')
31
+ .to_return(status: 302,
32
+ headers: { Location: 'http://a-page.com/a/page.txt' })
33
+
34
+ WebMock.stub_request(:any, 'temp-307-redirector.net')
35
+ .to_return(status: 307,
36
+ headers: { Location: 'http://a-page.com/a/page.txt' })
37
+
38
+ # TIMEOUT SCENARIOS
39
+ WebMock.stub_request(:any, 'www.timeout.com').to_timeout
40
+ WebMock.stub_request(:any, 'www.timeout-once.com').to_timeout
41
+ .then.to_return(body: 'abc')
42
+
43
+ # PageSpeed Insights API
44
+ key = ENV['WEBSERVICE_MATCHER_INSIGHTS_KEY']
45
+ WebMock.stub_request(:get,
46
+ 'https://www.googleapis.com/pagespeedonline/v5/' \
47
+ "runPagespeed?key=#{key}&screenshot=false" \
48
+ '&url=https://constant.qa')
49
+ .to_return(
50
+ status: 200,
51
+ body: IO.read('spec/fixtures/pagespeed.json'),
52
+ headers: {})
53
+ end
54
+ end
@@ -1,4 +1,5 @@
1
1
  # frozen_string_literal: true
2
+ require 'spec_helper'
2
3
  require 'web_test/be_fast'
3
4
 
4
5
  RSpec.describe WebTest::BeFast do
@@ -6,7 +7,7 @@ RSpec.describe WebTest::BeFast do
6
7
 
7
8
  describe '#test' do
8
9
  it 'handles a fast site' do
9
- result = WebTest::BeFast.test url: 'http://nonstop.qa'
10
+ result = WebTest::BeFast.test url: 'https://constant.qa'
10
11
  expect(result.success?).to be true
11
12
  expect(result.score).to be >= 85
12
13
  end
@@ -14,9 +15,9 @@ RSpec.describe WebTest::BeFast do
14
15
 
15
16
  describe '#parse' do
16
17
  it 'can parse the overall score' do
17
- api_response = File.read(SAMPLE_JSON_RESPONSE)
18
+ api_response = File.read(SAMPLE_PAGESPEED_JSON_RESPONSE)
18
19
  data = WebTest::BeFast.parse json: api_response
19
- expect(data[:score]).to eq 85
20
+ expect(data[:score]).to eq 91
20
21
  end
21
22
  end
22
23
 
@@ -32,5 +33,14 @@ RSpec.describe WebTest::BeFast do
32
33
  WebTest::BeFast::TestResult.new { |r| r.success = true }
33
34
  end.to raise_error(ArgumentError, /score/i)
34
35
  end
36
+
37
+ it 'requires :response' do
38
+ expect do
39
+ WebTest::BeFast::TestResult.new { |r|
40
+ r.success = true
41
+ r.score = 90
42
+ }
43
+ end.to raise_error(ArgumentError, /response/i)
44
+ end
35
45
  end
36
46
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rspec-webservice_matchers
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.10.0
4
+ version: '4.13'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Robb Shecter
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-03-31 00:00:00.000000000 Z
11
+ date: 2021-03-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.3'
19
+ version: '2.0'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.3'
26
+ version: '2.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: pry
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -95,82 +95,83 @@ dependencies:
95
95
  - !ruby/object:Gem::Version
96
96
  version: '0'
97
97
  - !ruby/object:Gem::Dependency
98
- name: rspec-core
98
+ name: faraday
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - "~>"
101
+ - - ">="
102
102
  - !ruby/object:Gem::Version
103
- version: '3.0'
103
+ version: '0'
104
104
  type: :runtime
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - "~>"
108
+ - - ">="
109
109
  - !ruby/object:Gem::Version
110
- version: '3.0'
110
+ version: '0'
111
111
  - !ruby/object:Gem::Dependency
112
- name: rspec-expectations
112
+ name: faraday_middleware
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
- - - "~>"
115
+ - - ">="
116
116
  - !ruby/object:Gem::Version
117
- version: '3.0'
117
+ version: '0'
118
118
  type: :runtime
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
- - - "~>"
122
+ - - ">="
123
123
  - !ruby/object:Gem::Version
124
- version: '3.0'
124
+ version: '0'
125
125
  - !ruby/object:Gem::Dependency
126
- name: faraday
126
+ name: rspec-core
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
- - - ">="
129
+ - - "~>"
130
130
  - !ruby/object:Gem::Version
131
- version: '0'
131
+ version: '3.0'
132
132
  type: :runtime
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
- - - ">="
136
+ - - "~>"
137
137
  - !ruby/object:Gem::Version
138
- version: '0'
138
+ version: '3.0'
139
139
  - !ruby/object:Gem::Dependency
140
- name: faraday_middleware
140
+ name: rspec-expectations
141
141
  requirement: !ruby/object:Gem::Requirement
142
142
  requirements:
143
- - - ">="
143
+ - - "~>"
144
144
  - !ruby/object:Gem::Version
145
- version: '0'
145
+ version: '3.0'
146
146
  type: :runtime
147
147
  prerelease: false
148
148
  version_requirements: !ruby/object:Gem::Requirement
149
149
  requirements:
150
- - - ">="
150
+ - - "~>"
151
151
  - !ruby/object:Gem::Version
152
- version: '0'
152
+ version: '3.0'
153
153
  - !ruby/object:Gem::Dependency
154
154
  name: validated_object
155
155
  requirement: !ruby/object:Gem::Requirement
156
156
  requirements:
157
- - - ">="
157
+ - - "~>"
158
158
  - !ruby/object:Gem::Version
159
- version: '0'
159
+ version: 1.1.0
160
160
  type: :runtime
161
161
  prerelease: false
162
162
  version_requirements: !ruby/object:Gem::Requirement
163
163
  requirements:
164
- - - ">="
164
+ - - "~>"
165
165
  - !ruby/object:Gem::Version
166
- version: '0'
166
+ version: 1.1.0
167
167
  description: Black-box web app configuration testing
168
168
  email:
169
- - robb@weblaws.org
169
+ - robb@public.law
170
170
  executables: []
171
171
  extensions: []
172
172
  extra_rdoc_files: []
173
173
  files:
174
+ - ".github/workflows/ruby.yml"
174
175
  - ".gitignore"
175
176
  - Gemfile
176
177
  - HISTORY.md
@@ -192,13 +193,14 @@ files:
192
193
  - lib/web_test/be_up.rb
193
194
  - lib/web_test/util.rb
194
195
  - rspec-webservice_matchers.gemspec
196
+ - spec/failure_matchers.rb
195
197
  - spec/fixtures/pagespeed.json
196
- - spec/rspec/webservice_matchers/page_speed_spec.rb
197
198
  - spec/rspec/webservice_matchers/protocol_spec.rb
198
199
  - spec/rspec/webservice_matchers/public_api_spec.rb
199
200
  - spec/rspec/webservice_matchers/redirect_spec.rb
200
201
  - spec/rspec/webservice_matchers/ssl_spec.rb
201
202
  - spec/spec_helper.rb
203
+ - spec/web_mock_config.rb
202
204
  - spec/web_test/be_fast_spec.rb
203
205
  - spec/web_test/be_up_spec.rb
204
206
  - spec/web_test/util_spec.rb
@@ -206,7 +208,7 @@ homepage: https://github.com/dogweather/rspec-webservice_matchers
206
208
  licenses:
207
209
  - MIT
208
210
  metadata: {}
209
- post_install_message:
211
+ post_install_message:
210
212
  rdoc_options: []
211
213
  require_paths:
212
214
  - lib
@@ -214,26 +216,26 @@ required_ruby_version: !ruby/object:Gem::Requirement
214
216
  requirements:
215
217
  - - ">="
216
218
  - !ruby/object:Gem::Version
217
- version: 2.1.0
219
+ version: 2.4.0
218
220
  required_rubygems_version: !ruby/object:Gem::Requirement
219
221
  requirements:
220
222
  - - ">="
221
223
  - !ruby/object:Gem::Version
222
224
  version: '0'
223
225
  requirements: []
224
- rubyforge_project:
225
- rubygems_version: 2.5.1
226
- signing_key:
226
+ rubygems_version: 3.2.9
227
+ signing_key:
227
228
  specification_version: 4
228
229
  summary: Black-box web app configuration testing
229
230
  test_files:
231
+ - spec/failure_matchers.rb
230
232
  - spec/fixtures/pagespeed.json
231
- - spec/rspec/webservice_matchers/page_speed_spec.rb
232
233
  - spec/rspec/webservice_matchers/protocol_spec.rb
233
234
  - spec/rspec/webservice_matchers/public_api_spec.rb
234
235
  - spec/rspec/webservice_matchers/redirect_spec.rb
235
236
  - spec/rspec/webservice_matchers/ssl_spec.rb
236
237
  - spec/spec_helper.rb
238
+ - spec/web_mock_config.rb
237
239
  - spec/web_test/be_fast_spec.rb
238
240
  - spec/web_test/be_up_spec.rb
239
241
  - spec/web_test/util_spec.rb