spree_backend 3.1.5 → 3.1.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (100) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/spree/admin/orders_controller.rb +1 -3
  3. data/app/controllers/spree/admin/products_controller.rb +1 -1
  4. data/app/views/spree/admin/products/_form.html.erb +8 -8
  5. data/app/views/spree/admin/products/index.html.erb +1 -1
  6. data/app/views/spree/admin/shared/_product_tabs.html.erb +4 -4
  7. data/app/views/spree/admin/taxons/edit.html.erb +1 -1
  8. data/spree_backend.gemspec +1 -1
  9. metadata +7 -98
  10. data/spec/controllers/spree/admin/base_controller_spec.rb +0 -46
  11. data/spec/controllers/spree/admin/customer_returns_controller_spec.rb +0 -185
  12. data/spec/controllers/spree/admin/general_settings_controller_spec.rb +0 -41
  13. data/spec/controllers/spree/admin/missing_products_controller_spec.rb +0 -18
  14. data/spec/controllers/spree/admin/orders/customer_details_controller_spec.rb +0 -197
  15. data/spec/controllers/spree/admin/orders_controller_spec.rb +0 -254
  16. data/spec/controllers/spree/admin/payment_methods_controller_spec.rb +0 -49
  17. data/spec/controllers/spree/admin/payments_controller_spec.rb +0 -97
  18. data/spec/controllers/spree/admin/products_controller_spec.rb +0 -99
  19. data/spec/controllers/spree/admin/promotion_actions_controller_spec.rb +0 -21
  20. data/spec/controllers/spree/admin/promotion_rules_controller_spec.rb +0 -21
  21. data/spec/controllers/spree/admin/promotions_controller_spec.rb +0 -44
  22. data/spec/controllers/spree/admin/refunds_controller_spec.rb +0 -32
  23. data/spec/controllers/spree/admin/reimbursements_controller_spec.rb +0 -74
  24. data/spec/controllers/spree/admin/reports_controller_spec.rb +0 -42
  25. data/spec/controllers/spree/admin/resource_controller_spec.rb +0 -252
  26. data/spec/controllers/spree/admin/return_authorizations_controller_spec.rb +0 -225
  27. data/spec/controllers/spree/admin/return_index_controller_spec.rb +0 -37
  28. data/spec/controllers/spree/admin/return_items_controller_spec.rb +0 -27
  29. data/spec/controllers/spree/admin/root_controller_spec.rb +0 -35
  30. data/spec/controllers/spree/admin/search_controller_spec.rb +0 -56
  31. data/spec/controllers/spree/admin/shipping_methods_controller_spec.rb +0 -14
  32. data/spec/controllers/spree/admin/stock_items_controller_spec.rb +0 -19
  33. data/spec/controllers/spree/admin/stock_locations_controller_spec.rb +0 -41
  34. data/spec/controllers/spree/admin/stock_transfers_controller_spec.rb +0 -41
  35. data/spec/controllers/spree/admin/tax_categories_controller_spec.rb +0 -34
  36. data/spec/controllers/spree/admin/users_controller_spec.rb +0 -161
  37. data/spec/controllers/spree/admin/variants_controller_spec.rb +0 -32
  38. data/spec/features/admin/configuration/analytics_tracker_spec.rb +0 -47
  39. data/spec/features/admin/configuration/countries_spec.rb +0 -24
  40. data/spec/features/admin/configuration/general_settings_spec.rb +0 -44
  41. data/spec/features/admin/configuration/payment_methods_spec.rb +0 -63
  42. data/spec/features/admin/configuration/roles_spec.rb +0 -47
  43. data/spec/features/admin/configuration/shipping_methods_spec.rb +0 -62
  44. data/spec/features/admin/configuration/states_spec.rb +0 -68
  45. data/spec/features/admin/configuration/stock_locations_spec.rb +0 -48
  46. data/spec/features/admin/configuration/store_credit_categories_spec.rb +0 -50
  47. data/spec/features/admin/configuration/tax_categories_spec.rb +0 -56
  48. data/spec/features/admin/configuration/tax_rates_spec.rb +0 -18
  49. data/spec/features/admin/configuration/zones_spec.rb +0 -39
  50. data/spec/features/admin/homepage_spec.rb +0 -89
  51. data/spec/features/admin/locale_spec.rb +0 -31
  52. data/spec/features/admin/orders/adjustments_promotions_spec.rb +0 -53
  53. data/spec/features/admin/orders/adjustments_spec.rb +0 -129
  54. data/spec/features/admin/orders/cancelling_and_resuming_spec.rb +0 -47
  55. data/spec/features/admin/orders/customer_details_spec.rb +0 -154
  56. data/spec/features/admin/orders/line_items_spec.rb +0 -51
  57. data/spec/features/admin/orders/listing_spec.rb +0 -222
  58. data/spec/features/admin/orders/log_entries_spec.rb +0 -55
  59. data/spec/features/admin/orders/new_order_spec.rb +0 -160
  60. data/spec/features/admin/orders/order_details_spec.rb +0 -662
  61. data/spec/features/admin/orders/payments_spec.rb +0 -230
  62. data/spec/features/admin/orders/risk_analysis_spec.rb +0 -48
  63. data/spec/features/admin/orders/shipments_spec.rb +0 -64
  64. data/spec/features/admin/orders/state_changes_spec.rb +0 -21
  65. data/spec/features/admin/products/edit/images_spec.rb +0 -86
  66. data/spec/features/admin/products/edit/products_spec.rb +0 -64
  67. data/spec/features/admin/products/edit/taxons_spec.rb +0 -41
  68. data/spec/features/admin/products/edit/variants_spec.rb +0 -56
  69. data/spec/features/admin/products/option_types_spec.rb +0 -114
  70. data/spec/features/admin/products/products_spec.rb +0 -445
  71. data/spec/features/admin/products/properties_spec.rb +0 -147
  72. data/spec/features/admin/products/prototypes_spec.rb +0 -112
  73. data/spec/features/admin/products/stock_management_spec.rb +0 -124
  74. data/spec/features/admin/products/taxonomies_spec.rb +0 -52
  75. data/spec/features/admin/products/variant_spec.rb +0 -50
  76. data/spec/features/admin/promotions/adjustments_spec.rb +0 -259
  77. data/spec/features/admin/promotions/option_value_rule_spec.rb +0 -70
  78. data/spec/features/admin/promotions/tiered_calculator_spec.rb +0 -70
  79. data/spec/features/admin/refund_reasons/refund_reasons_spec.rb +0 -57
  80. data/spec/features/admin/reports_spec.rb +0 -61
  81. data/spec/features/admin/return_authorization_reasons/return_authorization_reasons_spec.rb +0 -63
  82. data/spec/features/admin/returns/customer_returns_spec.rb +0 -80
  83. data/spec/features/admin/returns/return_authorizations_spec.rb +0 -152
  84. data/spec/features/admin/stock_transfer_spec.rb +0 -75
  85. data/spec/features/admin/store_credits_spec.rb +0 -93
  86. data/spec/features/admin/taxons_spec.rb +0 -47
  87. data/spec/features/admin/users_spec.rb +0 -286
  88. data/spec/helpers/admin/base_helper_spec.rb +0 -30
  89. data/spec/helpers/admin/navigation_helper_spec.rb +0 -106
  90. data/spec/helpers/admin/stock_movements_helper_spec.rb +0 -30
  91. data/spec/helpers/promotion_rules_helper_spec.rb +0 -12
  92. data/spec/models/spree/resource_spec.rb +0 -48
  93. data/spec/routing/admin_path_spec.rb +0 -22
  94. data/spec/spec_helper.rb +0 -134
  95. data/spec/support/appear_before_matcher.rb +0 -8
  96. data/spec/support/ror_ringer.jpeg +0 -0
  97. data/spec/test_views/spree/admin/submodule/posts/edit.html.erb +0 -1
  98. data/spec/test_views/spree/admin/submodule/posts/new.html.erb +0 -1
  99. data/spec/test_views/spree/admin/widgets/edit.html.erb +0 -1
  100. data/spec/test_views/spree/admin/widgets/new.html.erb +0 -1
