webspicy 0.16.1 → 0.19.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (110) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +11 -5
  3. data/bin/webspicy +6 -1
  4. data/doc/1-black-box-scene.md +109 -0
  5. data/doc/2-black-box-testing.md +27 -0
  6. data/doc/3-specification-importance.md +41 -0
  7. data/doc/4-sequence-diagram.md +82 -0
  8. data/lib/webspicy.rb +15 -4
  9. data/lib/webspicy/configuration.rb +57 -8
  10. data/lib/webspicy/configuration/scope.rb +22 -16
  11. data/lib/webspicy/formaldoc.fio +3 -1
  12. data/lib/webspicy/specification.rb +12 -10
  13. data/lib/webspicy/specification/condition.rb +23 -0
  14. data/lib/webspicy/specification/errcondition.rb +17 -0
  15. data/lib/webspicy/specification/postcondition.rb +1 -0
  16. data/lib/webspicy/specification/precondition.rb +1 -0
  17. data/lib/webspicy/specification/precondition/robust_to_invalid_input.rb +1 -1
  18. data/lib/webspicy/specification/service.rb +38 -25
  19. data/lib/webspicy/specification/test_case.rb +10 -17
  20. data/lib/webspicy/support.rb +22 -0
  21. data/lib/webspicy/support/data_object.rb +25 -0
  22. data/lib/webspicy/support/hooks.rb +65 -0
  23. data/lib/webspicy/support/world.rb +47 -0
  24. data/lib/webspicy/tester.rb +120 -61
  25. data/lib/webspicy/tester/asserter.rb +9 -4
  26. data/lib/webspicy/tester/assertions.rb +8 -9
  27. data/lib/webspicy/tester/client.rb +22 -42
  28. data/lib/webspicy/tester/failure.rb +6 -0
  29. data/lib/webspicy/tester/file_checker.rb +22 -0
  30. data/lib/webspicy/tester/invocation.rb +15 -196
  31. data/lib/webspicy/tester/reporter.rb +85 -0
  32. data/lib/webspicy/tester/reporter/composite.rb +38 -0
  33. data/lib/webspicy/tester/reporter/documentation.rb +67 -0
  34. data/lib/webspicy/tester/reporter/error_count.rb +25 -0
  35. data/lib/webspicy/tester/reporter/exceptions.rb +60 -0
  36. data/lib/webspicy/tester/reporter/file_progress.rb +22 -0
  37. data/lib/webspicy/tester/reporter/file_summary.rb +42 -0
  38. data/lib/webspicy/tester/reporter/progress.rb +28 -0
  39. data/lib/webspicy/tester/reporter/summary.rb +62 -0
  40. data/lib/webspicy/tester/result.rb +139 -0
  41. data/lib/webspicy/tester/result/assert_met.rb +29 -0
  42. data/lib/webspicy/tester/result/check.rb +33 -0
  43. data/lib/webspicy/tester/result/errcondition_met.rb +29 -0
  44. data/lib/webspicy/tester/result/error_schema_met.rb +24 -0
  45. data/lib/webspicy/tester/result/output_schema_met.rb +24 -0
  46. data/lib/webspicy/tester/result/postcondition_met.rb +29 -0
  47. data/lib/webspicy/tester/result/response_header_met.rb +43 -0
  48. data/lib/webspicy/tester/result/response_status_met.rb +25 -0
  49. data/lib/webspicy/version.rb +2 -2
  50. data/lib/webspicy/web.rb +4 -0
  51. data/lib/webspicy/web/client.rb +15 -0
  52. data/lib/webspicy/{tester → web}/client/http_client.rb +34 -14
  53. data/lib/webspicy/{tester → web}/client/rack_test_client.rb +3 -3
  54. data/lib/webspicy/{tester → web}/client/support.rb +2 -2
  55. data/lib/webspicy/web/invocation.rb +65 -0
  56. data/lib/webspicy/web/mocker.rb +90 -0
  57. data/lib/webspicy/web/mocker/config.ru +6 -0
  58. data/lib/webspicy/{openapi.rb → web/openapi.rb} +0 -0
  59. data/lib/webspicy/web/openapi/generator.rb +129 -0
  60. data/spec/unit/configuration/scope/test_each_service.rb +2 -2
  61. data/spec/unit/configuration/scope/test_each_specification.rb +7 -7
  62. data/spec/unit/specification/test_condition.rb +26 -0
  63. data/spec/unit/support/hooks/test_fire_after_each.rb +53 -0
  64. data/spec/unit/{tester/client/test_around.rb → support/hooks/test_fire_around.rb} +15 -10
  65. data/spec/unit/support/hooks/test_fire_before_each.rb +53 -0
  66. data/spec/unit/support/world/fixtures/array.json +8 -0
  67. data/spec/unit/support/world/fixtures/queue.rb +1 -0
  68. data/spec/unit/support/world/fixtures/single.json +11 -0
  69. data/spec/unit/support/world/fixtures/yaml.yml +3 -0
  70. data/spec/unit/support/world/test_world.rb +56 -0
  71. data/spec/unit/test_configuration.rb +50 -1
  72. data/spec/unit/tester/test_asserter.rb +198 -3
  73. data/spec/unit/tester/test_assertions.rb +8 -6
  74. data/spec/unit/web/mocker/test_mocker.rb +35 -0
  75. data/spec/unit/web/openapi/test_generator.rb +31 -0
  76. metadata +72 -61
  77. data/examples/restful/Gemfile +0 -5
  78. data/examples/restful/Gemfile.lock +0 -105
  79. data/examples/restful/Rakefile +0 -25
  80. data/examples/restful/app.rb +0 -180
  81. data/examples/restful/webspicy/config.rb +0 -23
  82. data/examples/restful/webspicy/rack.rb +0 -7
  83. data/examples/restful/webspicy/real.rb +0 -8
  84. data/examples/restful/webspicy/schema.fio +0 -20
  85. data/examples/restful/webspicy/support/must_be_an_admin.rb +0 -20
  86. data/examples/restful/webspicy/support/must_be_authenticated.rb +0 -48
  87. data/examples/restful/webspicy/support/todo_removed.rb +0 -18
  88. data/examples/restful/webspicy/todo/deleteTodo.yml +0 -52
  89. data/examples/restful/webspicy/todo/getTodo.yml +0 -50
  90. data/examples/restful/webspicy/todo/getTodoSingleServiceFormat.yml +0 -46
  91. data/examples/restful/webspicy/todo/getTodos.yml +0 -36
  92. data/examples/restful/webspicy/todo/options.yml +0 -32
  93. data/examples/restful/webspicy/todo/patchTodo.yml +0 -66
  94. data/examples/restful/webspicy/todo/postCsv.yml +0 -43
  95. data/examples/restful/webspicy/todo/postFile.yml +0 -40
  96. data/examples/restful/webspicy/todo/postTodos.yml +0 -51
  97. data/examples/restful/webspicy/todo/putTodo.yml +0 -65
  98. data/examples/restful/webspicy/todo/todos.csv +0 -4
  99. data/examples/single_spec/spec.yml +0 -59
  100. data/examples/website/config.rb +0 -2
  101. data/examples/website/schema.fio +0 -1
  102. data/examples/website/specification/get-http.yml +0 -34
  103. data/examples/website/specification/get-https.yml +0 -34
  104. data/lib/webspicy/checker.rb +0 -25
  105. data/lib/webspicy/mocker.rb +0 -88
  106. data/lib/webspicy/openapi/generator.rb +0 -127
  107. data/lib/webspicy/tester/rspec_asserter.rb +0 -108
  108. data/lib/webspicy/tester/rspec_matchers.rb +0 -104
  109. data/spec/unit/mocker/test_mocker.rb +0 -32
  110. data/spec/unit/openapi/test_generator.rb +0 -28
