model_base_generators 0.3.2 → 0.3.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (96) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +23 -0
  3. data/example/.gitignore +1 -0
  4. data/example/.model_base/controllers +5 -0
  5. data/example/.rubocop.yml +31 -0
  6. data/example/Gemfile +1 -1
  7. data/example/Gemfile.lock +14 -1
  8. data/example/app/controllers/concerns/authentication.rb +2 -2
  9. data/example/app/models/ability.rb +1 -2
  10. data/example/app/models/issue.rb +0 -1
  11. data/example/app/models/user.rb +3 -2
  12. data/example/app/views/issue_comments/_issue_comment.json.jbuilder +1 -1
  13. data/example/app/views/issue_comments/_table.html.erb +1 -1
  14. data/example/app/views/issue_comments/index.html.erb +1 -1
  15. data/example/app/views/issue_comments/index.json.jbuilder +1 -1
  16. data/example/app/views/issue_comments/show.json.jbuilder +1 -1
  17. data/example/app/views/issues/_table.html.erb +1 -1
  18. data/example/app/views/issues/index.html.erb +1 -1
  19. data/example/app/views/phases/_table.html.erb +1 -1
  20. data/example/app/views/phases/index.html.erb +1 -1
  21. data/example/app/views/project_assignments/_table.html.erb +1 -1
  22. data/example/app/views/project_assignments/index.html.erb +1 -1
  23. data/example/app/views/projects/_table.html.erb +1 -1
  24. data/example/app/views/projects/index.html.erb +1 -1
  25. data/example/config/application.rb +1 -1
  26. data/example/config/environments/development.rb +1 -1
  27. data/example/config/environments/production.rb +2 -2
  28. data/example/config/environments/test.rb +1 -1
  29. data/example/config/initializers/pretty_validation.rb +1 -1
  30. data/example/config/puma.rb +3 -3
  31. data/example/db/schema.rb +9 -9
  32. data/example/spec/controllers/issue_comments_controller_spec.rb +73 -61
  33. data/example/spec/controllers/issues_controller_spec.rb +71 -59
  34. data/example/spec/controllers/phases_controller_spec.rb +72 -60
  35. data/example/spec/controllers/project_assignments_controller_spec.rb +72 -60
  36. data/example/spec/controllers/projects_controller_spec.rb +70 -58
  37. data/example/spec/factories/issue_comments.rb +1 -1
  38. data/example/spec/factories/issues.rb +1 -1
  39. data/example/spec/factories/phases.rb +3 -3
  40. data/example/spec/factories/project_assignments.rb +2 -2
  41. data/example/spec/factories/projects.rb +1 -1
  42. data/example/spec/factories/users.rb +2 -2
  43. data/example/spec/rails_helper.rb +1 -1
  44. data/example/spec/requests/issue_comments_spec.rb +4 -4
  45. data/example/spec/routing/issue_comments_routing_spec.rb +18 -20
  46. data/example/spec/routing/issues_routing_spec.rb +18 -20
  47. data/example/spec/routing/phases_routing_spec.rb +18 -20
  48. data/example/spec/routing/project_assignments_routing_spec.rb +18 -20
  49. data/example/spec/routing/projects_routing_spec.rb +18 -20
  50. data/example/spec/spec_helper.rb +47 -49
  51. data/example/spec/support/controller_macros.rb +3 -3
  52. data/example/spec/support/devise.rb +2 -2
  53. data/example/spec/support/time_match_support.rb +9 -0
  54. data/example/spec/views/issue_comments/edit.html.erb_spec.rb +12 -11
  55. data/example/spec/views/issue_comments/index.html.erb_spec.rb +12 -12
  56. data/example/spec/views/issue_comments/new.html.erb_spec.rb +12 -11
  57. data/example/spec/views/issue_comments/show.html.erb_spec.rb +7 -6
  58. data/example/spec/views/issues/edit.html.erb_spec.rb +12 -11
  59. data/example/spec/views/issues/index.html.erb_spec.rb +13 -13
  60. data/example/spec/views/issues/new.html.erb_spec.rb +12 -11
  61. data/example/spec/views/issues/show.html.erb_spec.rb +6 -5
  62. data/example/spec/views/phases/edit.html.erb_spec.rb +9 -8
  63. data/example/spec/views/phases/index.html.erb_spec.rb +12 -12
  64. data/example/spec/views/phases/new.html.erb_spec.rb +9 -8
  65. data/example/spec/views/phases/show.html.erb_spec.rb +8 -7
  66. data/example/spec/views/project_assignments/edit.html.erb_spec.rb +10 -9
  67. data/example/spec/views/project_assignments/index.html.erb_spec.rb +11 -11
  68. data/example/spec/views/project_assignments/new.html.erb_spec.rb +10 -9
  69. data/example/spec/views/project_assignments/show.html.erb_spec.rb +8 -7
  70. data/example/spec/views/projects/edit.html.erb_spec.rb +9 -8
  71. data/example/spec/views/projects/index.html.erb_spec.rb +10 -10
  72. data/example/spec/views/projects/new.html.erb_spec.rb +9 -8
  73. data/example/spec/views/projects/show.html.erb_spec.rb +5 -4
  74. data/exe/model_base +33 -0
  75. data/lib/generators/model_base/install_generator.rb +1 -0
  76. data/lib/generators/model_base/templates/app/controllers/concerns/authentication.rb +2 -2
  77. data/lib/generators/model_base/templates/spec/support/time_match_support.rb +9 -0
  78. data/lib/model_base/column_attribute.rb +2 -2
  79. data/lib/model_base/config.rb +6 -0
  80. data/lib/model_base/generators/model_support.rb +8 -0
  81. data/lib/model_base/generators/rails/scaffold_controller.rb +25 -0
  82. data/lib/model_base/generators.rb +33 -0
  83. data/lib/model_base/meta_model.rb +2 -2
  84. data/lib/model_base/railtie.rb +1 -1
  85. data/lib/model_base/version.rb +1 -1
  86. data/lib/model_base.rb +24 -13
  87. data/lib/templates/erb/scaffold/_table.html.erb +1 -1
  88. data/lib/templates/erb/scaffold/index.html.erb +1 -1
  89. data/lib/templates/factory_girl/factory.rb +1 -1
  90. data/lib/templates/rspec/scaffold/controller_spec.rb +71 -59
  91. data/lib/templates/rspec/scaffold/edit_spec.rb +5 -4
  92. data/lib/templates/rspec/scaffold/index_spec.rb +8 -8
  93. data/lib/templates/rspec/scaffold/new_spec.rb +5 -4
  94. data/lib/templates/rspec/scaffold/routing_spec.rb +18 -20
  95. data/lib/templates/rspec/scaffold/show_spec.rb +4 -3
  96. metadata +11 -3
