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,56 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe "Tax Categories", type: :feature do
4
- stub_authorization!
5
-
6
- before(:each) do
7
- visit spree.admin_path
8
- click_link "Configuration"
9
- end
10
-
11
- context "admin visiting tax categories list" do
12
- it "should display the existing tax categories" do
13
- create(:tax_category, name: "Clothing", tax_code: "CL001", description: "For Clothing")
14
- click_link "Tax Categories"
15
- within("h1") { expect(page).to have_content("Tax Categories") }
16
- within_row(1) do
17
- expect(column_text(1)).to eq("Clothing")
18
- expect(column_text(2)).to eq("CL001")
19
- expect(column_text(3)).to eq("For Clothing")
20
- expect(column_text(4)).to eq("No")
21
- end
22
- end
23
- end
24
-
25
- context "admin creating new tax category" do
26
- before(:each) do
27
- click_link "Tax Categories"
28
- click_link "admin_new_tax_categories_link"
29
- end
30
-
31
- it "should be able to create new tax category" do
32
- expect(page).to have_content("New Tax Category")
33
- fill_in "tax_category_name", with: "sports goods"
34
- fill_in "tax_category_description", with: "sports goods desc"
35
- click_button "Create"
36
- expect(page).to have_content("successfully created!")
37
- end
38
-
39
- it "should show validation errors if there are any" do
40
- click_button "Create"
41
- expect(page).to have_content("Name can't be blank")
42
- end
43
- end
44
-
45
- context "admin editing a tax category" do
46
- it "should be able to update an existing tax category", js: true do
47
- create(:tax_category)
48
- click_link "Tax Categories"
49
- within_row(1) { click_icon :edit }
50
- fill_in "tax_category_description", with: "desc 99"
51
- click_button "Update"
52
- expect(page).to have_content("successfully updated!")
53
- expect(page).to have_content("desc 99")
54
- end
55
- end
56
- end
@@ -1,18 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe "Tax Rates", type: :feature do
4
- stub_authorization!
5
-
6
- let!(:tax_rate) { create(:tax_rate, calculator: stub_model(Spree::Calculator)) }
7
-
8
- # Regression test for #1422
9
- it "can create a new tax rate" do
10
- visit spree.admin_path
11
- click_link "Configuration"
12
- click_link "Tax Rates"
13
- click_link "New Tax Rate"
14
- fill_in "Rate", with: "0.05"
15
- click_button "Create"
16
- expect(page).to have_content("Tax Rate has been successfully created!")
17
- end
18
- end
@@ -1,39 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe "Zones", type: :feature do
4
- stub_authorization!
5
-
6
- before(:each) do
7
- Spree::Zone.delete_all
8
- visit spree.admin_path
9
- click_link "Configuration"
10
- end
11
-
12
- context "show" do
13
- it "should display existing zones" do
14
- create(:zone, :name => "eastern", :description => "zone is eastern")
15
- create(:zone, :name => "western", :description => "cool san fran")
16
- click_link "Zones"
17
-
18
- within_row(1) { expect(page).to have_content("eastern") }
19
- within_row(2) { expect(page).to have_content("western") }
20
-
21
- click_link "zones_order_by_description_title"
22
-
23
- within_row(1) { expect(page).to have_content("western") }
24
- within_row(2) { expect(page).to have_content("eastern") }
25
- end
26
- end
27
-
28
- context "create" do
29
- it "should allow an admin to create a new zone" do
30
- click_link "Zones"
31
- click_link "admin_new_zone_link"
32
- expect(page).to have_content("New Zone")
33
- fill_in "zone_name", :with => "japan"
34
- fill_in "zone_description", :with => "japanese time zone"
35
- click_button "Create"
36
- expect(page).to have_content("successfully created!")
37
- end
38
- end
39
- end
@@ -1,89 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe "Homepage", :type => :feature do
4
-
5
- context 'as admin user' do
6
- stub_authorization!
7
-
8
- context "visiting the homepage" do
9
- before(:each) do
10
- visit spree.admin_path
11
- end
12
-
13
- it "has header text 'Orders'" do
14
- within('h1') { expect(page).to have_content("Orders") }
15
- end
16
-
17
- it "has a link to overview" do
18
- within("header") { page.find(:xpath, "//a[@href='/admin']") }
19
- end
20
-
21
- it "has a link to orders" do
22
- page.find_link("Orders")['/admin/orders']
23
- end
24
-
25
- it "has a link to products" do
26
- page.find_link("Products")['/admin/products']
27
- end
28
-
29
- it "has a link to reports" do
30
- page.find_link("Reports")['/admin/reports']
31
- end
32
-
33
- it "has a link to configuration" do
34
- page.find_link("Configuration")['/admin/configurations']
35
- end
36
-
37
- it "has a link to return authorizations" do
38
- within('.sidebar') { page.find_link("Return Authorizations")['/admin/return_authorizations'] }
39
- end
40
-
41
- it "has a link to customer returns" do
42
- within('.sidebar') { page.find_link("Customer Returns")['/admin/customer_returns'] }
43
- end
44
- end
45
-
46
- context "visiting the products tab" do
47
- before(:each) do
48
- visit spree.admin_products_path
49
- end
50
-
51
- it "has a link to products" do
52
- within('.sidebar') { page.find_link("Products")['/admin/products'] }
53
- end
54
-
55
- it "has a link to option types" do
56
- within('.sidebar') { page.find_link("Option Types")['/admin/option_types'] }
57
- end
58
-
59
- it "has a link to properties" do
60
- within('.sidebar') { page.find_link("Properties")['/admin/properties'] }
61
- end
62
-
63
- it "has a link to prototypes" do
64
- within('.sidebar') { page.find_link("Prototypes")['/admin/prototypes'] }
65
- end
66
- end
67
- end
68
-
69
- context 'as fakedispatch user' do
70
-
71
- before do
72
- allow_any_instance_of(Spree::Admin::BaseController).to receive(:spree_current_user).and_return(nil)
73
- end
74
-
75
- custom_authorization! do |user|
76
- can [:admin, :edit, :index, :read], Spree::Order
77
- end
78
-
79
- it 'only displays tabs fakedispatch has access to' do
80
- visit spree.admin_path
81
- expect(page).to have_link('Orders')
82
- expect(page).not_to have_link('Products')
83
- expect(page).not_to have_link('Promotions')
84
- expect(page).not_to have_link('Reports')
85
- expect(page).not_to have_link('Configurations')
86
- end
87
- end
88
-
89
- end
@@ -1,31 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe "setting locale", :type => :feature do
4
- stub_authorization!
5
-
6
- before do
7
- I18n.locale = I18n.default_locale
8
- I18n.backend.store_translations(:fr,
9
- :date => {
10
- :month_names => [],
11
- },
12
- :spree => {
13
- :admin => {
14
- :tab => { :orders => "Ordres" }
15
- },
16
- :listing_orders => "Ordres",
17
- })
18
- Spree::Backend::Config[:locale] = "fr"
19
- end
20
-
21
- after do
22
- I18n.locale = I18n.default_locale
23
- Spree::Backend::Config[:locale] = "en"
24
- end
25
-
26
- it "should be in french" do
27
- visit spree.admin_path
28
- click_link "Ordres"
29
- expect(page).to have_content("Ordres")
30
- end
31
- end
@@ -1,53 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe "Adjustments Promotions", type: :feature do
4
- stub_authorization!
5
-
6
- before(:each) do
7
- promotion = create(:promotion_with_item_adjustment,
8
- :name => "$10 off",
9
- :path => 'test',
10
- :code => "10_off",
11
- :starts_at => 1.day.ago,
12
- :expires_at => 1.day.from_now,
13
- :adjustment_rate => 10)
14
-
15
- order = create(:order_with_totals)
16
- line_item = order.line_items.first
17
- # so we can be sure of a determinate price in our assertions
18
- line_item.update_column(:price, 10)
19
-
20
- visit spree.admin_order_adjustments_path(order)
21
- end
22
-
23
- context "admin adding a promotion" do
24
- context "successfully" do
25
- it "should create a new adjustment", js: true do
26
- fill_in "coupon_code", with: "10_off"
27
- click_button "Add Coupon Code"
28
- expect(page).to have_content("$10 off")
29
- expect(page).to have_content("-$10.00")
30
- end
31
- end
32
-
33
- context "for non-existing promotion" do
34
- it "should show an error message", js: true do
35
- fill_in "coupon_code", with: "does_not_exist"
36
- click_button "Add Coupon Code"
37
- expect(page).to have_content("doesn't exist.")
38
- end
39
- end
40
-
41
- context "for already applied promotion" do
42
- it "should show an error message", js: true do
43
- fill_in "coupon_code", with: "10_off"
44
- click_button "Add Coupon Code"
45
- expect(page).to have_content('-$10.00')
46
-
47
- fill_in "coupon_code", with: "10_off"
48
- click_button "Add Coupon Code"
49
- expect(page).to have_content("already been applied")
50
- end
51
- end
52
- end
53
- end
@@ -1,129 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe "Adjustments", type: :feature do
4
- stub_authorization!
5
-
6
- let!(:order) { create(:completed_order_with_totals, line_items_count: 5) }
7
- let!(:line_item) do
8
- line_item = order.line_items.first
9
- # so we can be sure of a determinate price in our assertions
10
- line_item.update_column(:price, 10)
11
- line_item
12
- end
13
-
14
- let!(:tax_adjustment) do
15
- create(:tax_adjustment,
16
- :adjustable => line_item,
17
- :state => 'closed',
18
- :order => order,
19
- :label => "VAT 5%",
20
- :amount => 10)
21
- end
22
-
23
- let!(:adjustment) { order.adjustments.create!(order: order, label: 'Rebate', amount: 10) }
24
-
25
- before(:each) do
26
- # To ensure the order totals are correct
27
- order.update_totals
28
- order.persist_totals
29
-
30
- visit spree.admin_orders_path
31
- within_row(1) { click_on order.number }
32
- click_on "Adjustments"
33
- end
34
-
35
- after :each do
36
- order.reload.all_adjustments.each do |adjustment|
37
- expect(adjustment.order_id).to equal(order.id)
38
- end
39
- end
40
-
41
- context "admin managing adjustments" do
42
- it "should display the correct values for existing order adjustments" do
43
- within_row(1) do
44
- expect(column_text(2)).to eq("VAT 5%")
45
- expect(column_text(3)).to eq("$10.00")
46
- end
47
- end
48
-
49
- it "only shows eligible adjustments" do
50
- expect(page).not_to have_content("ineligible")
51
- end
52
- end
53
-
54
- context "admin creating a new adjustment" do
55
- before(:each) do
56
- click_link "New Adjustment"
57
- end
58
-
59
- context "successfully" do
60
- it "should create a new adjustment" do
61
- fill_in "adjustment_amount", with: "10"
62
- fill_in "adjustment_label", with: "rebate"
63
- click_button "Continue"
64
- expect(page).to have_content("successfully created!")
65
- expect(page).to have_content("Total: $80.00")
66
- end
67
- end
68
-
69
- context "with validation errors" do
70
- it "should not create a new adjustment" do
71
- fill_in "adjustment_amount", with: ""
72
- fill_in "adjustment_label", with: ""
73
- click_button "Continue"
74
- expect(page).to have_content("Label can't be blank")
75
- expect(page).to have_content("Amount is not a number")
76
- end
77
- end
78
- end
79
-
80
- context "admin editing an adjustment", js: true do
81
-
82
- before(:each) do
83
- within_row(2) { click_icon :edit }
84
- end
85
-
86
- context "successfully" do
87
- it "should update the adjustment" do
88
- fill_in "adjustment_amount", with: "99"
89
- fill_in "adjustment_label", with: "rebate 99"
90
- click_button "Continue"
91
- expect(page).to have_content("successfully updated!")
92
- expect(page).to have_content("rebate 99")
93
- within(".adjustments") do
94
- expect(page).to have_content("$99.00")
95
- end
96
-
97
- expect(page).to have_content("Total: $159.00")
98
- end
99
- end
100
-
101
- context "with validation errors" do
102
- it "should not update the adjustment" do
103
- fill_in "adjustment_amount", with: ""
104
- fill_in "adjustment_label", with: ""
105
- click_button "Continue"
106
- expect(page).to have_content("Label can't be blank")
107
- expect(page).to have_content("Amount is not a number")
108
- end
109
- end
110
- end
111
-
112
- context "deleting an adjustment" do
113
- it "should not be possible if adjustment is closed" do
114
- within_row(1) do
115
- expect(page).not_to have_css('.fa-delete')
116
- end
117
- end
118
-
119
- it "should update the total", js: true do
120
- accept_alert do
121
- within_row(2) do
122
- click_icon(:delete)
123
- end
124
- end
125
-
126
- expect(page).to have_content(/Total: ?\$170\.00/)
127
- end
128
- end
129
- end
@@ -1,47 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe "Cancelling + Resuming", :type => :feature do
4
-
5
- stub_authorization!
6
-
7
- let(:user) { double(id: 123, has_spree_role?: true, spree_api_key: 'fake') }
8
-
9
- before do
10
- allow_any_instance_of(Spree::Admin::BaseController).to receive(:try_spree_current_user).and_return(user)
11
- end
12
-
13
- let(:order) do
14
- order = create(:order)
15
- order.update_columns({
16
- state: 'complete',
17
- completed_at: Time.current
18
- })
19
- order
20
- end
21
-
22
- it "can cancel an order" do
23
- visit spree.edit_admin_order_path(order.number)
24
- click_button 'Cancel'
25
- within(".additional-info") do
26
- within(".state") do
27
- expect(page).to have_content("canceled")
28
- end
29
- end
30
- end
31
-
32
- context "with a cancelled order" do
33
- before do
34
- order.update_column(:state, 'canceled')
35
- end
36
-
37
- it "can resume an order" do
38
- visit spree.edit_admin_order_path(order.number)
39
- click_button 'Resume'
40
- within(".additional-info") do
41
- within(".state") do
42
- expect(page).to have_content("resumed")
43
- end
44
- end
45
- end
46
- end
47
- end