rambo_ruby 0.1.0

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 (78) hide show
  1. checksums.yaml +7 -0
  2. data/.rspec +2 -0
  3. data/.simplecov +7 -0
  4. data/.travis.yml +17 -0
  5. data/Gemfile +5 -0
  6. data/ISSUE_TEMPLATE.md +45 -0
  7. data/LICENSE +21 -0
  8. data/README.md +50 -0
  9. data/Rakefile +10 -0
  10. data/assets/logo.txt +5 -0
  11. data/bin/rambo +23 -0
  12. data/features/create_files.feature +16 -0
  13. data/features/error_modes.feature +13 -0
  14. data/features/generate_post_specs.feature +10 -0
  15. data/features/generate_simple_api_specs.feature +13 -0
  16. data/features/modify_spec_helper.feature +4 -0
  17. data/features/step_definitions/file_steps.rb +25 -0
  18. data/features/support/cucumber_helper.rb +13 -0
  19. data/features/support/env.rb +8 -0
  20. data/features/support/examples/json/basic_raml_with_example_response.json +16 -0
  21. data/features/support/examples/json/basic_raml_with_post_route_response.json +15 -0
  22. data/features/support/examples/json/basic_raml_with_schema_response.json +10 -0
  23. data/features/support/examples/raml/basic_raml_with_example.raml +30 -0
  24. data/features/support/examples/raml/basic_raml_with_post_route.raml +43 -0
  25. data/features/support/examples/raml/basic_raml_with_schema.raml +24 -0
  26. data/features/support/examples/raml/empty_raml.raml +5 -0
  27. data/features/support/examples/raml/multiple_routes.raml +15 -0
  28. data/features/support/examples/raml/post_with_request_headers.raml +45 -0
  29. data/features/support/examples/rspec/empty_spec.rb.example +5 -0
  30. data/features/support/examples/rspec/simple_spec_file_with_example.rb.example +31 -0
  31. data/features/support/examples/rspec/simple_spec_file_with_post_route.rb.example +35 -0
  32. data/features/support/examples/rspec/simple_spec_file_with_schema.rb.example +31 -0
  33. data/features/support/examples/rspec/spec_file_with_request_headers.rb.example +52 -0
  34. data/features/support/examples/rspec/spec_helper_json_added.rb.example +11 -0
  35. data/features/support/examples/rspec/spec_helper_only_json.rb.example +10 -0
  36. data/features/support/examples/rspec/spec_helper_only_rack_test.rb.example +9 -0
  37. data/features/support/examples/rspec/spec_helper_rack_test_added.rb.example +10 -0
  38. data/features/support/foobar.raml +30 -0
  39. data/lib/cli.rb +65 -0
  40. data/lib/document_generator.rb +49 -0
  41. data/lib/raml_models/api.rb +19 -0
  42. data/lib/raml_models/body.rb +33 -0
  43. data/lib/raml_models/headers.rb +21 -0
  44. data/lib/raml_models/method.rb +37 -0
  45. data/lib/raml_models/resource.rb +22 -0
  46. data/lib/raml_models/response.rb +19 -0
  47. data/lib/raml_models.rb +1 -0
  48. data/lib/rspec/example_group.rb +53 -0
  49. data/lib/rspec/examples.rb +32 -0
  50. data/lib/rspec/helper_file.rb +30 -0
  51. data/lib/rspec/spec_file.rb +31 -0
  52. data/lib/rspec/templates/example_group_template.erb +39 -0
  53. data/lib/rspec/templates/matcher_file_template.erb +8 -0
  54. data/lib/rspec/templates/rambo_helper_file_template.erb +3 -0
  55. data/lib/rspec/templates/spec_file_template.erb +15 -0
  56. data/lib/rspec.rb +1 -0
  57. data/lib/version.rb +9 -0
  58. data/rambo_ruby.gemspec +38 -0
  59. data/spec/lib/cli_spec.rb +71 -0
  60. data/spec/lib/document_generator_spec.rb +74 -0
  61. data/spec/lib/raml_models/api_spec.rb +23 -0
  62. data/spec/lib/raml_models/body_spec.rb +32 -0
  63. data/spec/lib/raml_models/headers_spec.rb +17 -0
  64. data/spec/lib/raml_models/method_spec.rb +32 -0
  65. data/spec/lib/raml_models/resource_spec.rb +30 -0
  66. data/spec/lib/raml_models/response_spec.rb +20 -0
  67. data/spec/lib/rspec/example_group_spec.rb +87 -0
  68. data/spec/lib/rspec/examples_spec.rb +38 -0
  69. data/spec/lib/rspec/helper_file_spec.rb +18 -0
  70. data/spec/lib/rspec/spec_file_spec.rb +58 -0
  71. data/spec/spec_helper.rb +26 -0
  72. data/spec/support/basic_raml_with_post_route.raml +43 -0
  73. data/spec/support/foo.raml +43 -0
  74. data/spec/support/foobar.raml +30 -0
  75. data/spec/support/foobar.yml +3 -0
  76. data/spec/support/multiple_resources.raml +56 -0
  77. data/spec/support/post_with_request_headers.raml +45 -0
  78. metadata +321 -0
