grape-swagger 0.1.0 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- 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:
|