@@ -96,14 +96,16 @@ module Webspicy
96
96
  { id: 1, bar: "bar" },
97
97
  { id: 2, bar: "baz" }
98
98
  ] }
99
- expect(idFD(target, 'foo', 1, bar: "bar")).to be(true)
100
- expect(idFD(target, 'foo', 1, bar: "baz")).to be(false)
101
- expect(idFD(target, 'foo', 1, baz: "boz")).to be(false)
99
+ element = element_with_id(target, 'foo', 1)
100
+ expect(idFD(element, bar: "bar")).to be(true)
101
+ expect(idFD(element, bar: "baz")).to be(false)
102
+ expect(idFD(element, baz: "boz")).to be(false)
102
103
 
103
104
  target = { foo: { id: 1, bar: "bar" } }
104
- expect(idFD(target, 'foo', 1, bar: "bar")).to be(true)
105
- expect(idFD(target, 'foo', 1, bar: "baz")).to be(false)
106
- expect(idFD(target, 'foo', 1, baz: "boz")).to be(false)
105
+ element = element_with_id(target, 'foo', 1)
106
+ expect(idFD(element, bar: "bar")).to be(true)
107
+ expect(idFD(element, bar: "baz")).to be(false)
108
+ expect(idFD(element, baz: "boz")).to be(false)
107
109
  end