@@ -25,36 +25,34 @@ require 'rails_helper'
25
25
 
26
26
  <% module_namespacing do -%>
27
27
  RSpec.describe <%= controller_class_name %>Controller, <%= type_metatag(:controller) %> do
28
-
29
28
  <%-
30
29
  required_ref_attrs = model.columns_for(:params).select{|attr| attr.reference && attr.required? }
31
30
  required_data_attrs = model.columns_for(:params).select{|attr| !attr.reference && attr.required? }
32
31
  -%>
33
32
  <%= model.factory_girl_let_definitions %>
34
- before{ devise_user_login(user) }
35
-
36
33
  <%-
37
34
  unless required_ref_attrs.empty?
38
35
  extra_attributes_to_merge = ".merge(%s)" % required_ref_attrs.map{|attr| "#{attr.name}: #{attr.ref_model.full_resource_name}.id"}.join(', ')
39
36
  extra_attributes_for_factory = ", %s" % required_ref_attrs.map{|attr| "#{attr.reference.name}: #{attr.ref_model.full_resource_name}"}.join(', ')
40
37
  end
41
38
  -%>
42
- let(:<%= file_name %>){ FactoryGirl.create(:<%= file_name %><%= extra_attributes_for_factory %>) }
39
+ let(:<%= file_name %>) { FactoryGirl.create(:<%= file_name %><%= extra_attributes_for_factory %>) }
40
+ before { devise_user_login(user) }
43
41
 