@@ -0,0 +1,56 @@
1
+ #%RAML 0.8
2
+ ---
3
+ title: e-BookMobile API
4
+ baseUri: http://api.e-bookmobile.com/{version}
5
+ version: v1
6
+
7
+ /authors:
8
+ get:
9
+ description: Retrieve a list of authors
10
+ responses:
11
+ 200:
12
+ body:
13
+ application/json:
14
+ example: |
15
+ {
16
+ "data": [
17
+ {
18
+ "id": 1,
19
+ "first_name": "Hermann",
20
+ "last_name": "Hesse"
21
+ },
22
+ {
23
+ "id":2,
24
+ "first_name": "Charles",
25
+ "last_name": "Dickens"
26
+ }
27
+ ],
28
+ "success": true,
29
+ "status": 200
30
+ }
31
+ /genres:
32
+ get:
33
+ description: Retrieve a list of available genres
34
+ responses:
35
+ 200:
36
+ body:
37
+ application/json:
38
+ example: |
39
+ {
40
+ "genres": [
41
+ {
42
+ "id": 1,
43
+ "description": "Science fiction"
44
+ },
45
+ {
46
+ "id": 2,
47
+ "description": "Young adult"
48
+ },
49
+ {
50
+ "id": 3,
51
+ "description": "Romance"
52
+ }
53
+ ],
54
+ "success": true,
55
+ "status": 200
56
+ }
@@ -0,0 +1,45 @@
1
+ #%RAML 1.0
2
+ ---
3
+ title: e-BookMobile API
4
+ baseUri: http://api.e-bookmobile.com/{version}
5
+ version: v1
6
+
7
+ /authors:
8
+ post:
9
+ description: Retrieve a list of authors
10
+ headers:
11
+ Content-Type: application/json
12
+ body:
13
+ application/json:
14
+ schema: |
15
+ {
16
+ "$schema": "http://json-schema.org/draft-04/schema#",
17
+ "description": "schema to create an author",
18
+ "type": "object",
19
+ "required": [ "first_name", "last_name" ],
20
+ "properties": {
21
+ "first_name": { "type": "string" },
22
+ "last_name": { "type": "string" },
23
+ "year_of_birth": { "type": "integer" }
24
+ }
25
+ }
26
+ responses:
27
+ 200:
28
+ body:
29
+ application/json:
30
+ schema: |
31
+ {
32
+ "$schema": "http://json-schema.org/draft-04/schema#",
33
+ "description": "schema for a list of authors",
34
+ "type": "object",
35
+ "properties": {
36
+ "author": {
37
+ "type": "object",
38
+ "properties": {
39
+ "id": { "type": "integer" },
40
+ "first_name": { "type": "string" },
41
+ "last_name": { "type": "string" }
42
+ }
43
+ }
44
+ }
45
+ }
metadata ADDED
@@ -0,0 +1,321 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rambo_ruby
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Dana Scheider
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2016-06-07 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rspec
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '3.4'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '3.4'
27
+ - !ruby/object:Gem::Dependency
28
+ name: raml-rb
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: 0.0.6
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: 0.0.6
41
+ - !ruby/object:Gem::Dependency
42
+ name: rack-test
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '0.6'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '0.6'
55
+ - !ruby/object:Gem::Dependency
56
+ name: colorize
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '0.7'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '0.7'
69
+ - !ruby/object:Gem::Dependency
70
+ name: json_test_data
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '1.0'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '1.0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: json-schema
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '2.6'
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '2.6'
97
+ - !ruby/object:Gem::Dependency
98
+ name: cucumber
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: '2.1'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: '2.1'
111
+ - !ruby/object:Gem::Dependency
112
+ name: json
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - "~>"
116
+ - !ruby/object:Gem::Version
117
+ version: '1.7'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: '1.7'
125
+ - !ruby/object:Gem::Dependency
126
+ name: rake
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - "~>"
130
+ - !ruby/object:Gem::Version
131
+ version: '11.0'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: '11.0'
139
+ - !ruby/object:Gem::Dependency
140
+ name: coveralls
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - "~>"
144
+ - !ruby/object:Gem::Version
145
+ version: '0.7'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - "~>"
151
+ - !ruby/object:Gem::Version
152
+ version: '0.7'
153
+ - !ruby/object:Gem::Dependency
154
+ name: aruba
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - "~>"
158
+ - !ruby/object:Gem::Version
159
+ version: '0.13'
160
+ type: :development
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - "~>"
165
+ - !ruby/object:Gem::Version
166
+ version: '0.13'
167
+ description: RAML in, RSpec out
168
+ email: dana.scheider@gmail.com
169
+ executables:
170
+ - rambo
171
+ extensions: []
172
+ extra_rdoc_files: []
173
+ files:
174
+ - ".rspec"
175
+ - ".simplecov"
176
+ - ".travis.yml"
177
+ - Gemfile
178
+ - ISSUE_TEMPLATE.md
179
+ - LICENSE
180
+ - README.md
181
+ - Rakefile
182
+ - assets/logo.txt
183
+ - bin/rambo
184
+ - features/create_files.feature
185
+ - features/error_modes.feature
186
+ - features/generate_post_specs.feature
187
+ - features/generate_simple_api_specs.feature
188
+ - features/modify_spec_helper.feature
189
+ - features/step_definitions/file_steps.rb
190
+ - features/support/cucumber_helper.rb
191
+ - features/support/env.rb
192
+ - features/support/examples/json/basic_raml_with_example_response.json
193
+ - features/support/examples/json/basic_raml_with_post_route_response.json
194
+ - features/support/examples/json/basic_raml_with_schema_response.json
195
+ - features/support/examples/raml/basic_raml_with_example.raml
196
+ - features/support/examples/raml/basic_raml_with_post_route.raml
197
+ - features/support/examples/raml/basic_raml_with_schema.raml
198
+ - features/support/examples/raml/empty_raml.raml
199
+ - features/support/examples/raml/multiple_routes.raml
200
+ - features/support/examples/raml/post_with_request_headers.raml
201
+ - features/support/examples/rspec/empty_spec.rb.example
202
+ - features/support/examples/rspec/simple_spec_file_with_example.rb.example
203
+ - features/support/examples/rspec/simple_spec_file_with_post_route.rb.example
204
+ - features/support/examples/rspec/simple_spec_file_with_schema.rb.example
205
+ - features/support/examples/rspec/spec_file_with_request_headers.rb.example
206
+ - features/support/examples/rspec/spec_helper_json_added.rb.example
207
+ - features/support/examples/rspec/spec_helper_only_json.rb.example
208
+ - features/support/examples/rspec/spec_helper_only_rack_test.rb.example
209
+ - features/support/examples/rspec/spec_helper_rack_test_added.rb.example
210
+ - features/support/foobar.raml
211
+ - lib/cli.rb
212
+ - lib/document_generator.rb
213
+ - lib/raml_models.rb
214
+ - lib/raml_models/api.rb
215
+ - lib/raml_models/body.rb
216
+ - lib/raml_models/headers.rb
217
+ - lib/raml_models/method.rb
218
+ - lib/raml_models/resource.rb
219
+ - lib/raml_models/response.rb
220
+ - lib/rspec.rb
221
+ - lib/rspec/example_group.rb
222
+ - lib/rspec/examples.rb
223
+ - lib/rspec/helper_file.rb
224
+ - lib/rspec/spec_file.rb
225
+ - lib/rspec/templates/example_group_template.erb
226
+ - lib/rspec/templates/matcher_file_template.erb
227
+ - lib/rspec/templates/rambo_helper_file_template.erb
228
+ - lib/rspec/templates/spec_file_template.erb
229
+ - lib/version.rb
230
+ - rambo_ruby.gemspec
231
+ - spec/lib/cli_spec.rb
232
+ - spec/lib/document_generator_spec.rb
233
+ - spec/lib/raml_models/api_spec.rb
234
+ - spec/lib/raml_models/body_spec.rb
235
+ - spec/lib/raml_models/headers_spec.rb
236
+ - spec/lib/raml_models/method_spec.rb
237
+ - spec/lib/raml_models/resource_spec.rb
238
+ - spec/lib/raml_models/response_spec.rb
239
+ - spec/lib/rspec/example_group_spec.rb
240
+ - spec/lib/rspec/examples_spec.rb
241
+ - spec/lib/rspec/helper_file_spec.rb
242
+ - spec/lib/rspec/spec_file_spec.rb
243
+ - spec/spec_helper.rb
244
+ - spec/support/basic_raml_with_post_route.raml
245
+ - spec/support/foo.raml
246
+ - spec/support/foobar.raml
247
+ - spec/support/foobar.yml
248
+ - spec/support/multiple_resources.raml
249
+ - spec/support/post_with_request_headers.raml
250
+ homepage:
251
+ licenses:
252
+ - MIT
253
+ metadata: {}
254
+ post_install_message:
255
+ rdoc_options:
256
+ - "--charset=UTF-8"
257
+ require_paths:
258
+ - lib
259
+ required_ruby_version: !ruby/object:Gem::Requirement
260
+ requirements:
261
+ - - ">="
262
+ - !ruby/object:Gem::Version
263
+ version: 2.1.0
264
+ required_rubygems_version: !ruby/object:Gem::Requirement
265
+ requirements:
266
+ - - ">="
267
+ - !ruby/object:Gem::Version
268
+ version: '0'
269
+ requirements: []
270
+ rubyforge_project:
271
+ rubygems_version: 2.5.1
272
+ signing_key:
273
+ specification_version: 4
274
+ summary: rambo_ruby-0.1.0
275
+ test_files:
276
+ - features/create_files.feature
277
+ - features/error_modes.feature
278
+ - features/generate_post_specs.feature
279
+ - features/generate_simple_api_specs.feature
280
+ - features/modify_spec_helper.feature
281
+ - features/step_definitions/file_steps.rb
282
+ - features/support/cucumber_helper.rb
283
+ - features/support/env.rb
284
+ - features/support/examples/json/basic_raml_with_example_response.json
285
+ - features/support/examples/json/basic_raml_with_post_route_response.json
286
+ - features/support/examples/json/basic_raml_with_schema_response.json
287
+ - features/support/examples/raml/basic_raml_with_example.raml
288
+ - features/support/examples/raml/basic_raml_with_post_route.raml
289
+ - features/support/examples/raml/basic_raml_with_schema.raml
290
+ - features/support/examples/raml/empty_raml.raml
291
+ - features/support/examples/raml/multiple_routes.raml
292
+ - features/support/examples/raml/post_with_request_headers.raml
293
+ - features/support/examples/rspec/empty_spec.rb.example
294
+ - features/support/examples/rspec/simple_spec_file_with_example.rb.example
295
+ - features/support/examples/rspec/simple_spec_file_with_post_route.rb.example
296
+ - features/support/examples/rspec/simple_spec_file_with_schema.rb.example
297
+ - features/support/examples/rspec/spec_file_with_request_headers.rb.example
298
+ - features/support/examples/rspec/spec_helper_json_added.rb.example
299
+ - features/support/examples/rspec/spec_helper_only_json.rb.example
300
+ - features/support/examples/rspec/spec_helper_only_rack_test.rb.example
301
+ - features/support/examples/rspec/spec_helper_rack_test_added.rb.example
302
+ - features/support/foobar.raml
303
+ - spec/lib/cli_spec.rb
304
+ - spec/lib/document_generator_spec.rb
305
+ - spec/lib/raml_models/api_spec.rb
306
+ - spec/lib/raml_models/body_spec.rb
307
+ - spec/lib/raml_models/headers_spec.rb
308
+ - spec/lib/raml_models/method_spec.rb
309
+ - spec/lib/raml_models/resource_spec.rb
310
+ - spec/lib/raml_models/response_spec.rb
311
+ - spec/lib/rspec/example_group_spec.rb
312
+ - spec/lib/rspec/examples_spec.rb
313
+ - spec/lib/rspec/helper_file_spec.rb
314
+ - spec/lib/rspec/spec_file_spec.rb
315
+ - spec/spec_helper.rb
316
+ - spec/support/basic_raml_with_post_route.raml
317
+ - spec/support/foo.raml
318
+ - spec/support/foobar.raml
319
+ - spec/support/foobar.yml
320
+ - spec/support/multiple_resources.raml
321
+ - spec/support/post_with_request_headers.raml