108
110
 
109
111
  it 'has a pathFD assertion' do
@@ -0,0 +1,35 @@
1
+ require 'spec_helper'
2
+ require 'rack/test'
3
+ require 'webspicy/web'
4
+ require 'webspicy/web/mocker'
5
+ module Webspicy
6
+ module Web
7
+ describe Mocker do
8
+ include Rack::Test::Methods
9
+
10
+ let(:app) {
11
+ Mocker.new(Configuration.dress(restful_folder))
12
+ }
13
+
14
+ it 'works as expected' do
15
+ get '/todo/'
16
+ expect(last_response.status).to eql(200)
17
+ expect(last_response.body).not_to be_empty
18
+ end
19
+
20
+ it 'supports CORS on OPTIONS' do
21
+ options '/todo/'
22
+ expect(last_response.status).to eql(204)
23
+ expect(last_response.body).to be_empty
24
+ end
25
+
26
+ it 'returns the correct status code, taken from first example' do
27
+ delete '/todo/1'
28
+ expect(last_response.status).to eql(204)
29
+ expect(last_response.body).to be_empty
30
+ expect(last_response["Content-Type"]).to be_nil
31
+ end
32
+
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,31 @@
1
+ require 'spec_helper'
2
+ require 'webspicy/web'
3
+ require 'webspicy/web/openapi'
4
+ require 'openapi3_parser'
5
+ module Webspicy
6
+ module Web
7
+ module Openapi
8
+ describe Generator do
9
+
10
+ let(:config) {
11
+ Configuration.new(restful_folder)
12
+ }
13
+
14
+ subject {
15
+ ruby_objs = Generator.new(config).call
16
+ JSON.parse(ruby_objs.to_json)
17
+ }
18
+
19
+ it 'works fine' do
20
+ document = Openapi3Parser.load(subject)
21
+ #puts JSON.pretty_generate(subject)
22
+ document.errors.each do |err|
23
+ puts err.inspect
24
+ end unless document.errors.empty?
25
+ expect(document.errors).to be_empty
26
+ end
27
+
28
+ end
29
+ end
30
+ end
31
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: webspicy
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.16.1
4
+ version: 0.19.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bernard Lambeau
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-12-18 00:00:00.000000000 Z
11
+ date: 2021-03-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '12'
19
+ version: '13'
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: '12'
26
+ version: '13'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: sinatra
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -44,14 +44,14 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '3.7'
48
- type: :runtime
47
+ version: '3.10'
48
+ type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '3.7'
54
+ version: '3.10'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rspec_junit_formatter
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -59,7 +59,7 @@ dependencies:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
61
  version: 0.4.1
62
- type: :runtime
62
+ type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
@@ -86,28 +86,28 @@ dependencies:
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: 0.9.0
89
+ version: 0.10.0
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: 0.9.0
96
+ version: 0.10.0
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: http
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - ">="
102
102
  - !ruby/object:Gem::Version
103
- version: '2'
103
+ version: '4'
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: '2'
110
+ version: '4'
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: path
113
113
  requirement: !ruby/object:Gem::Requirement
@@ -126,22 +126,22 @@ dependencies:
126
126
  name: rack-robustness
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
- - - "~>"
130
- - !ruby/object:Gem::Version
131
- version: '1.1'
132
129
  - - ">="
133
130
  - !ruby/object:Gem::Version
134
131
  version: 1.1.0
132
+ - - "~>"
133
+ - !ruby/object:Gem::Version
134
+ version: '1.1'
135
135
  type: :runtime
136
136
  prerelease: false
137
137
  version_requirements: !ruby/object:Gem::Requirement
138
138
  requirements:
139
- - - "~>"
140
- - !ruby/object:Gem::Version
141
- version: '1.1'
142
139
  - - ">="
143
140
  - !ruby/object:Gem::Version