44
42
  # This should return the minimal set of attributes required to create a valid
45
43
  # <%= class_name %>. As you add validations to <%= class_name %>, be sure to
46
44
  # adjust the attributes here as well.
47
- let(:valid_parameters) {
45
+ let(:valid_parameters) do
48
46
  FactoryGirl.attributes_for(:<%= file_name %>)<%= extra_attributes_to_merge %>
49
- }
47
+ end
50
48
 
51
- let(:invalid_parameters) {
49
+ let(:invalid_parameters) do
52
50
  <%- if !required_data_attrs.empty? -%>
53
51
  valid_parameters.symbolize_keys.merge(<%= required_data_attrs.first.name %>: '')
54
52
  <%- else -%>
55
- skip("Add a hash of attributes invalid for your model")
53
+ skip('Add a hash of attributes invalid for your model')
56
54
  <%- end -%>
57
- }
55
+ end
58
56
 
59
57
  # This should return the minimal set of values that should be in the session
60
58
  # in order to pass any filters (e.g. authentication) defined in
@@ -62,141 +60,155 @@ RSpec.describe <%= controller_class_name %>Controller, <%= type_metatag(:control
62
60
  let(:valid_session) { {} }
63
61
 
64
62
  <% unless options[:singleton] -%>
65
- describe "GET #index" do
66
- it "assigns all <%= table_name.pluralize %> as @<%= table_name.pluralize %>" do
67
- get :index, params: {}, session: valid_session
63
+ describe 'GET #index' do
64
+ it 'assigns all <%= table_name.pluralize %> as @<%= table_name.pluralize %>' do
65
+ get :index, session: valid_session,
66
+ params: {}
68
67
  expect(assigns(:<%= table_name %>)).to eq([<%= file_name %>])
69
68
  end
70
69
  end
71
70
 
72
71
  <% end -%>
73
- describe "GET #show" do
74
- it "assigns the requested <%= file_name %> as @<%= file_name %>" do
72
+ describe 'GET #show' do
73
+ it 'assigns the requested <%= file_name %> as @<%= file_name %>' do
75
74
  <%= file_name %> # To create <%= file_name %>
76
- get :show, params: {:id => <%= file_name %>.to_param}, session: valid_session
75
+ get :show, session: valid_session,
76
+ params: { id: <%= file_name %>.to_param }
77
77
  expect(assigns(:<%= file_name %>)).to eq(<%= file_name %>)
78
78
  end
79
79
  end
80
80
 
81
- describe "GET #new" do
82
- it "assigns a new <%= file_name %> as @<%= file_name %>" do
83
- get :new, params: {}, session: valid_session
81
+ describe 'GET #new' do
82
+ it 'assigns a new <%= file_name %> as @<%= file_name %>' do
83
+ get :new, session: valid_session,
84
+ params: {}
84
85
  expect(assigns(:<%= file_name %>)).to be_a_new(<%= class_name %>)
85
86
  end
86
87
  end
87
88
 
88
- describe "GET #edit" do
89
- it "assigns the requested <%= file_name %> as @<%= file_name %>" do
89
+ describe 'GET #edit' do
90
+ it 'assigns the requested <%= file_name %> as @<%= file_name %>' do
90
91
  <%= file_name %> # To create <%= file_name %>
91
- get :edit, params: {:id => <%= file_name %>.to_param}, session: valid_session
92
+ get :edit, session: valid_session,
93
+ params: { id: <%= file_name %>.to_param }
92
94
  expect(assigns(:<%= file_name %>)).to eq(<%= file_name %>)
93
95
  end
94
96
  end
95
97
 
96
- describe "POST #create" do
97
- context "with valid params" do
98
- it "creates a new <%= class_name %>" do
98
+ describe 'POST #create' do
99
+ context 'with valid params' do
100
+ it 'creates a new <%= class_name %>' do
99
101
  expect {
100
- post :create, params: {:<%= file_name %> => valid_parameters}, session: valid_session
102
+ post :create, session: valid_session,
103
+ params: { <%= file_name %>: valid_parameters }
101
104
  }.to change(<%= class_name %>, :count).by(1)
102
105
  end
103
106
 
104
- it "assigns a newly created <%= file_name %> as @<%= file_name %>" do
105
- post :create, params: {:<%= file_name %> => valid_parameters}, session: valid_session
107
+ it 'assigns a newly created <%= file_name %> as @<%= file_name %>' do
108
+ post :create, session: valid_session,
109
+ params: { <%= file_name %>: valid_parameters }
106
110
  expect(assigns(:<%= file_name %>)).to be_a(<%= class_name %>)
107
111
  expect(assigns(:<%= file_name %>)).to be_persisted
108
112
  end
109
113
 
110
- it "redirects to the created <%= file_name %>" do
111
- post :create, params: {:<%= file_name %> => valid_parameters}, session: valid_session
114
+ it 'redirects to the created <%= file_name %>' do
115
+ post :create, session: valid_session,
116
+ params: { <%= file_name %>: valid_parameters }
112
117
  expect(response).to redirect_to(<%= class_name %>.last)
113
118
  end
114
119
  end
115
120
 
116
- context "with invalid params" do
117
- it "assigns a newly created but unsaved <%= file_name %> as @<%= file_name %>" do
118
- post :create, params: {:<%= file_name %> => invalid_parameters}, session: valid_session
121
+ context 'with invalid params' do
122
+ it 'assigns a newly created but unsaved <%= file_name %> as @<%= file_name %>' do
123
+ post :create, session: valid_session,
124
+ params: { <%= file_name %>: invalid_parameters }
119
125
  expect(assigns(:<%= file_name %>)).to be_a_new(<%= class_name %>)
120
126
  end
121
127
 
122
128
  it "re-renders the 'new' template" do
123
- post :create, params: {:<%= file_name %> => invalid_parameters}, session: valid_session
124
- expect(response).to render_template("new")
129
+ post :create, session: valid_session,
130
+ params: { <%= file_name %>: invalid_parameters }
131
+ expect(response).to render_template('new')
125
132
  end
126
133
  end
127
134
  end
128
135
 
129
- describe "PUT #update" do
130
- context "with valid params" do
136
+ describe 'PUT #update' do
137
+ context 'with valid params' do
131
138
  <%- if !required_data_attrs.empty? -%>
132
139
  <%- required_data_attrs.each do |required_data_attr| -%>
133
- let(:new_<%= required_data_attr.name %>){ <%= required_data_attr.new_attribute_exp %> }
140
+ let(:new_<%= required_data_attr.name %>) { <%= required_data_attr.new_attribute_exp %> }
134
141
  <%- end -%>
135
142
  <%- end -%>
136
-
137
- let(:new_parameters) {
143
+ let(:new_parameters) do
138
144
  <%- if !required_data_attrs.empty? -%>
139
145
  valid_parameters.merge(<%= required_data_attrs.map{|attr| "#{attr.name}: new_#{attr.name}"}.join(', ') %>)
140
146
  <%- else required_data_attrs.empty? -%>
141
- skip("Add a hash of attributes valid for your model")
147
+ skip('Add a hash of attributes valid for your model')
142
148
  <%- end -%>
143
- }
149
+ end
144
150
 
145
- it "updates the requested <%= file_name %>" do
151
+ it 'updates the requested <%= file_name %>' do
146
152
  <%= file_name %> # To create <%= file_name %>
147
- put :update, params: {:id => <%= file_name %>.to_param, :<%= file_name %> => new_parameters}, session: valid_session
153
+ put :update, session: valid_session,
154
+ params: { id: <%= file_name %>.to_param, <%= file_name %>: new_parameters }
148
155
  <%= file_name %>.reload
149
156
  <%- if !required_data_attrs.empty? -%>
150
157
  <%- required_data_attrs.each do |attr| -%>
151
158
  expect(<%= file_name %>.<%= attr.name %>).to eq new_<%= attr.name %>
152
159
  <%- end -%>
153
160
  <%- else -%>
154
- skip("Add assertions for updated state")
161
+ skip('Add assertions for updated state')
155
162
  <%- end -%>
156
163
  end
157
164
 
158
- it "assigns the requested <%= file_name %> as @<%= file_name %>" do
165
+ it 'assigns the requested <%= file_name %> as @<%= file_name %>' do
159
166
  <%= file_name %> # To create <%= file_name %>
160
- put :update, params: {:id => <%= file_name %>.to_param, :<%= file_name %> => new_parameters}, session: valid_session
167
+ put :update, session: valid_session,
168
+ params: { id: <%= file_name %>.to_param, <%= file_name %>: new_parameters }
161
169
  expect(assigns(:<%= file_name %>)).to eq(<%= file_name %>)
162
170
  end
163
171
 
164
- it "redirects to the <%= file_name %>" do
172
+ it 'redirects to the <%= file_name %>' do
165
173
  <%= file_name %> # To create <%= file_name %>
166
- put :update, params: {:id => <%= file_name %>.to_param, :<%= file_name %> => new_parameters}, session: valid_session
174
+ put :update, session: valid_session,
175
+ params: { id: <%= file_name %>.to_param, <%= file_name %>: new_parameters }
167
176
  expect(response).to redirect_to(<%= file_name %>)
168
177
  end
169
178
  end
170
179
 
171
- context "with invalid params" do
172
- it "assigns the <%= file_name %> as @<%= file_name %>" do
180
+ context 'with invalid params' do
181
+ it 'assigns the <%= file_name %> as @<%= file_name %>' do
173
182
  <%= file_name %> # To create <%= file_name %>
174
- put :update, params: {:id => <%= file_name %>.to_param, :<%= file_name %> => invalid_parameters}, session: valid_session
183
+ put :update, session: valid_session,
184
+ params: { id: <%= file_name %>.to_param, <%= file_name %>: invalid_parameters }
175
185
  expect(assigns(:<%= file_name %>)).to eq(<%= file_name %>)
176
186
  end
177
187
 
178
188
  it "re-renders the 'edit' template" do
179
189
  <%= file_name %> # To create <%= file_name %>
180
- put :update, params: {:id => <%= file_name %>.to_param, :<%= file_name %> => invalid_parameters}, session: valid_session
181
- expect(response).to render_template("edit")
190
+ put :update, session: valid_session,
191
+ params: { id: <%= file_name %>.to_param, <%= file_name %>: invalid_parameters }
192
+ expect(response).to render_template('edit')
182
193
  end
183
194
  end
184
195
  end
185
196
 
186
- describe "DELETE #destroy" do
187
- it "destroys the requested <%= file_name %>" do
197
+ describe 'DELETE #destroy' do
198
+ it 'destroys the requested <%= file_name %>' do
188
199
  <%= file_name %> # To create <%= file_name %>
189
200
  expect {
190
- delete :destroy, params: {:id => <%= file_name %>.to_param}, session: valid_session
201
+ delete :destroy, session: valid_session,
202
+ params: { id: <%= file_name %>.to_param }
191
203
  }.to change(<%= class_name %>, :count).by(-1)
192
204
  end
193
205
 
194
- it "redirects to the <%= table_name %> list" do
206
+ it 'redirects to the <%= table_name %> list' do
195
207
  <%= file_name %> # To create <%= file_name %>
196
- delete :destroy, params: {:id => <%= file_name %>.to_param}, session: valid_session
208
+ delete :destroy, session: valid_session,
209
+ params: { id: <%= file_name %>.to_param }
197
210
  expect(response).to redirect_to(<%= index_helper %>_url)
198
211
  end
199
212
  end
200
-
201
213
  end
202
214
  <% end -%>
@@ -1,15 +1,16 @@
1
1
  require 'rails_helper'
2
2
 
3
- RSpec.describe "<%= ns_table_name %>/edit", <%= type_metatag(:view) %> do
3
+ RSpec.describe '<%= ns_table_name %>/edit', <%= type_metatag(:view) %> do
4
4
  <%= model.factory_girl_let_definitions %>
5
+ <%= model.factory_girl_let_definition %>
5
6
  before(:each) do
6
- @<%= ns_file_name %> = assign(:<%= ns_file_name %>, <%= model.factory_girl_to :create %>)
7
+ assign(:<%= model.full_resource_name %>, <%= model.full_resource_name %>)
7
8
  end
8
9
 
9
- it "renders the edit <%= ns_file_name %> form" do
10
+ it 'renders the edit <%= model.full_resource_name %> form' do
10
11
  render
11
12
 
12
- assert_select "form[action=?][method=?]", <%= ns_file_name %>_path(@<%= ns_file_name %>), "post" do
13
+ assert_select 'form[action=?][method=?]', <%= model.full_resource_name %>_path(<%= model.full_resource_name %>), 'post' do
13
14
  <% model.columns_for(:form).each do |attribute| -%>
14
15
  <%= attribute.assert_select_exp %>
15
16
  <% end -%>
@@ -1,28 +1,28 @@
1
1
  require 'rails_helper'
2
2
 
3
3
  <% output_attributes = model.columns.reject{|attribute| [:datetime, :timestamp, :time, :date].index(attribute.type) } -%>
4
- RSpec.describe "<%= ns_table_name %>/index", <%= type_metatag(:view) %> do
4
+ RSpec.describe '<%= ns_table_name %>/index', <%= type_metatag(:view) %> do
5
5
  <%= model.factory_girl_let_definitions %>
6
6
  before(:each) do
7
7
  assign(:<%= table_name %>, [
8
8
  <% [1,2].each_with_index do |id, model_index| -%>
9
9
  <%- if tc = model.title_column -%>
10
- <%= model.factory_girl_to(:create, extra: {tc.name.to_sym => tc.sample_value(model_index + 1)}) %>,
10
+ <%= model.factory_girl_to(:create, extra: {tc.name.to_sym => tc.sample_value(model_index + 1)}) %>,
11
11
  <%- else -%>
12
- <%= model.factory_girl_to(:create, context: :spec_index, index: id, ) %>,
12
+ <%= model.factory_girl_to(:create, context: :spec_index, index: id, ) %>,
13
13
  <%- end -%>
14
14
  <% end -%>
15
- ])
15
+ ])
16
16
  end
