rambo_ruby 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
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