144
141
  version: 1.1.0
142
+ - - "~>"
143
+ - !ruby/object:Gem::Version
144
+ version: '1.1'
145
145
  - !ruby/object:Gem::Dependency
146
146
  name: mustermann
147
147
  requirement: !ruby/object:Gem::Requirement
@@ -209,45 +209,20 @@ files:
209
209
  - README.md
210
210
  - Rakefile
211
211
  - bin/webspicy
212
- - examples/restful/Gemfile
213
- - examples/restful/Gemfile.lock
214
- - examples/restful/Rakefile
215
- - examples/restful/app.rb
216
- - examples/restful/webspicy/config.rb
217
- - examples/restful/webspicy/rack.rb
218
- - examples/restful/webspicy/real.rb
219
- - examples/restful/webspicy/schema.fio
220
- - examples/restful/webspicy/support/must_be_an_admin.rb
221
- - examples/restful/webspicy/support/must_be_authenticated.rb
222
- - examples/restful/webspicy/support/todo_removed.rb
223
- - examples/restful/webspicy/todo/deleteTodo.yml
224
- - examples/restful/webspicy/todo/getTodo.yml
225
- - examples/restful/webspicy/todo/getTodoSingleServiceFormat.yml
226
- - examples/restful/webspicy/todo/getTodos.yml
227
- - examples/restful/webspicy/todo/options.yml
228
- - examples/restful/webspicy/todo/patchTodo.yml
229
- - examples/restful/webspicy/todo/postCsv.yml
230
- - examples/restful/webspicy/todo/postFile.yml
231
- - examples/restful/webspicy/todo/postTodos.yml
232
- - examples/restful/webspicy/todo/putTodo.yml
233
- - examples/restful/webspicy/todo/todos.csv
234
- - examples/single_spec/spec.yml
235
- - examples/website/config.rb
236
- - examples/website/schema.fio
237
- - examples/website/specification/get-http.yml
238
- - examples/website/specification/get-https.yml
212
+ - doc/1-black-box-scene.md
213
+ - doc/2-black-box-testing.md
214
+ - doc/3-specification-importance.md
215
+ - doc/4-sequence-diagram.md
239
216
  - lib/finitio/webspicy/scalars.fio
240
217
  - lib/webspicy.rb
241
- - lib/webspicy/checker.rb
242
218
  - lib/webspicy/configuration.rb
243
219
  - lib/webspicy/configuration/scope.rb
244
220
  - lib/webspicy/configuration/single_url.rb
245
221
  - lib/webspicy/configuration/single_yml_file.rb
246
222
  - lib/webspicy/formaldoc.fio
247
- - lib/webspicy/mocker.rb
248
- - lib/webspicy/openapi.rb
249
- - lib/webspicy/openapi/generator.rb
250
223
  - lib/webspicy/specification.rb
224
+ - lib/webspicy/specification/condition.rb
225
+ - lib/webspicy/specification/errcondition.rb
251
226
  - lib/webspicy/specification/file_upload.rb
252
227
  - lib/webspicy/specification/postcondition.rb
253
228
  - lib/webspicy/specification/precondition.rb
@@ -257,43 +232,79 @@ files:
257
232
  - lib/webspicy/specification/test_case.rb
258
233
  - lib/webspicy/support.rb
259
234
  - lib/webspicy/support/colorize.rb
235
+ - lib/webspicy/support/data_object.rb
236
+ - lib/webspicy/support/hooks.rb
260
237
  - lib/webspicy/support/status_range.rb
238
+ - lib/webspicy/support/world.rb
261
239
  - lib/webspicy/tester.rb
262
240
  - lib/webspicy/tester/asserter.rb
263
241
  - lib/webspicy/tester/assertions.rb
264
242
  - lib/webspicy/tester/client.rb
265
- - lib/webspicy/tester/client/http_client.rb
266
- - lib/webspicy/tester/client/rack_test_client.rb
267
- - lib/webspicy/tester/client/support.rb
243
+ - lib/webspicy/tester/failure.rb
244
+ - lib/webspicy/tester/file_checker.rb
268
245
  - lib/webspicy/tester/invocation.rb