17
17
 
18
- it "renders a list of <%= ns_table_name %>" do
18
+ it 'renders a list of <%= ns_table_name %>' do
19
19
  render
20
20
  <% model.columns_for(:spec_index).each do |attribute| -%>
21
21
  <%- if attribute.single_sample_only? -%>
22
- assert_select "tr>td", :text => <%= attribute.sample_string_exp %>, :count => 2
22
+ assert_select 'tr>td', text: <%= attribute.sample_string_exp %>, count: 2
23
23
  <%- else -%>
24
- assert_select "tr>td", :text => <%= attribute.sample_string_exp(1) %>, :count => 1
25
- assert_select "tr>td", :text => <%= attribute.sample_string_exp(2) %>, :count => 1
24
+ assert_select 'tr>td', text: <%= attribute.sample_string_exp(1) %>, count: 1
25
+ assert_select 'tr>td', text: <%= attribute.sample_string_exp(2) %>, count: 1
26
26
  <%- end -%>
27
27
  <% end -%>
28
28
  end
@@ -1,16 +1,17 @@
1
1
  require 'rails_helper'
2
2
 
3
3
  <% output_attributes = model.columns.reject{|attribute| [:datetime, :timestamp, :time, :date].index(attribute.type) } -%>
4
- RSpec.describe "<%= ns_table_name %>/new", <%= type_metatag(:view) %> do
4
+ RSpec.describe '<%= ns_table_name %>/new', <%= type_metatag(:view) %> do
5
5
  <%= model.factory_girl_let_definitions %>
