gris 0.0.2 → 0.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/gris.rb +4 -11
- data/lib/gris/{generators/templates/scaffold/app.rb → application.rb} +13 -26
- data/lib/gris/application/configuration.rb +16 -0
- data/lib/gris/generators/api_generator.rb +32 -1
- data/lib/gris/generators/templates/api/app/{apis → endpoints}/%name_tableize%_endpoint.rb.tt +0 -0
- data/lib/gris/generators/templates/api/spec/{apis → endpoints}/%name_tableize%_endpoint_spec.rb.tt +0 -0
- data/lib/gris/generators/templates/scaffold/.env.test.tt +1 -0
- data/lib/gris/generators/templates/scaffold/.env.tt +1 -0
- data/lib/gris/generators/templates/scaffold/{.Procfile.tt → Procfile} +0 -0
- data/lib/gris/generators/templates/scaffold/Rakefile +1 -1
- data/lib/gris/generators/templates/scaffold/app/endpoints/application_endpoint.rb +22 -0
- data/lib/gris/generators/templates/scaffold/app/presenters/root_presenter.rb +1 -3
- data/lib/gris/generators/templates/scaffold/config.ru.tt +2 -5
- data/lib/gris/generators/templates/scaffold/config/application.rb.tt +11 -0
- data/lib/gris/generators/templates/scaffold/config/boot.rb +16 -0
- data/lib/gris/generators/templates/scaffold/spec/{apis → endpoints}/cors_spec.rb +1 -0
- data/lib/gris/generators/templates/scaffold/spec/spec_helper.rb +2 -1
- data/lib/gris/generators/templates/scaffold/spec/support/app_helper.rb.tt +10 -0
- data/lib/gris/grape_extensions/authentication_helpers.rb +21 -0
- data/lib/gris/grape_extensions/error_helpers.rb +10 -0
- data/lib/gris/middleware/{app_monitor.rb → health.rb} +1 -1
- data/lib/gris/public/errors/404.html +11 -0
- data/lib/gris/public/errors/500.html +11 -0
- data/lib/gris/version.rb +1 -1
- data/lib/tasks/db.rake +1 -1
- data/spec/generators/api_generator_spec.rb +2 -2
- data/spec/generators/scaffold_generator_spec.rb +7 -15
- data/spec/grape_extensions/error_helpers_spec.rb +20 -0
- data/spec/support/spec_api_error_helper.rb +11 -0
- metadata +22 -11
- data/lib/gris/generators/templates/scaffold/app/apis/application_endpoint.rb +0 -9
- data/lib/gris/generators/templates/scaffold/spec/support/app_helper.rb +0 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8e98e164c3934c02af0e32ffbee5f545cd58c7d8
|
4
|
+
data.tar.gz: 6260220164c8fbf9e56263fa810cb11940533904
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bc2196d45fc7efb6850c5c70bdb8797d9ee4a8979df5d48590fae7e0310c80a2f244b41827b6eca8ffc3f35c0b55791fd967b75eb1c0fa4c9f40999dce38fa15
|
7
|
+
data.tar.gz: ad0394f1f83f04b373f3b955849c5111290b968658563725c91b6b6b16d89d44516b909f887192864ef28829374091db37f89ec914625e3dd45f1cf85fbc5486
|
data/Gemfile.lock
CHANGED
data/lib/gris.rb
CHANGED
@@ -11,10 +11,13 @@ require 'roar/json'
|
|
11
11
|
require 'roar/json/hal'
|
12
12
|
|
13
13
|
# require internal files
|
14
|
+
require 'gris/application'
|
14
15
|
require 'gris/deprecations'
|
15
16
|
require 'gris/grape_extensions/crud_helpers'
|
17
|
+
require 'gris/grape_extensions/error_helpers'
|
18
|
+
require 'gris/grape_extensions/authentication_helpers'
|
16
19
|
require 'gris/identity'
|
17
|
-
require 'gris/middleware/
|
20
|
+
require 'gris/middleware/health'
|
18
21
|
require 'gris/output_formatters/paginated_presenter'
|
19
22
|
require 'gris/output_formatters/presenter'
|
20
23
|
require 'gris/setup'
|
@@ -25,13 +28,3 @@ if defined?(Rake)
|
|
25
28
|
load 'tasks/routes.rake'
|
26
29
|
load 'tasks/db.rake'
|
27
30
|
end
|
28
|
-
|
29
|
-
module Gris
|
30
|
-
class << self
|
31
|
-
def initialize
|
32
|
-
Gris::Deprecations.initialization_checks
|
33
|
-
end
|
34
|
-
end
|
35
|
-
end
|
36
|
-
|
37
|
-
Gris.initialize
|
@@ -1,44 +1,31 @@
|
|
1
|
-
|
2
|
-
require 'bundler/setup'
|
3
|
-
Bundler.setup(:default)
|
1
|
+
require 'active_support/configurable'
|
4
2
|
|
5
|
-
|
6
|
-
|
7
|
-
|
3
|
+
module Gris
|
4
|
+
class Application
|
5
|
+
include ActiveSupport::Configurable
|
6
|
+
config_accessor :use_health_middleware
|
8
7
|
|
9
|
-
# load environment
|
10
|
-
Gris.load_environment
|
11
|
-
|
12
|
-
# autoload initalizers
|
13
|
-
Dir['./config/initializers/**/*.rb'].map { |file| require file }
|
14
|
-
|
15
|
-
# load middleware configs
|
16
|
-
Dir['./config/middleware/**/*.rb'].map { |file| require file }
|
17
|
-
|
18
|
-
# autoload app
|
19
|
-
relative_load_paths = %w(app/apis app/presenters app/models app/workers lib)
|
20
|
-
ActiveSupport::Dependencies.autoload_paths += relative_load_paths
|
21
|
-
|
22
|
-
module Application
|
23
|
-
class Service
|
24
8
|
def initialize
|
9
|
+
Gris::Deprecations.initialization_checks
|
25
10
|
@filenames = ['', '.html', 'index.html', '/index.html']
|
26
11
|
@rack_static = ::Rack::Static.new(
|
27
|
-
|
28
|
-
|
29
|
-
|
12
|
+
-> { [404, {}, []] },
|
13
|
+
root: File.expand_path('../public', __FILE__),
|
14
|
+
urls: ['/']
|
30
15
|
)
|
31
16
|
end
|
32
17
|
|
33
|
-
def self.instance
|
18
|
+
def self.instance(config = {})
|
34
19
|
@instance ||= Rack::Builder.new do
|
20
|
+
use ActiveRecord::ConnectionAdapters::ConnectionManagement
|
21
|
+
use Gris::Middleware::Health unless config[:use_health_middleware] == false
|
35
22
|
use Rack::Cors do
|
36
23
|
allow do
|
37
24
|
origins '*'
|
38
25
|
resource '*', headers: :any, methods: :get
|
39
26
|
end
|
40
27
|
end
|
41
|
-
run Application
|
28
|
+
run Gris::Application.new
|
42
29
|
end.to_app
|
43
30
|
end
|
44
31
|
|
@@ -19,12 +19,43 @@ module Gris
|
|
19
19
|
'.'
|
20
20
|
end
|
21
21
|
|
22
|
+
def append_endpoint_to_application_endpoint
|
23
|
+
say 'Mounting new endpoint on ApplicationEndpoint.'
|
24
|
+
insert_into_file './app/endpoints/application_endpoint.rb', after: "# Additional mounted endpoints\n" do
|
25
|
+
text = " mount #{name.classify.pluralize}Endpoint\n"
|
26
|
+
text
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
def append_endpoint_links_to_root_presenter
|
31
|
+
say 'Appending links to RootPresenter.'
|
32
|
+
insert_into_file './app/presenters/root_presenter.rb', after: "# Additional endpoint links\n" do
|
33
|
+
text = "\n"
|
34
|
+
text << " link :#{name_tableize} do |opts|\n"
|
35
|
+
text << " {\n"
|
36
|
+
text << ' href: "#{base_url(opts)}/'
|
37
|
+
text << "#{name_tableize}{?page,size}\",\n"
|
38
|
+
text << " templated: true\n"
|
39
|
+
text << " }\n"
|
40
|
+
text << " end\n"
|
41
|
+
text << "\n"
|
42
|
+
text << " link :#{name_underscore} do |opts|\n"
|
43
|
+
text << " {\n"
|
44
|
+
text << ' href: "#{base_url(opts)}/'
|
45
|
+
text << "#{name_tableize}{id}\",\n"
|
46
|
+
text << " templated: true\n"
|
47
|
+
text << " }\n"
|
48
|
+
text << " end\n"
|
49
|
+
text << "\n"
|
50
|
+
text
|
51
|
+
end
|
52
|
+
end
|
53
|
+
|
22
54
|
def api
|
23
55
|
self.class.source_root "#{File.dirname(__FILE__)}/templates/api"
|
24
56
|
say 'Generating api...'
|
25
57
|
directory '.', output_directory
|
26
58
|
say 'API files created!', :green
|
27
|
-
say 'Note that you will need to mount this new endpoint in your ApplicationEndpoint.', :green
|
28
59
|
end
|
29
60
|
end
|
30
61
|
end
|
data/lib/gris/generators/templates/api/app/{apis → endpoints}/%name_tableize%_endpoint.rb.tt
RENAMED
File without changes
|
data/lib/gris/generators/templates/api/spec/{apis → endpoints}/%name_tableize%_endpoint_spec.rb.tt
RENAMED
File without changes
|
File without changes
|
@@ -0,0 +1,22 @@
|
|
1
|
+
class ApplicationEndpoint < Grape::API
|
2
|
+
format :json
|
3
|
+
formatter :json, Grape::Formatter::Roar
|
4
|
+
|
5
|
+
helpers do
|
6
|
+
include Gris::AuthenticationHelpers
|
7
|
+
end
|
8
|
+
|
9
|
+
# Adds a simple environment variable based
|
10
|
+
# token authentication scheme to your endpoints.
|
11
|
+
# Alternatively, this token_authentication!
|
12
|
+
# method can be added to inddividual endpoints.
|
13
|
+
#
|
14
|
+
before do
|
15
|
+
token_authentication!
|
16
|
+
end
|
17
|
+
|
18
|
+
desc 'Get the Root API Endpoint'
|
19
|
+
get do
|
20
|
+
present self, with: RootPresenter
|
21
|
+
end
|
22
|
+
end
|
@@ -1,6 +1,3 @@
|
|
1
|
-
require '
|
1
|
+
require File.expand_path('../config/application.rb', __FILE__)
|
2
2
|
|
3
|
-
|
4
|
-
use Gris::Middleware::AppMonitor
|
5
|
-
|
6
|
-
run Application::Service.instance
|
3
|
+
run <%= app_name.classify %>::Application.instance
|
@@ -0,0 +1,16 @@
|
|
1
|
+
# load bundler
|
2
|
+
require 'bundler/setup'
|
3
|
+
Bundler.setup(:default)
|
4
|
+
|
5
|
+
require 'gris/setup'
|
6
|
+
Bundler.require(:default, Gris.env.to_sym)
|
7
|
+
|
8
|
+
# load environment
|
9
|
+
Gris.load_environment
|
10
|
+
|
11
|
+
# autoload initalizers
|
12
|
+
Dir['./config/initializers/**/*.rb'].map { |file| require file }
|
13
|
+
|
14
|
+
# autoload app
|
15
|
+
relative_load_paths = %w(app/endpoints app/presenters app/models)
|
16
|
+
ActiveSupport::Dependencies.autoload_paths += relative_load_paths
|
@@ -4,7 +4,8 @@ require 'webmock/rspec'
|
|
4
4
|
require 'rack/test'
|
5
5
|
require 'gris/rspec_extensions/response_helpers'
|
6
6
|
|
7
|
-
require '
|
7
|
+
require File.expand_path('../../config/application', __FILE__)
|
8
|
+
|
8
9
|
# Requires supporting ruby files with custom matchers and macros, etc,
|
9
10
|
# in spec/support/ and its subdirectories.
|
10
11
|
Dir['./spec/support/**/*.rb'].each { |f| require f }
|
@@ -0,0 +1,10 @@
|
|
1
|
+
shared_context 'with a running app' do
|
2
|
+
let(:app) { <%= app_name.classify %>::Application.instance }
|
3
|
+
end
|
4
|
+
|
5
|
+
shared_context 'with token authorization' do
|
6
|
+
before(:each) do
|
7
|
+
permitted_token = ENV['PERMITTED_TOKENS'].dup.gsub!(/[\[\]]/,'').split(/\s*,\s*/).first if ENV['PERMITTED_TOKENS']
|
8
|
+
header 'Http-Authorization', permitted_token
|
9
|
+
end
|
10
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
module Gris
|
2
|
+
module AuthenticationHelpers
|
3
|
+
def token_authentication!
|
4
|
+
error!('Forbidden', 401) unless permit_by_headers || permit_by_params
|
5
|
+
end
|
6
|
+
|
7
|
+
private
|
8
|
+
|
9
|
+
def permit_by_headers
|
10
|
+
permitted_tokens.include? request.headers['Http-Authorization'] if request.headers['Http-Authorization']
|
11
|
+
end
|
12
|
+
|
13
|
+
def permit_by_params
|
14
|
+
permitted_tokens.include? params[:token] if params[:token]
|
15
|
+
end
|
16
|
+
|
17
|
+
def permitted_tokens
|
18
|
+
ENV['PERMITTED_TOKENS']
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,10 @@
|
|
1
|
+
module Gris
|
2
|
+
module ErrorHelpers
|
3
|
+
def error!(message, status, options = nil)
|
4
|
+
message = { error: message }.merge(options.is_a?(String) ? { text: options } : options) if options
|
5
|
+
throw :error, message: message, status: status
|
6
|
+
end
|
7
|
+
|
8
|
+
Grape::Endpoint.send :include, self if defined?(Grape)
|
9
|
+
end
|
10
|
+
end
|
data/lib/gris/version.rb
CHANGED
data/lib/tasks/db.rake
CHANGED
@@ -12,7 +12,7 @@ describe Gris::Generators::ApiGenerator do
|
|
12
12
|
|
13
13
|
describe 'app' do
|
14
14
|
it 'creates an endpoint class' do
|
15
|
-
expected_api_file = File.join(generator_tmp_directory, 'app/
|
15
|
+
expected_api_file = File.join(generator_tmp_directory, 'app/endpoints/foos_endpoint.rb')
|
16
16
|
api_code = File.read(expected_api_file)
|
17
17
|
expect(api_code).to match(/class FoosEndpoint/)
|
18
18
|
end
|
@@ -56,7 +56,7 @@ describe Gris::Generators::ApiGenerator do
|
|
56
56
|
|
57
57
|
describe 'spec' do
|
58
58
|
it 'creates an api spec' do
|
59
|
-
expected_api_file = File.join(generator_tmp_directory, 'spec/
|
59
|
+
expected_api_file = File.join(generator_tmp_directory, 'spec/endpoints/foos_endpoint_spec.rb')
|
60
60
|
api_code = File.read(expected_api_file)
|
61
61
|
expect(api_code).to match(/describe FoosEndpoint/)
|
62
62
|
end
|
@@ -41,9 +41,9 @@ describe Gris::Generators::ScaffoldGenerator do
|
|
41
41
|
expect(env_file).to match(/#{app_name}_development/)
|
42
42
|
end
|
43
43
|
|
44
|
-
it 'creates a
|
45
|
-
expect(File).to exist("#{app_path}
|
46
|
-
env_file = File.read("#{app_path}
|
44
|
+
it 'creates a Procfile file with puma ' do
|
45
|
+
expect(File).to exist("#{app_path}/Procfile")
|
46
|
+
env_file = File.read("#{app_path}/Procfile")
|
47
47
|
expect(env_file).to match(/web: bundle exec puma/)
|
48
48
|
end
|
49
49
|
|
@@ -69,11 +69,11 @@ describe Gris::Generators::ScaffoldGenerator do
|
|
69
69
|
end
|
70
70
|
|
71
71
|
it 'generates an application endpoint' do
|
72
|
-
expect(File).to exist("#{app_path}/app/
|
72
|
+
expect(File).to exist("#{app_path}/app/endpoints/application_endpoint.rb")
|
73
73
|
end
|
74
74
|
|
75
75
|
context 'application_endpoint' do
|
76
|
-
let(:application_api_file) { File.read("#{app_path}/app/
|
76
|
+
let(:application_api_file) { File.read("#{app_path}/app/endpoints/application_endpoint.rb") }
|
77
77
|
|
78
78
|
it 'the application endpoint inherits from Grape::API' do
|
79
79
|
expect(application_api_file).to match(/class ApplicationEndpoint < Grape::API/)
|
@@ -103,16 +103,8 @@ describe Gris::Generators::ScaffoldGenerator do
|
|
103
103
|
expect(root_presenter_file).to match(/module RootPresenter/)
|
104
104
|
end
|
105
105
|
|
106
|
-
it 'includes
|
107
|
-
expect(RootPresenter).to include(
|
108
|
-
end
|
109
|
-
|
110
|
-
it 'includes Roar::Hypermedia' do
|
111
|
-
expect(RootPresenter).to include(Roar::Hypermedia)
|
112
|
-
end
|
113
|
-
|
114
|
-
it 'includes Roar::JSON::HAL' do
|
115
|
-
expect(RootPresenter).to include(Roar::JSON::HAL)
|
106
|
+
it 'includes Gris::Presenter' do
|
107
|
+
expect(RootPresenter).to include(Gris::Presenter)
|
116
108
|
end
|
117
109
|
end
|
118
110
|
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
require 'gris/grape_extensions/error_helpers'
|
3
|
+
|
4
|
+
describe Gris::ErrorHelpers do
|
5
|
+
before do
|
6
|
+
@helper = SpecApiErrorHelper.new
|
7
|
+
end
|
8
|
+
context 'error with text' do
|
9
|
+
it 'does not wrap a grape error without text' do
|
10
|
+
@helper.error!('error', 400)
|
11
|
+
expect(@helper.message).to eq(message: 'error', status: 400)
|
12
|
+
expect(@helper.thrown).to eq(:error)
|
13
|
+
end
|
14
|
+
it 'wraps a grape error with text' do
|
15
|
+
@helper.error!('error', 400, 'text')
|
16
|
+
expect(@helper.message).to eq(message: { error: 'error', text: 'text' }, status: 400)
|
17
|
+
expect(@helper.thrown).to eq(:error)
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gris
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dylan Fareed
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-02-
|
11
|
+
date: 2015-02-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|
@@ -334,6 +334,8 @@ files:
|
|
334
334
|
- bin/gris
|
335
335
|
- gris.gemspec
|
336
336
|
- lib/gris.rb
|
337
|
+
- lib/gris/application.rb
|
338
|
+
- lib/gris/application/configuration.rb
|
337
339
|
- lib/gris/cli.rb
|
338
340
|
- lib/gris/deprecations.rb
|
339
341
|
- lib/gris/deprecations/gris_setup.rb
|
@@ -341,16 +343,15 @@ files:
|
|
341
343
|
- lib/gris/generators/api_generator.rb
|
342
344
|
- lib/gris/generators/migration_generator.rb
|
343
345
|
- lib/gris/generators/scaffold_generator.rb
|
344
|
-
- lib/gris/generators/templates/api/app/
|
346
|
+
- lib/gris/generators/templates/api/app/endpoints/%name_tableize%_endpoint.rb.tt
|
345
347
|
- lib/gris/generators/templates/api/app/models/%name_underscore%.rb.tt
|
346
348
|
- lib/gris/generators/templates/api/app/presenters/%name_tableize%_presenter.rb.tt
|
347
349
|
- lib/gris/generators/templates/api/app/presenters/%name_underscore%_presenter.rb.tt
|
348
|
-
- lib/gris/generators/templates/api/spec/
|
350
|
+
- lib/gris/generators/templates/api/spec/endpoints/%name_tableize%_endpoint_spec.rb.tt
|
349
351
|
- lib/gris/generators/templates/api/spec/fabricators/%name_tableize%_fabricator.rb.tt
|
350
352
|
- lib/gris/generators/templates/api/spec/models/%name_underscore%_spec.rb.tt
|
351
353
|
- lib/gris/generators/templates/create_table_migration/%migration_filename%.rb.tt
|
352
354
|
- lib/gris/generators/templates/migration/%migration_filename%.rb.tt
|
353
|
-
- lib/gris/generators/templates/scaffold/.Procfile.tt
|
354
355
|
- lib/gris/generators/templates/scaffold/.env.test.tt
|
355
356
|
- lib/gris/generators/templates/scaffold/.env.tt
|
356
357
|
- lib/gris/generators/templates/scaffold/.gitignore.tt
|
@@ -359,25 +360,31 @@ files:
|
|
359
360
|
- lib/gris/generators/templates/scaffold/.ruby-gemset.tt
|
360
361
|
- lib/gris/generators/templates/scaffold/.ruby-version.tt
|
361
362
|
- lib/gris/generators/templates/scaffold/Gemfile.tt
|
363
|
+
- lib/gris/generators/templates/scaffold/Procfile
|
362
364
|
- lib/gris/generators/templates/scaffold/README.md.tt
|
363
365
|
- lib/gris/generators/templates/scaffold/Rakefile
|
364
|
-
- lib/gris/generators/templates/scaffold/app.rb
|
365
|
-
- lib/gris/generators/templates/scaffold/app/apis/application_endpoint.rb
|
366
|
+
- lib/gris/generators/templates/scaffold/app/endpoints/application_endpoint.rb
|
366
367
|
- lib/gris/generators/templates/scaffold/app/presenters/root_presenter.rb
|
367
368
|
- lib/gris/generators/templates/scaffold/config.ru.tt
|
369
|
+
- lib/gris/generators/templates/scaffold/config/application.rb.tt
|
370
|
+
- lib/gris/generators/templates/scaffold/config/boot.rb
|
368
371
|
- lib/gris/generators/templates/scaffold/config/database.yml.tt
|
369
372
|
- lib/gris/generators/templates/scaffold/config/initializers/active_record.rb
|
370
373
|
- lib/gris/generators/templates/scaffold/db/schema.rb
|
371
374
|
- lib/gris/generators/templates/scaffold/public/errors/404.html
|
372
375
|
- lib/gris/generators/templates/scaffold/public/errors/500.html
|
373
|
-
- lib/gris/generators/templates/scaffold/spec/
|
376
|
+
- lib/gris/generators/templates/scaffold/spec/endpoints/cors_spec.rb
|
374
377
|
- lib/gris/generators/templates/scaffold/spec/spec_helper.rb
|
375
|
-
- lib/gris/generators/templates/scaffold/spec/support/app_helper.rb
|
378
|
+
- lib/gris/generators/templates/scaffold/spec/support/app_helper.rb.tt
|
379
|
+
- lib/gris/grape_extensions/authentication_helpers.rb
|
376
380
|
- lib/gris/grape_extensions/crud_helpers.rb
|
381
|
+
- lib/gris/grape_extensions/error_helpers.rb
|
377
382
|
- lib/gris/identity.rb
|
378
|
-
- lib/gris/middleware/
|
383
|
+
- lib/gris/middleware/health.rb
|
379
384
|
- lib/gris/output_formatters/paginated_presenter.rb
|
380
385
|
- lib/gris/output_formatters/presenter.rb
|
386
|
+
- lib/gris/public/errors/404.html
|
387
|
+
- lib/gris/public/errors/500.html
|
381
388
|
- lib/gris/rspec_extensions/response_helpers.rb
|
382
389
|
- lib/gris/setup.rb
|
383
390
|
- lib/gris/version.rb
|
@@ -387,8 +394,10 @@ files:
|
|
387
394
|
- spec/generators/migration_generator_spec.rb
|
388
395
|
- spec/generators/scaffold_generator_spec.rb
|
389
396
|
- spec/grape_extensions/crud_helpers_spec.rb
|
397
|
+
- spec/grape_extensions/error_helpers_spec.rb
|
390
398
|
- spec/identity_spec.rb
|
391
399
|
- spec/spec_helper.rb
|
400
|
+
- spec/support/spec_api_error_helper.rb
|
392
401
|
- spec/support/spec_generators_helper.rb
|
393
402
|
- spec/version_spec.rb
|
394
403
|
homepage: http://github.com/dylanfareed/gris/
|
@@ -411,7 +420,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
411
420
|
version: '0'
|
412
421
|
requirements: []
|
413
422
|
rubyforge_project:
|
414
|
-
rubygems_version: 2.
|
423
|
+
rubygems_version: 2.2.2
|
415
424
|
signing_key:
|
416
425
|
specification_version: 4
|
417
426
|
summary: A simple api microservice generator.
|
@@ -420,7 +429,9 @@ test_files:
|
|
420
429
|
- spec/generators/migration_generator_spec.rb
|
421
430
|
- spec/generators/scaffold_generator_spec.rb
|
422
431
|
- spec/grape_extensions/crud_helpers_spec.rb
|
432
|
+
- spec/grape_extensions/error_helpers_spec.rb
|
423
433
|
- spec/identity_spec.rb
|
424
434
|
- spec/spec_helper.rb
|
435
|
+
- spec/support/spec_api_error_helper.rb
|
425
436
|
- spec/support/spec_generators_helper.rb
|
426
437
|
- spec/version_spec.rb
|