@@ -1,252 +0,0 @@
1
- require 'spec_helper'
2
-
3
- module Spree
4
- module Admin
5
- class WidgetsController < Spree::Admin::ResourceController
6
- prepend_view_path('spec/test_views')
7
-
8
- def model_class
9
- Widget
10
- end
11
- end
12
- end
13
- end
14
-
15
- describe Spree::Admin::WidgetsController, :type => :controller do
16
- stub_authorization!
17
-
18
- after(:all) do
19
- # Spree::Core::Engine.routes.reload_routes!
20
- Rails.application.reload_routes!
21
- end
22
-
23
- with_model 'Widget', scope: :all do
24
- table do |t|
25
- t.string :name
26
- t.integer :position
27
- t.timestamps null: false
28
- end
29
-
30
- model do
31
- acts_as_list
32
- validates :name, presence: true
33
- end
34
- end
35
-
36
- before do
37
- Spree::Core::Engine.routes.draw do
38
- namespace :admin do
39
- resources :widgets do
40
- post :update_positions, on: :member
41
- end
42
- end
43
- end
44
- stub_const('Spree::Widget', Widget)
45
- end
46
-
47
- describe '#new' do
48
- subject do
49
- spree_get :new
50
- end
51
-
52
- it 'succeeds' do
53
- subject
54
- expect(response).to be_success
55
- end
56
- end
57
-
58
- describe '#edit' do
59
- let(:widget) { Widget.create!(name: 'a widget') }
60
-
61
- subject do
62
- spree_get :edit, id: widget.to_param
63
- end
64
-
65
- it 'succeeds' do
66
- subject
67
- expect(response).to be_success
68
- end
69
- end
70
-
71
- describe '#create' do
72
- let(:params) do
73
- {widget: {name: 'a widget'}}
74
- end
75
-
76
- subject { spree_post :create, params }
77
-
78
- it 'creates the resource' do
79
- expect { subject }.to change { Widget.count }.by(1)
80
- end
81
-
82
- context 'without any parameters' do
83
- let(:params) { {} }
84
-
85
- before do
86
- allow_any_instance_of(Widget).to receive(:name).and_return('some name')
87
- end
88
-
89
- it 'creates the resource' do
90
- expect { subject }.to change { Widget.count }.by(1)
91
- end
92
- end
93
- end
94
-
95
- describe '#update' do
96
- let(:widget) { Widget.create!(name: 'a widget') }
97
-
98
- let(:params) do
99
- {
100
- id: widget.to_param,
101
- widget: {name: 'widget renamed'},
102
- }
103
- end
104
-
105
- subject { spree_put :update, params }
106
-
107
- it 'updates the resource' do
108
- expect { subject }.to change { widget.reload.name }.from('a widget').to('widget renamed')
109
- end
110
- end
111
-
112
- describe '#destroy' do
113
- let!(:widget) { Widget.create!(name: 'a widget') }
114
- let(:params) { {id: widget.id} }
115
-
116
- subject {
117
- spree_delete :destroy, params
118
- }
119
-
120
- it 'destroys the resource' do
121
- expect { subject }.to change { Widget.count }.from(1).to(0)
122
- end
123
- end
124
-
125
- describe '#update_positions' do
126
- let(:widget_1) { Widget.create!(name: 'widget 1', position: 1) }
127
- let(:widget_2) { Widget.create!(name: 'widget 2', position: 2) }
128
-
129
- subject do
130
- spree_post :update_positions, id: widget_1.to_param,
131
- positions: { widget_1.id => '2', widget_2.id => '1' }, format: 'js'
132
- end
133
-
134
- it 'updates the position of widget 1' do
135
- expect { subject }.to change { widget_1.reload.position }.from(1).to(2)
136
- end
137
-
138
- it 'updates the position of widget 2' do
139
- expect { subject }.to change { widget_2.reload.position }.from(2).to(1)
140
- end
141
-
142
- it 'touches updated_at' do
143
- Timecop.scale(3600) do
144
- expect { subject }.to change { widget_1.reload.updated_at }
145
- end
146
- end
147
- end
148
- end
149
-
150
- module Spree
151
- module Submodule
152
- class Post < Spree::Base
153
- end
154
- end
155
- module Admin
156
- module Submodule
157
- class PostsController < Spree::Admin::ResourceController
158
- prepend_view_path('spec/test_views')
159
-
160
- def model_class
161
- Spree::Submodule::Post
162
- end
163
- end
164
- end
165
- end
166
- end
167
-
168
- describe Spree::Admin::Submodule::PostsController, type: :controller do
169
- stub_authorization!
170
-
171
- after(:all) do
172
- # Spree::Core::Engine.routes.reload_routes!
173
- Rails.application.reload_routes!
174
- end
175
-
176
- with_table 'spree_posts', scope: :all do |t|
177
- t.string :name
178
- t.integer :position
179
- t.timestamps null: false
180
- end
181
-
182
- before do
183
- Spree::Core::Engine.routes.draw do
184
- namespace :admin do
185
- namespace :submodule do
186
- resources :posts
187
- end
188
- end
189
- end
190
- end
191
-
192
- describe '#new' do
193
- subject do
194
- spree_get :new
195
- end
196
-
197
- it 'succeeds' do
198
- subject
199
- expect(response).to be_success
200
- end
201
- end
202
-
203
- describe '#edit' do
204
- let(:submodule_post) { Spree::Submodule::Post.create!(name: 'a post') }
205
-
206
- subject do
207
- spree_get :edit, id: submodule_post.to_param
208
- end
209
-
210
- it 'succeeds' do
211
- subject
212
- expect(response).to be_success
213
- end
214
- end
215
-
216
- describe '#create' do
217
- let(:params) do
218
- { submodule_post: { name: 'a post' } }
219
- end
220
-
221
- subject { spree_post :create, params }
222
-
223
- it 'creates the resource' do
224
- expect { subject }.to change { Spree::Submodule::Post.count }.by(1)
225
- end
226
- end
227
-
228
- describe '#update' do
229
- let(:post) { Spree::Submodule::Post.create!(name: 'a post') }
230
-
231
- let(:params) do
232
- { id: post.to_param, submodule_post: { name: 'post renamed' } }
233
- end
234
-
235
- subject { spree_put :update, params }
236
-
237
- it 'updates the resource' do
238
- expect { subject }.to change { post.reload.name }.from('a post').to('post renamed')
239
- end
240
- end
241
-
242
- describe '#destroy' do
243
- let!(:post) { Spree::Submodule::Post.create!(name: 'a post') }
244
- let(:params) { { id: post.id } }
245
-
246
- subject { spree_delete :destroy, params }
247
-
248
- it 'destroys the resource' do
249
- expect { subject }.to change { Spree::Submodule::Post.count }.from(1).to(0)
250
- end
251
- end
252
- end
@@ -1,225 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe Spree::Admin::ReturnAuthorizationsController, :type => :controller do
4
- stub_authorization!
5
-
6
- # Regression test for #1370 #3
7
- let!(:order) { create(:shipped_order, line_items_count: 3) }
8
- let!(:return_authorization_reason) { create(:return_authorization_reason) }
9
- let(:inventory_unit_1) { order.inventory_units.order('id asc')[0] }
10
- let(:inventory_unit_2) { order.inventory_units.order('id asc')[1] }
11
- let(:inventory_unit_3) { order.inventory_units.order('id asc')[2] }
12
-
13
- describe "#load_return_authorization_reasons" do
14
- let!(:inactive_rma_reason) { create(:return_authorization_reason, active: false) }
15
-
16
- context "return authorization has an associated inactive reason" do
17
- let!(:other_inactive_rma_reason) { create(:return_authorization_reason, active: false) }
18
- let(:return_authorization) { create(:return_authorization, reason: inactive_rma_reason) }
19
-
20
- it "loads all the active rma reasons" do
21
- spree_get :edit, id: return_authorization.to_param, order_id: return_authorization.order.to_param
22
- expect(assigns(:reasons)).to include(return_authorization_reason)
23
- expect(assigns(:reasons)).to include(inactive_rma_reason)
24
- expect(assigns(:reasons)).not_to include(other_inactive_rma_reason)
25
- end
26
- end
27
-
28
- context "return authorization has an associated active reason" do
29
- let(:return_authorization) { create(:return_authorization, reason: return_authorization_reason) }
30
-
31
- it "loads all the active rma reasons" do
32
- spree_get :edit, id: return_authorization.to_param, order_id: return_authorization.order.to_param
33
- expect(assigns(:reasons)).to eq [return_authorization_reason]
34
- end
35
- end
36
-
37
- context "return authorization doesn't have an associated reason" do
38
- it "loads all the active rma reasons" do
39
- spree_get :new, order_id: order.to_param
40
- expect(assigns(:reasons)).to eq [return_authorization_reason]
41
- end
42
- end
43
- end
44
-
45
- describe "#load_return_items" do
46
- shared_context 'without existing return items' do
47
- context 'without existing return items' do
48
- it 'has 3 new @form_return_items' do
49
- subject
50
- expect(assigns(:form_return_items).size).to eq 3
51
- expect(assigns(:form_return_items).select(&:new_record?).size).to eq 3
52
- end
53
- end
54
- end
55
-
56
- shared_context 'with existing return items' do
57
- context 'with existing return items' do
58
- let!(:return_item_1) { create(:return_item, inventory_unit: inventory_unit_1, return_authorization: return_authorization) }
59
-
60
- it 'has 1 existing return item and 2 new return items' do
61
- subject
62
- expect(assigns(:form_return_items).size).to eq 3
63
- expect(assigns(:form_return_items).select(&:persisted?)).to eq [return_item_1]
64
- expect(assigns(:form_return_items).select(&:new_record?).size).to eq 2
65
- end
66
- end
67
- end
68
-
69
- context '#new' do
70
- subject { spree_get :new, order_id: order.to_param }
71
-
72
- include_context 'without existing return items'
73
- end
74
-
75
- context '#edit' do
76
- subject do
77
- spree_get :edit, {
78
- id: return_authorization.to_param,
79
- order_id: order.to_param,
80
- }
81
- end
82
-
83
- let(:return_authorization) { create(:return_authorization, order: order) }
84
-
85
- include_context 'without existing return items'
86
- include_context 'with existing return items'
87
- end
88
-
89
- context '#create failed' do
90
- subject do
91
- spree_post :create, {
92
- return_authorization: {return_authorization_reason_id: -1}, # invalid reason_id
93
- order_id: order.to_param,
94
- }
95
- end
96
-
97
- include_context 'without existing return items'
98
- end
99
-
100
- context '#update failed' do
101
- subject do
102
- spree_put :update, {
103
- return_authorization: {return_authorization_reason_id: -1}, # invalid reason_id
104
- id: return_authorization.to_param,
105
- order_id: order.to_param,
106
- }
107
- end
108
-
109
- let(:return_authorization) { create(:return_authorization, order: order) }
110
-
111
- include_context 'without existing return items'
112
- include_context 'with existing return items'
113
- end
114
- end
115
-
116
- describe "#load_reimbursement_types" do
117
- let(:order) { create(:order) }
118
- let!(:inactive_reimbursement_type) { create(:reimbursement_type, active: false) }
119
- let!(:first_active_reimbursement_type) { create(:reimbursement_type) }
120
- let!(:second_active_reimbursement_type) { create(:reimbursement_type) }
121
-
122
- before do
123
- spree_get :new, order_id: order.to_param
124
- end
125
-
126
- it "loads all the active reimbursement types" do
127
- expect(assigns(:reimbursement_types)).to include(first_active_reimbursement_type)
128
- expect(assigns(:reimbursement_types)).to include(second_active_reimbursement_type)
129
- expect(assigns(:reimbursement_types)).not_to include(inactive_reimbursement_type)
130
- end
131
- end
132
-
133
- context '#create' do
134
- let(:stock_location) { create(:stock_location) }
135
-
136
- subject { spree_post :create, params }
137
-
138
- let(:params) do
139
- {
140
- order_id: order.to_param,
141
- return_authorization: return_authorization_params,
142
- }
143
- end
144
-
145
- let(:return_authorization_params) do
146
- {
147
- memo: "",
148
- stock_location_id: stock_location.id,
149
- return_authorization_reason_id: return_authorization_reason.id,
150
- }
151
- end
152
-
153
- it "can create a return authorization" do
154
- subject
155
- expect(response).to redirect_to spree.admin_order_return_authorizations_path(order)
156
- end
157
- end
158
-
159
- context '#update' do
160
- let(:return_authorization) { create(:return_authorization, order: order) }
161
-
162
- let(:params) do
163
- {
164
- id: return_authorization.to_param,
165
- order_id: order.to_param,
166
- return_authorization: return_authorization_params,
167
- }
168
- end
169
- let(:return_authorization_params) do
170
- {
171
- memo: "",
172
- return_items_attributes: return_items_params,
173
- }
174
- end
175
-
176
- subject { spree_put :update, params }
177
-
178
- context "adding an item" do
179
- let(:return_items_params) do
180
- {
181
- '0' => {inventory_unit_id: inventory_unit_1.to_param}
182
- }
183
- end
184
-
185
- context 'without existing items' do
186
- it 'creates a new item' do
187
- expect { subject }.to change { Spree::ReturnItem.count }.by(1)
188
- end
189
- end
190
-
191
- context 'with existing completed items' do
192
- let!(:completed_return_item) do
193
- create(:return_item, {
194
- return_authorization: return_authorization,
195
- inventory_unit: inventory_unit_1,
196
- reception_status: 'received',
197
- })
198
- end
199
-
200
- it 'does not create new items' do
201
- expect { subject }.to_not change { Spree::ReturnItem.count }
202
- expect(assigns[:return_authorization].errors['return_items.inventory_unit']).to eq ["#{inventory_unit_1.id} has already been taken by return item #{completed_return_item.id}"]
203
- end
204
- end
205
- end
206
-
207
- context "removing an item" do
208
- let!(:return_item) do
209
- create(:return_item, return_authorization: return_authorization, inventory_unit: inventory_unit_1)
210
- end
211
-
212
- let(:return_items_params) do
213
- {
214
- '0' => {id: return_item.to_param, _destroy: '1'}
215
- }
216
- end
217
-
218
- context 'with existing items' do
219
- it 'removes the item' do
220
- expect { subject }.to change { Spree::ReturnItem.count }.by(-1)
221
- end
222
- end
223
- end
224
- end
225
- end