6
+ <%= model.factory_girl_let_definition(action: :build) %>
6
7
  before(:each) do
7
- assign(:<%= ns_file_name %>, <%= model.factory_girl_to :build %>)
8
+ assign(:<%= model.full_resource_name %>, <%= model.full_resource_name %>)
8
9
  end
9
10
 
10
- it "renders new <%= ns_file_name %> form" do
11
+ it 'renders new <%= ns_file_name %> form' do
11
12
  render
12
13
 
13
- assert_select "form[action=?][method=?]", <%= index_helper %>_path, "post" do
14
+ assert_select 'form[action=?][method=?]', <%= index_helper %>_path, 'post' do
14
15
  <% model.columns_for(:form).each do |attribute| -%>
15
16
  <%= attribute.assert_select_exp %>
16
17
  <% end -%>
@@ -1,45 +1,43 @@
1
- require "rails_helper"
1
+ require 'rails_helper'
2
2
 
3
3
  <% module_namespacing do -%>
4
4
  RSpec.describe <%= controller_class_name %>Controller, <%= type_metatag(:routing) %> do
5
- describe "routing" do
6
-
5
+ describe 'routing' do
7
6
  <% unless options[:singleton] -%>
8
- it "routes to #index" do
9
- expect(:get => "/<%= ns_table_name %>").to route_to("<%= ns_table_name %>#index")
7
+ it 'routes to #index' do
8
+ expect(get: '/<%= ns_table_name %>').to route_to('<%= ns_table_name %>#index')
10
9
  end