269
- - lib/webspicy/tester/rspec_asserter.rb
270
- - lib/webspicy/tester/rspec_matchers.rb
246
+ - lib/webspicy/tester/reporter.rb
247
+ - lib/webspicy/tester/reporter/composite.rb
248
+ - lib/webspicy/tester/reporter/documentation.rb
249
+ - lib/webspicy/tester/reporter/error_count.rb
250
+ - lib/webspicy/tester/reporter/exceptions.rb
251
+ - lib/webspicy/tester/reporter/file_progress.rb
252
+ - lib/webspicy/tester/reporter/file_summary.rb
253
+ - lib/webspicy/tester/reporter/progress.rb
254
+ - lib/webspicy/tester/reporter/summary.rb
255
+ - lib/webspicy/tester/result.rb
256
+ - lib/webspicy/tester/result/assert_met.rb
257
+ - lib/webspicy/tester/result/check.rb
258
+ - lib/webspicy/tester/result/errcondition_met.rb
259
+ - lib/webspicy/tester/result/error_schema_met.rb
260
+ - lib/webspicy/tester/result/output_schema_met.rb
261
+ - lib/webspicy/tester/result/postcondition_met.rb
262
+ - lib/webspicy/tester/result/response_header_met.rb
263
+ - lib/webspicy/tester/result/response_status_met.rb
271
264
  - lib/webspicy/version.rb
265
+ - lib/webspicy/web.rb
266
+ - lib/webspicy/web/client.rb
267
+ - lib/webspicy/web/client/http_client.rb
268
+ - lib/webspicy/web/client/rack_test_client.rb
269
+ - lib/webspicy/web/client/support.rb
270
+ - lib/webspicy/web/invocation.rb
271
+ - lib/webspicy/web/mocker.rb
272
+ - lib/webspicy/web/mocker/config.ru
273
+ - lib/webspicy/web/openapi.rb
274
+ - lib/webspicy/web/openapi/generator.rb
272
275
  - spec/spec_helper.rb
273
276
  - spec/unit/configuration/config.rb
274
277
  - spec/unit/configuration/scope/test_each_service.rb
275
278
  - spec/unit/configuration/scope/test_each_specification.rb
276
279
  - spec/unit/configuration/scope/test_expand_example.rb
277
280
  - spec/unit/configuration/scope/test_to_real_url.rb
278
- - spec/unit/mocker/test_mocker.rb
279
- - spec/unit/openapi/test_generator.rb
280
281
  - spec/unit/specification/precondition/test_global_request_headers.rb
281
282
  - spec/unit/specification/service/test_dress_params.rb
282
283
  - spec/unit/specification/test_case/test_mutate.rb
284
+ - spec/unit/specification/test_condition.rb
283
285
  - spec/unit/specification/test_instantiate_url.rb
284
286
  - spec/unit/specification/test_url_placeholders.rb
287
+ - spec/unit/support/hooks/test_fire_after_each.rb
288
+ - spec/unit/support/hooks/test_fire_around.rb
289
+ - spec/unit/support/hooks/test_fire_before_each.rb
285
290
  - spec/unit/support/test_status_range.rb
291
+ - spec/unit/support/world/fixtures/array.json
292
+ - spec/unit/support/world/fixtures/queue.rb
293
+ - spec/unit/support/world/fixtures/single.json
294
+ - spec/unit/support/world/fixtures/yaml.yml
295
+ - spec/unit/support/world/test_world.rb
286
296
  - spec/unit/test_configuration.rb
287
- - spec/unit/tester/client/test_around.rb
288
297
  - spec/unit/tester/test_asserter.rb
289
298
  - spec/unit/tester/test_assertions.rb
299
+ - spec/unit/web/mocker/test_mocker.rb
300
+ - spec/unit/web/openapi/test_generator.rb
290
301
  - tasks/gem.rake
291
302
  - tasks/test.rake
292
303
  homepage: http://github.com/enspirit/webspicy
293
304
  licenses:
294
305
  - MIT
295
306
  metadata: {}
296
- post_install_message:
307
+ post_install_message:
297
308
  rdoc_options: []
298
309
  require_paths:
299
310
  - lib
@@ -308,8 +319,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
308
319
  - !ruby/object:Gem::Version
309
320
  version: '0'
310
321
  requirements: []
311
- rubygems_version: 3.1.2
312
- signing_key:
322
+ rubygems_version: 3.0.8
323
+ signing_key:
313
324
  specification_version: 4
314
325
  summary: Webspicy helps testing web services as software operation black boxes!
