grape-swagger 0.1.0 → 0.2.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.
- data/Gemfile +5 -0
- data/Gemfile.lock +17 -0
- data/Rakefile +4 -9
- data/VERSION +1 -1
- data/grape-swagger.gemspec +15 -36
- data/lib/grape-swagger.rb +18 -11
- data/spec/grape-swagger_spec.rb +15 -0
- data/spec/non_default_api_spec.rb +88 -0
- data/spec/simple_mounted_api_spec.rb +30 -0
- data/spec/spec_helper.rb +29 -0
- metadata +55 -37
- data/test/dummy/README.rdoc +0 -261
- data/test/dummy/Rakefile +0 -7
- data/test/dummy/app/assets/javascripts/application.js +0 -15
- data/test/dummy/app/assets/stylesheets/application.css +0 -13
- data/test/dummy/app/controllers/application_controller.rb +0 -3
- data/test/dummy/app/helpers/application_helper.rb +0 -2
- data/test/dummy/app/mailers/.gitkeep +0 -0
- data/test/dummy/app/models/.gitkeep +0 -0
- data/test/dummy/app/views/layouts/application.html.erb +0 -14
- data/test/dummy/config.ru +0 -4
- data/test/dummy/config/application.rb +0 -59
- data/test/dummy/config/boot.rb +0 -10
- data/test/dummy/config/database.yml +0 -25
- data/test/dummy/config/environment.rb +0 -5
- data/test/dummy/config/environments/development.rb +0 -37
- data/test/dummy/config/environments/production.rb +0 -67
- data/test/dummy/config/environments/test.rb +0 -37
- data/test/dummy/config/initializers/backtrace_silencers.rb +0 -7
- data/test/dummy/config/initializers/inflections.rb +0 -15
- data/test/dummy/config/initializers/mime_types.rb +0 -5
- data/test/dummy/config/initializers/secret_token.rb +0 -7
- data/test/dummy/config/initializers/session_store.rb +0 -8
- data/test/dummy/config/initializers/wrap_parameters.rb +0 -14
- data/test/dummy/config/locales/en.yml +0 -5
- data/test/dummy/config/routes.rb +0 -58
- data/test/dummy/lib/assets/.gitkeep +0 -0
- data/test/dummy/log/.gitkeep +0 -0
- data/test/dummy/public/404.html +0 -26
- data/test/dummy/public/422.html +0 -26
- data/test/dummy/public/500.html +0 -25
- data/test/dummy/public/favicon.ico +0 -0
- data/test/dummy/script/rails +0 -6
- data/test/grape-swagger_test.rb +0 -7
- data/test/test_helper.rb +0 -15
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -30,6 +30,7 @@ GEM
|
|
30
30
|
multi_json (~> 1.0)
|
31
31
|
arel (3.0.2)
|
32
32
|
builder (3.0.0)
|
33
|
+
diff-lcs (1.1.3)
|
33
34
|
erubis (2.7.0)
|
34
35
|
git (1.2.5)
|
35
36
|
grape (0.2.1)
|
@@ -86,6 +87,19 @@ GEM
|
|
86
87
|
rake (0.9.2.2)
|
87
88
|
rdoc (3.12)
|
88
89
|
json (~> 1.4)
|
90
|
+
rspec (2.11.0)
|
91
|
+
rspec-core (~> 2.11.0)
|
92
|
+
rspec-expectations (~> 2.11.0)
|
93
|
+
rspec-mocks (~> 2.11.0)
|
94
|
+
rspec-core (2.11.1)
|
95
|
+
rspec-expectations (2.11.1)
|
96
|
+
diff-lcs (~> 1.1.3)
|
97
|
+
rspec-mocks (2.11.1)
|
98
|
+
rspec-rails (2.11.0)
|
99
|
+
actionpack (>= 3.0)
|
100
|
+
activesupport (>= 3.0)
|
101
|
+
railties (>= 3.0)
|
102
|
+
rspec (~> 2.11.0)
|
89
103
|
shoulda (3.1.1)
|
90
104
|
shoulda-context (~> 1.0)
|
91
105
|
shoulda-matchers (~> 1.2)
|
@@ -112,7 +126,10 @@ DEPENDENCIES
|
|
112
126
|
grape
|
113
127
|
jeweler (~> 1.8.4)
|
114
128
|
jquery-rails
|
129
|
+
rack-test
|
115
130
|
rails (~> 3.2)
|
116
131
|
rdoc (~> 3.12)
|
132
|
+
rspec
|
133
|
+
rspec-rails
|
117
134
|
shoulda
|
118
135
|
sqlite3
|
data/Rakefile
CHANGED
@@ -29,14 +29,9 @@ Jeweler::RubygemsDotOrgTasks.new
|
|
29
29
|
|
30
30
|
Bundler::GemHelper.install_tasks
|
31
31
|
|
32
|
-
require '
|
33
|
-
|
34
|
-
Rake::TestTask.new(:test) do |t|
|
35
|
-
t.libs << 'lib'
|
36
|
-
t.libs << 'test'
|
37
|
-
t.pattern = 'test/**/*_test.rb'
|
38
|
-
t.verbose = false
|
39
|
-
end
|
32
|
+
require 'rspec/core'
|
33
|
+
require 'rspec/core/rake_task'
|
40
34
|
|
35
|
+
RSpec::Core::RakeTask.new(:spec)
|
41
36
|
|
42
|
-
task :default => :
|
37
|
+
task :default => :spec
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.2.0
|
data/grape-swagger.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "grape-swagger"
|
8
|
-
s.version = "0.
|
8
|
+
s.version = "0.2.0"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Tim Vandecasteele"]
|
12
|
-
s.date = "2012-07-
|
12
|
+
s.date = "2012-07-27"
|
13
13
|
s.description = "A simple way to add proper auto generated documentation - that can be displayed with swagger - to your inline described grape API"
|
14
14
|
s.email = "tim.vandecasteele@gmail.com"
|
15
15
|
s.extra_rdoc_files = [
|
@@ -27,40 +27,10 @@ Gem::Specification.new do |s|
|
|
27
27
|
"VERSION",
|
28
28
|
"grape-swagger.gemspec",
|
29
29
|
"lib/grape-swagger.rb",
|
30
|
-
"
|
31
|
-
"
|
32
|
-
"
|
33
|
-
"
|
34
|
-
"test/dummy/app/controllers/application_controller.rb",
|
35
|
-
"test/dummy/app/helpers/application_helper.rb",
|
36
|
-
"test/dummy/app/mailers/.gitkeep",
|
37
|
-
"test/dummy/app/models/.gitkeep",
|
38
|
-
"test/dummy/app/views/layouts/application.html.erb",
|
39
|
-
"test/dummy/config.ru",
|
40
|
-
"test/dummy/config/application.rb",
|
41
|
-
"test/dummy/config/boot.rb",
|
42
|
-
"test/dummy/config/database.yml",
|
43
|
-
"test/dummy/config/environment.rb",
|
44
|
-
"test/dummy/config/environments/development.rb",
|
45
|
-
"test/dummy/config/environments/production.rb",
|
46
|
-
"test/dummy/config/environments/test.rb",
|
47
|
-
"test/dummy/config/initializers/backtrace_silencers.rb",
|
48
|
-
"test/dummy/config/initializers/inflections.rb",
|
49
|
-
"test/dummy/config/initializers/mime_types.rb",
|
50
|
-
"test/dummy/config/initializers/secret_token.rb",
|
51
|
-
"test/dummy/config/initializers/session_store.rb",
|
52
|
-
"test/dummy/config/initializers/wrap_parameters.rb",
|
53
|
-
"test/dummy/config/locales/en.yml",
|
54
|
-
"test/dummy/config/routes.rb",
|
55
|
-
"test/dummy/lib/assets/.gitkeep",
|
56
|
-
"test/dummy/log/.gitkeep",
|
57
|
-
"test/dummy/public/404.html",
|
58
|
-
"test/dummy/public/422.html",
|
59
|
-
"test/dummy/public/500.html",
|
60
|
-
"test/dummy/public/favicon.ico",
|
61
|
-
"test/dummy/script/rails",
|
62
|
-
"test/grape-swagger_test.rb",
|
63
|
-
"test/test_helper.rb"
|
30
|
+
"spec/grape-swagger_spec.rb",
|
31
|
+
"spec/non_default_api_spec.rb",
|
32
|
+
"spec/simple_mounted_api_spec.rb",
|
33
|
+
"spec/spec_helper.rb"
|
64
34
|
]
|
65
35
|
s.homepage = "http://github.com/tim-vandecasteele/grape-swagger"
|
66
36
|
s.licenses = ["MIT"]
|
@@ -80,6 +50,9 @@ Gem::Specification.new do |s|
|
|
80
50
|
s.add_development_dependency(%q<jquery-rails>, [">= 0"])
|
81
51
|
s.add_development_dependency(%q<rails>, ["~> 3.2"])
|
82
52
|
s.add_development_dependency(%q<sqlite3>, [">= 0"])
|
53
|
+
s.add_development_dependency(%q<rack-test>, [">= 0"])
|
54
|
+
s.add_development_dependency(%q<rspec-rails>, [">= 0"])
|
55
|
+
s.add_development_dependency(%q<rspec>, [">= 0"])
|
83
56
|
else
|
84
57
|
s.add_dependency(%q<grape>, [">= 0"])
|
85
58
|
s.add_dependency(%q<shoulda>, [">= 0"])
|
@@ -89,6 +62,9 @@ Gem::Specification.new do |s|
|
|
89
62
|
s.add_dependency(%q<jquery-rails>, [">= 0"])
|
90
63
|
s.add_dependency(%q<rails>, ["~> 3.2"])
|
91
64
|
s.add_dependency(%q<sqlite3>, [">= 0"])
|
65
|
+
s.add_dependency(%q<rack-test>, [">= 0"])
|
66
|
+
s.add_dependency(%q<rspec-rails>, [">= 0"])
|
67
|
+
s.add_dependency(%q<rspec>, [">= 0"])
|
92
68
|
end
|
93
69
|
else
|
94
70
|
s.add_dependency(%q<grape>, [">= 0"])
|
@@ -99,6 +75,9 @@ Gem::Specification.new do |s|
|
|
99
75
|
s.add_dependency(%q<jquery-rails>, [">= 0"])
|
100
76
|
s.add_dependency(%q<rails>, ["~> 3.2"])
|
101
77
|
s.add_dependency(%q<sqlite3>, [">= 0"])
|
78
|
+
s.add_dependency(%q<rack-test>, [">= 0"])
|
79
|
+
s.add_dependency(%q<rspec-rails>, [">= 0"])
|
80
|
+
s.add_dependency(%q<rspec>, [">= 0"])
|
102
81
|
end
|
103
82
|
end
|
104
83
|
|
data/lib/grape-swagger.rb
CHANGED
@@ -8,7 +8,11 @@ module Grape
|
|
8
8
|
def mount(mounts)
|
9
9
|
original_mount mounts
|
10
10
|
@combined_routes ||= {}
|
11
|
-
|
11
|
+
mounts::routes.each do |route|
|
12
|
+
resource = route.route_path.match('\/(.*?)[\.\/\(]').captures.first || '/'
|
13
|
+
@combined_routes[resource.downcase] ||= []
|
14
|
+
@combined_routes[resource.downcase] << route
|
15
|
+
end
|
12
16
|
end
|
13
17
|
|
14
18
|
def add_swagger_documentation(options={})
|
@@ -21,6 +25,7 @@ module Grape
|
|
21
25
|
private
|
22
26
|
|
23
27
|
def create_documentation_class
|
28
|
+
|
24
29
|
Class.new(Grape::API) do
|
25
30
|
class << self
|
26
31
|
def name
|
@@ -40,8 +45,8 @@ module Grape
|
|
40
45
|
@@target_class = options[:target_class]
|
41
46
|
@@mount_path = options[:mount_path]
|
42
47
|
@@class_name = options[:class_name] || options[:mount_path].gsub('/','')
|
43
|
-
|
44
|
-
|
48
|
+
api_version = options[:api_version]
|
49
|
+
base_path = options[:base_path]
|
45
50
|
|
46
51
|
desc 'Swagger compatible API description'
|
47
52
|
get @@mount_path do
|
@@ -53,9 +58,9 @@ module Grape
|
|
53
58
|
{ :path => "#{@@mount_path}/#{route}.{format}" }
|
54
59
|
end
|
55
60
|
{
|
56
|
-
apiVersion:
|
61
|
+
apiVersion: api_version,
|
57
62
|
swaggerVersion: "1.1",
|
58
|
-
basePath:
|
63
|
+
basePath: base_path || "http://#{env['HTTP_HOST']}",
|
59
64
|
operations:[],
|
60
65
|
apis: routes_array
|
61
66
|
}
|
@@ -77,15 +82,15 @@ module Grape
|
|
77
82
|
:summary => route.route_description || '',
|
78
83
|
:nickname => Random.rand(1000000),
|
79
84
|
:httpMethod => route.route_method,
|
80
|
-
:parameters => parse_params(route.route_params)
|
85
|
+
:parameters => parse_params(route.route_params, route.route_path, route.route_method)
|
81
86
|
}]
|
82
87
|
}
|
83
88
|
end
|
84
89
|
|
85
90
|
{
|
86
|
-
apiVersion:
|
91
|
+
apiVersion: api_version,
|
87
92
|
swaggerVersion: "1.1",
|
88
|
-
basePath:
|
93
|
+
basePath: base_path || "http://#{env['HTTP_HOST']}",
|
89
94
|
resourcePath: "",
|
90
95
|
apis: routes_array
|
91
96
|
}
|
@@ -94,17 +99,19 @@ module Grape
|
|
94
99
|
|
95
100
|
|
96
101
|
helpers do
|
97
|
-
def parse_params(params)
|
102
|
+
def parse_params(params, path, method)
|
98
103
|
params.map do |param, value|
|
104
|
+
value[:type] = 'file' if value.is_a?(Hash) && value[:type] == 'Rack::Multipart::UploadedFile'
|
105
|
+
|
99
106
|
dataType = value.is_a?(Hash) ? value[:type]||'String' : 'String'
|
100
107
|
description = value.is_a?(Hash) ? value[:desc] : ''
|
101
108
|
required = value.is_a?(Hash) ? !!value[:required] : false
|
102
|
-
paramType = 'path'
|
109
|
+
paramType = path.match(":#{param}") ? 'path' : (method == 'POST') ? 'body' : 'query'
|
103
110
|
{
|
104
111
|
paramType: paramType,
|
105
112
|
name: param,
|
106
113
|
description: description,
|
107
|
-
dataType:
|
114
|
+
dataType: dataType,
|
108
115
|
required: required
|
109
116
|
}
|
110
117
|
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Grape::API do
|
4
|
+
|
5
|
+
it "added combined-routes" do
|
6
|
+
Grape::API.should respond_to :combined_routes
|
7
|
+
end
|
8
|
+
|
9
|
+
it "added add_swagger_documentation" do
|
10
|
+
Grape::API.should respond_to :add_swagger_documentation
|
11
|
+
end
|
12
|
+
|
13
|
+
|
14
|
+
|
15
|
+
end
|
@@ -0,0 +1,88 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe "overruling the defaults for the api documentation generation" do
|
4
|
+
|
5
|
+
class MountedApi < Grape::API
|
6
|
+
desc 'this gets something'
|
7
|
+
get '/something' do
|
8
|
+
{:bla => 'something'}
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
|
13
|
+
context "overruling the basepath" do
|
14
|
+
class SimpleApiWithBasePath < Grape::API
|
15
|
+
NON_DEFAULT_BASE_PATH= "http://www.breakcoregivesmewood.com"
|
16
|
+
|
17
|
+
mount MountedApi
|
18
|
+
add_swagger_documentation :base_path => NON_DEFAULT_BASE_PATH
|
19
|
+
end
|
20
|
+
|
21
|
+
subject { SimpleApiWithBasePath.new }
|
22
|
+
def app; subject end
|
23
|
+
|
24
|
+
it "retrieves the given base-path on /swagger_doc" do
|
25
|
+
get '/swagger_doc'
|
26
|
+
last_response.body.should == "{:apiVersion=>\"0.1\", :swaggerVersion=>\"1.1\", :basePath=>\"#{SimpleApiWithBasePath::NON_DEFAULT_BASE_PATH}\", :operations=>[], :apis=>[{:path=>\"/swagger_doc/something.{format}\"}, {:path=>\"/swagger_doc/swagger_doc.{format}\"}]}"
|
27
|
+
end
|
28
|
+
|
29
|
+
it "retrieves the same given base-path for mounted-api" do
|
30
|
+
Random.stub(:rand) { 0 }
|
31
|
+
get '/swagger_doc/something'
|
32
|
+
last_response.body.should == "{:apiVersion=>\"0.1\", :swaggerVersion=>\"1.1\", :basePath=>\"#{SimpleApiWithBasePath::NON_DEFAULT_BASE_PATH}\", :resourcePath=>\"\", :apis=>[{:path=>\"/something.{format}\", :operations=>[{:notes=>nil, :summary=>\"this gets something\", :nickname=>0, :httpMethod=>\"GET\", :parameters=>[]}]}]}"
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
context "overruling the basepath" do
|
37
|
+
class SimpleApiWithAPiVersion < Grape::API
|
38
|
+
API_VERSION = "101"
|
39
|
+
|
40
|
+
mount MountedApi
|
41
|
+
add_swagger_documentation :api_version => API_VERSION
|
42
|
+
end
|
43
|
+
|
44
|
+
subject { SimpleApiWithAPiVersion.new }
|
45
|
+
def app; subject end
|
46
|
+
|
47
|
+
it "retrieves the given base-path on /swagger_doc" do
|
48
|
+
get '/swagger_doc'
|
49
|
+
last_response.body.should == "{:apiVersion=>\"#{SimpleApiWithAPiVersion::API_VERSION}\", :swaggerVersion=>\"1.1\", :basePath=>\"http://example.org\", :operations=>[], :apis=>[{:path=>\"/swagger_doc/something.{format}\"}, {:path=>\"/swagger_doc/swagger_doc.{format}\"}]}"
|
50
|
+
end
|
51
|
+
|
52
|
+
it "retrieves the same given base-path for mounted-api" do
|
53
|
+
Random.stub(:rand) { 0 }
|
54
|
+
get '/swagger_doc/something'
|
55
|
+
last_response.body.should == "{:apiVersion=>\"#{SimpleApiWithAPiVersion::API_VERSION}\", :swaggerVersion=>\"1.1\", :basePath=>\"http://example.org\", :resourcePath=>\"\", :apis=>[{:path=>\"/something.{format}\", :operations=>[{:notes=>nil, :summary=>\"this gets something\", :nickname=>0, :httpMethod=>\"GET\", :parameters=>[]}]}]}"
|
56
|
+
end
|
57
|
+
end
|
58
|
+
|
59
|
+
context "overruling the mount-path" do
|
60
|
+
class SimpleApiWithDifferentMount < Grape::API
|
61
|
+
MOUNT_PATH = "api_doc"
|
62
|
+
|
63
|
+
mount MountedApi
|
64
|
+
add_swagger_documentation :mount_path => MOUNT_PATH
|
65
|
+
end
|
66
|
+
|
67
|
+
subject { SimpleApiWithDifferentMount.new }
|
68
|
+
def app; subject end
|
69
|
+
|
70
|
+
it "retrieves the given base-path on /swagger_doc" do
|
71
|
+
get '/api_doc'
|
72
|
+
last_response.body.should == "{:apiVersion=>\"0.1\", :swaggerVersion=>\"1.1\", :basePath=>\"http://example.org\", :operations=>[], :apis=>[{:path=>\"/swagger_doc/something.{format}\"}, {:path=>\"/swagger_doc/swagger_doc.{format}\"}]}"
|
73
|
+
end
|
74
|
+
|
75
|
+
it "retrieves the same given base-path for mounted-api" do
|
76
|
+
Random.stub(:rand) { 0 }
|
77
|
+
get '/api_doc/something'
|
78
|
+
last_response.body.should == "{:apiVersion=>\"0.1\", :swaggerVersion=>\"1.1\", :basePath=>\"http://example.org\", :resourcePath=>\"\", :apis=>[{:path=>\"/something.{format}\", :operations=>[{:notes=>nil, :summary=>\"this gets something\", :nickname=>0, :httpMethod=>\"GET\", :parameters=>[]}]}]}"
|
79
|
+
end
|
80
|
+
|
81
|
+
it "does not respond to swagger_doc" do
|
82
|
+
get '/swagger_doc'
|
83
|
+
last_response.status.should be == 404
|
84
|
+
end
|
85
|
+
end
|
86
|
+
|
87
|
+
|
88
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe "a simple mounted api" do
|
4
|
+
|
5
|
+
class MountedApi < Grape::API
|
6
|
+
desc 'this gets something'
|
7
|
+
get '/something' do
|
8
|
+
{:bla => 'something'}
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
class SimpleApi < Grape::API
|
13
|
+
mount MountedApi
|
14
|
+
add_swagger_documentation
|
15
|
+
end
|
16
|
+
|
17
|
+
subject { SimpleApi.new }
|
18
|
+
def app; subject end
|
19
|
+
|
20
|
+
it "retrieves swagger-documentation on /swagger_doc" do
|
21
|
+
get '/swagger_doc'
|
22
|
+
last_response.body.should == "{:apiVersion=>\"0.1\", :swaggerVersion=>\"1.1\", :basePath=>\"http://example.org\", :operations=>[], :apis=>[{:path=>\"/swagger_doc/something.{format}\"}, {:path=>\"/swagger_doc/swagger_doc.{format}\"}]}"
|
23
|
+
end
|
24
|
+
|
25
|
+
it "retrieves the documentation for mounted-api" do
|
26
|
+
Random.stub(:rand) { 0 }
|
27
|
+
get '/swagger_doc/something'
|
28
|
+
last_response.body.should == "{:apiVersion=>\"0.1\", :swaggerVersion=>\"1.1\", :basePath=>\"http://example.org\", :resourcePath=>\"\", :apis=>[{:path=>\"/something.{format}\", :operations=>[{:notes=>nil, :summary=>\"this gets something\", :nickname=>0, :httpMethod=>\"GET\", :parameters=>[]}]}]}"
|
29
|
+
end
|
30
|
+
end
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,29 @@
|
|
1
|
+
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
2
|
+
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
|
3
|
+
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), 'support'))
|
4
|
+
|
5
|
+
require 'grape'
|
6
|
+
require 'grape-swagger'
|
7
|
+
|
8
|
+
require 'rubygems'
|
9
|
+
require 'bundler'
|
10
|
+
Bundler.setup :default, :test
|
11
|
+
|
12
|
+
|
13
|
+
require 'rack/test'
|
14
|
+
|
15
|
+
# Load support files
|
16
|
+
Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
|
17
|
+
|
18
|
+
RSpec.configure do |config|
|
19
|
+
# Remove this line if you don't want RSpec's should and should_not
|
20
|
+
# methods or matchers
|
21
|
+
require 'rspec/expectations'
|
22
|
+
config.include RSpec::Matchers
|
23
|
+
|
24
|
+
# == Mock Framework
|
25
|
+
config.mock_with :rspec
|
26
|
+
|
27
|
+
config.include Rack::Test::Methods
|
28
|
+
#config.include Rack::Test::Methods::Patch
|
29
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: grape-swagger
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-07-
|
12
|
+
date: 2012-07-27 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: grape
|
@@ -139,6 +139,54 @@ dependencies:
|
|
139
139
|
- - ! '>='
|
140
140
|
- !ruby/object:Gem::Version
|
141
141
|
version: '0'
|
142
|
+
- !ruby/object:Gem::Dependency
|
143
|
+
name: rack-test
|
144
|
+
requirement: !ruby/object:Gem::Requirement
|
145
|
+
none: false
|
146
|
+
requirements:
|
147
|
+
- - ! '>='
|
148
|
+
- !ruby/object:Gem::Version
|
149
|
+
version: '0'
|
150
|
+
type: :development
|
151
|
+
prerelease: false
|
152
|
+
version_requirements: !ruby/object:Gem::Requirement
|
153
|
+
none: false
|
154
|
+
requirements:
|
155
|
+
- - ! '>='
|
156
|
+
- !ruby/object:Gem::Version
|
157
|
+
version: '0'
|
158
|
+
- !ruby/object:Gem::Dependency
|
159
|
+
name: rspec-rails
|
160
|
+
requirement: !ruby/object:Gem::Requirement
|
161
|
+
none: false
|
162
|
+
requirements:
|
163
|
+
- - ! '>='
|
164
|
+
- !ruby/object:Gem::Version
|
165
|
+
version: '0'
|
166
|
+
type: :development
|
167
|
+
prerelease: false
|
168
|
+
version_requirements: !ruby/object:Gem::Requirement
|
169
|
+
none: false
|
170
|
+
requirements:
|
171
|
+
- - ! '>='
|
172
|
+
- !ruby/object:Gem::Version
|
173
|
+
version: '0'
|
174
|
+
- !ruby/object:Gem::Dependency
|
175
|
+
name: rspec
|
176
|
+
requirement: !ruby/object:Gem::Requirement
|
177
|
+
none: false
|
178
|
+
requirements:
|
179
|
+
- - ! '>='
|
180
|
+
- !ruby/object:Gem::Version
|
181
|
+
version: '0'
|
182
|
+
type: :development
|
183
|
+
prerelease: false
|
184
|
+
version_requirements: !ruby/object:Gem::Requirement
|
185
|
+
none: false
|
186
|
+
requirements:
|
187
|
+
- - ! '>='
|
188
|
+
- !ruby/object:Gem::Version
|
189
|
+
version: '0'
|
142
190
|
description: A simple way to add proper auto generated documentation - that can be
|
143
191
|
displayed with swagger - to your inline described grape API
|
144
192
|
email: tim.vandecasteele@gmail.com
|
@@ -158,40 +206,10 @@ files:
|
|
158
206
|
- VERSION
|
159
207
|
- grape-swagger.gemspec
|
160
208
|
- lib/grape-swagger.rb
|
161
|
-
-
|
162
|
-
-
|
163
|
-
-
|
164
|
-
-
|
165
|
-
- test/dummy/app/controllers/application_controller.rb
|
166
|
-
- test/dummy/app/helpers/application_helper.rb
|
167
|
-
- test/dummy/app/mailers/.gitkeep
|
168
|
-
- test/dummy/app/models/.gitkeep
|
169
|
-
- test/dummy/app/views/layouts/application.html.erb
|
170
|
-
- test/dummy/config.ru
|
171
|
-
- test/dummy/config/application.rb
|
172
|
-
- test/dummy/config/boot.rb
|
173
|
-
- test/dummy/config/database.yml
|
174
|
-
- test/dummy/config/environment.rb
|
175
|
-
- test/dummy/config/environments/development.rb
|
176
|
-
- test/dummy/config/environments/production.rb
|
177
|
-
- test/dummy/config/environments/test.rb
|
178
|
-
- test/dummy/config/initializers/backtrace_silencers.rb
|
179
|
-
- test/dummy/config/initializers/inflections.rb
|
180
|
-
- test/dummy/config/initializers/mime_types.rb
|
181
|
-
- test/dummy/config/initializers/secret_token.rb
|
182
|
-
- test/dummy/config/initializers/session_store.rb
|
183
|
-
- test/dummy/config/initializers/wrap_parameters.rb
|
184
|
-
- test/dummy/config/locales/en.yml
|
185
|
-
- test/dummy/config/routes.rb
|
186
|
-
- test/dummy/lib/assets/.gitkeep
|
187
|
-
- test/dummy/log/.gitkeep
|
188
|
-
- test/dummy/public/404.html
|
189
|
-
- test/dummy/public/422.html
|
190
|
-
- test/dummy/public/500.html
|
191
|
-
- test/dummy/public/favicon.ico
|
192
|
-
- test/dummy/script/rails
|
193
|
-
- test/grape-swagger_test.rb
|
194
|
-
- test/test_helper.rb
|
209
|
+
- spec/grape-swagger_spec.rb
|
210
|
+
- spec/non_default_api_spec.rb
|
211
|
+
- spec/simple_mounted_api_spec.rb
|
212
|
+
- spec/spec_helper.rb
|
195
213
|
homepage: http://github.com/tim-vandecasteele/grape-swagger
|
196
214
|
licenses:
|
197
215
|
- MIT
|
@@ -207,7 +225,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
207
225
|
version: '0'
|
208
226
|
segments:
|
209
227
|
- 0
|
210
|
-
hash:
|
228
|
+
hash: -2449825622916780559
|
211
229
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
212
230
|
none: false
|
213
231
|
requirements:
|