11
10
 
12
11
  <% end -%>
13
- it "routes to #new" do
14
- expect(:get => "/<%= ns_table_name %>/new").to route_to("<%= ns_table_name %>#new")
12
+ it 'routes to #new' do
13
+ expect(get: '/<%= ns_table_name %>/new').to route_to('<%= ns_table_name %>#new')
15
14
  end
16
15
 
17
- it "routes to #show" do
18
- expect(:get => "/<%= ns_table_name %>/1").to route_to("<%= ns_table_name %>#show", :id => "1")
16
+ it 'routes to #show' do
17
+ expect(get: '/<%= ns_table_name %>/1').to route_to('<%= ns_table_name %>#show', id: '1')
19
18
  end
20
19
 
21
- it "routes to #edit" do
22
- expect(:get => "/<%= ns_table_name %>/1/edit").to route_to("<%= ns_table_name %>#edit", :id => "1")
20
+ it 'routes to #edit' do
21
+ expect(get: '/<%= ns_table_name %>/1/edit').to route_to('<%= ns_table_name %>#edit', id: '1')
23
22
  end
24
23
 
25
- it "routes to #create" do
26
- expect(:post => "/<%= ns_table_name %>").to route_to("<%= ns_table_name %>#create")
24
+ it 'routes to #create' do
25
+ expect(post: '/<%= ns_table_name %>').to route_to('<%= ns_table_name %>#create')
27
26
  end