315
326
  test_files: []
@@ -1,5 +0,0 @@
1
- source "https://rubygems.org"
2
-
3
- gem "rake", "~> 12"
4
- gem 'sinatra', "~> 2"
5
- gem "webspicy", path: "../.."
@@ -1,105 +0,0 @@
1
- PATH
2
- remote: ../..
3
- specs:
4
- webspicy (0.16.1)
5
- colorize (~> 0.8.1)
6
- finitio (~> 0.9.0)
7
- http (>= 2)
8
- mustermann (~> 1.0)
9
- mustermann-contrib
10
- openapi3_parser (~> 0.8.2)
11
- path (~> 2.0)
12
- rack-robustness (~> 1.1, >= 1.1.0)
13
- rack-test (~> 0.6.3)
14
- rspec (~> 3.7)
15
- rspec_junit_formatter (~> 0.4.1)
16
-
17
- GEM
18
- remote: https://rubygems.org/
19
- specs:
20
- addressable (2.7.0)
21
- public_suffix (>= 2.0.2, < 5.0)
22
- citrus (3.0.2)
23
- colorize (0.8.1)
24
- commonmarker (0.21.0)
25
- ruby-enum (~> 0.5)
26
- concurrent-ruby (1.1.7)
27
- diff-lcs (1.4.4)
28
- domain_name (0.5.20190701)
29
- unf (>= 0.0.5, < 1.0.0)
30
- ffi (1.13.1)
31
- ffi-compiler (1.0.1)
32
- ffi (>= 1.0.0)
33
- rake
34
- finitio (0.9.0)
35
- citrus (>= 2.4, < 4.0)
36
- hansi (0.2.0)
37
- http (4.4.1)
38
- addressable (~> 2.3)
39
- http-cookie (~> 1.0)
40
- http-form_data (~> 2.2)
41
- http-parser (~> 1.2.0)
42
- http-cookie (1.0.3)
43
- domain_name (~> 0.5)
44
- http-form_data (2.3.0)
45
- http-parser (1.2.2)
46
- ffi-compiler
47
- i18n (1.8.5)
48
- concurrent-ruby (~> 1.0)
49
- mustermann (1.1.1)
50
- ruby2_keywords (~> 0.0.1)
51
- mustermann-contrib (1.1.1)
52
- hansi (~> 0.2.0)
53
- mustermann (= 1.1.1)
54
- openapi3_parser (0.8.2)
55
- commonmarker (~> 0.17)
56
- psych (~> 3.1)
57
- path (2.0.1)
58
- psych (3.2.1)
59
- public_suffix (4.0.6)
60
- rack (2.2.3)
61
- rack-protection (2.1.0)
62
- rack
63
- rack-robustness (1.1.0)
64
- rack-test (0.6.3)
65
- rack (>= 1.0)
66
- rake (12.3.3)
67
- rspec (3.10.0)
68
- rspec-core (~> 3.10.0)
69
- rspec-expectations (~> 3.10.0)
70
- rspec-mocks (~> 3.10.0)
71
- rspec-core (3.10.0)
72
- rspec-support (~> 3.10.0)
73
- rspec-expectations (3.10.0)
74
- diff-lcs (>= 1.2.0, < 2.0)
75
- rspec-support (~> 3.10.0)
76
- rspec-mocks (3.10.0)
77
- diff-lcs (>= 1.2.0, < 2.0)
78
- rspec-support (~> 3.10.0)
79
- rspec-support (3.10.0)
80
- rspec_junit_formatter (0.4.1)
81
- rspec-core (>= 2, < 4, != 2.12.0)
82
- ruby-enum (0.8.0)
83
- i18n
84
- ruby2_keywords (0.0.2)
85
- sinatra (2.1.0)
86
- mustermann (~> 1.0)
87
- rack (~> 2.2)
88
- rack-protection (= 2.1.0)
89
- tilt (~> 2.0)
90
- tilt (2.0.10)
91
- unf (0.1.4)
92
- unf_ext
93
- unf_ext (0.0.7.7)
94
-
95
- PLATFORMS
96
- ruby
97
- x86_64-darwin-15
98
-
99
- DEPENDENCIES
100
- rake (~> 12)
101
- sinatra (~> 2)
102
- webspicy!
103
-
104
- BUNDLED WITH
105
- 2.2.1