28
27
 
29
- it "routes to #update via PUT" do
30
- expect(:put => "/<%= ns_table_name %>/1").to route_to("<%= ns_table_name %>#update", :id => "1")
28
+ it 'routes to #update via PUT' do
29
+ expect(put: '/<%= ns_table_name %>/1').to route_to('<%= ns_table_name %>#update', id: '1')
31
30
  end
32
31
 
33
32
  <% if Rails::VERSION::STRING > '4' -%>
34
- it "routes to #update via PATCH" do
35
- expect(:patch => "/<%= ns_table_name %>/1").to route_to("<%= ns_table_name %>#update", :id => "1")
33
+ it 'routes to #update via PATCH' do
34
+ expect(patch: '/<%= ns_table_name %>/1').to route_to('<%= ns_table_name %>#update', id: '1')
36
35
  end
37
36
 
38
37
  <% end -%>
39
- it "routes to #destroy" do
40
- expect(:delete => "/<%= ns_table_name %>/1").to route_to("<%= ns_table_name %>#destroy", :id => "1")
38
+ it 'routes to #destroy' do
39
+ expect(delete: '/<%= ns_table_name %>/1').to route_to('<%= ns_table_name %>#destroy', id: '1')
41
40
  end
42
-
43
41
  end
44
42
  end
45
43
  <% end -%>
@@ -1,12 +1,13 @@
1
1
  require 'rails_helper'
2
2
 
3
- RSpec.describe "<%= ns_table_name %>/show", <%= type_metatag(:view) %> do
3
+ RSpec.describe '<%= ns_table_name %>/show', <%= type_metatag(:view) %> do
4
4
  <%= model.factory_girl_let_definitions %>
5
+ <%= model.factory_girl_let_definition %>
5
6
  before(:each) do
6
- @<%= ns_file_name %> = assign(:<%= ns_file_name %>, <%= model.factory_girl_to :create %>)
7
+ assign(:<%= model.full_resource_name %>, <%= model.full_resource_name %>)
7
8
  end
8
9
 
9
- it "renders attributes in <p>" do
10
+ it 'renders attributes in <p>' do
10
11
  render
11
12
  <% model.columns_for(:spec_show).each do |attribute| -%>
12
13
  expect(rendered).to match(<%= attribute.sample_value_regexp_exp %>)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: model_base_generators
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.2
4
+ version: 0.3.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - akm
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-10-28 00:00:00.000000000 Z
11
+ date: 2016-10-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -111,7 +111,8 @@ dependencies:
111
111
  description: Provide generators for models with assocations.
112
112
  email:
113
113
  - akm2000@gmail.com
114
- executables: []
114
+ executables:
115
+ - model_base
115
116
  extensions: []
116
117
  extra_rdoc_files: []
117
118
  files:
@@ -126,7 +127,9 @@ files:
126
127
  - bin/console
127
128
  - bin/setup
128
129
  - example/.gitignore
130
+ - example/.model_base/controllers
129
131
  - example/.rspec
132
+ - example/.rubocop.yml
130
133
  - example/Gemfile
131
134
  - example/Gemfile.lock
132
135
  - example/Rakefile
@@ -270,6 +273,7 @@ files:
270
273
  - example/spec/support/controller_macros.rb
271
274
  - example/spec/support/devise.rb
272
275
  - example/spec/support/field_assertions.rb
276
+ - example/spec/support/time_match_support.rb
273
277
  - example/spec/views/issue_comments/edit.html.erb_spec.rb
274
278
  - example/spec/views/issue_comments/index.html.erb_spec.rb
275
279
  - example/spec/views/issue_comments/new.html.erb_spec.rb
@@ -291,18 +295,22 @@ files:
291
295
  - example/spec/views/projects/new.html.erb_spec.rb
292
296
  - example/spec/views/projects/show.html.erb_spec.rb
293
297
  - example/tmp/.keep
298
+ - exe/model_base
294
299
  - lib/generators/model_base/install_generator.rb
295
300
  - lib/generators/model_base/templates/app/controllers/concerns/authentication.rb
296
301
  - lib/generators/model_base/templates/spec/factories/users.rb
297
302
  - lib/generators/model_base/templates/spec/support/controller_macros.rb
298
303
  - lib/generators/model_base/templates/spec/support/devise.rb
299
304
  - lib/generators/model_base/templates/spec/support/field_assertions.rb
305
+ - lib/generators/model_base/templates/spec/support/time_match_support.rb
300
306
  - lib/model_base.rb
301
307
  - lib/model_base/column_attribute.rb
302
308
  - lib/model_base/config.rb
309
+ - lib/model_base/generators.rb
303
310
  - lib/model_base/generators/erb/scaffold.rb
304
311
  - lib/model_base/generators/factory_girl/model.rb
305
312
  - lib/model_base/generators/model_support.rb
313
+ - lib/model_base/generators/rails/scaffold_controller.rb
306
314
  - lib/model_base/meta_model.rb
307
315
  - lib/model_base/railtie.rb
308
316
  - lib/model_base/version.rb