Commit Graph

1122 Commits

Author SHA1 Message Date
Maikel Linke
600c8fcd4c Send confirmation emails immediately
Using deferred methods on the user model breaks delayed jobs when the
user is deleted while the job still exists. We could create a proper job
referencing a user id for sending these emails instead. But since the
user has to wait for the confirmation email anyway, we can send it
within the current request. This should be revised if performance
becomes an issue.

Sending the email directly also has the advantage that we can tell the
user if emailing failed. See the following commits.

This change impacts a bunch of specs as we now need a working email
setup to create unconfirmed users. This commit introduces a custom
matcher to unify testing for confirmation emails.
2018-09-27 13:33:08 +10:00
Pau Perez
eb64569c9a Destroy all shipments when clearing order
Now we only clear the order's shipping_method, and in Spree 2.0 it can
have many shipments.
2018-09-24 15:25:33 +01:00
luisramos0
4476b88044 Fixed shipping_method update in models/spree/order_spec, order.shipment is now updated instead of order.shipping_method_id 2018-09-24 15:13:36 +01:00
Pau Perez
2a0e0eed73 Move state_machine's additions inside class_eval
And also cover them with tests.
2018-09-18 11:20:32 +02:00
Pau Perez
1fdc578901 Increase readability (a bit) of OrderUpdater 2018-09-18 11:20:32 +02:00
Pau Perez
99cdeca0b1 Remove useless RSpec context block 2018-09-18 11:20:32 +02:00
Pau Perez
13f73b4512 Test :restart_checkout state machine event 2018-09-18 11:20:32 +02:00
luisramos0
fbd2d96b05 Moved shipment and shipping_method factories with flat rate and shipping fees to traits 2018-09-17 00:51:01 +01:00
Pau Pérez Fabregat
a906ad15bd Merge pull request #2670 from luisramos0/2-0-ship-method-adjustment-spec
[Spree 2 Upgrade] Fix issues related to shipments in adjustment_spec
2018-09-10 11:32:54 +02:00
Pau Pérez Fabregat
5a11af9118 Merge pull request #2668 from luisramos0/2-0-ship-method-order-spec
[Spree 2 Upgrade] Fixed models/order_spec issues related to order.shipping_method
2018-09-10 11:18:10 +02:00
Maikel
bce2c1cfd5 Merge pull request #2588 from luisramos0/spree2_mail_method_specs
Spree 2 Upgrade - MailMethod - Fix "undefined mail method" error in specs
2018-09-10 11:28:34 +10:00
luisramos0
2f1616a286 Changed reference from order.shipping_method to order.shipments in adjustment_spec 2018-09-09 23:32:59 +01:00
luisramos0
5bcc49a61c Removed calls to the now inexistent order.create_shipment! from specs 2018-09-09 23:16:19 +01:00
luisramos0
73512d3591 Replaced order.shipping_method with order.shipments in models.order_spec.
Fixed factory completed_order_with_fees used in order_spec and also in line_items_controller_spec and orders_controller_spec.
2018-09-09 23:13:32 +01:00
luisramos0
afedbe45ab Fixed scenario "guest order with registered email" in order_spec
Spree order factory requires user (we are setting it to nil below so, no impact on the test)
Defining shipping method is not necessary for this test
2018-09-09 23:13:32 +01:00
luisramos0
d6cff9bc68 Removed calls to the now inexistent order.create_shipment! from specs 2018-09-09 23:13:27 +01:00
luisramos0
89d51d75ae Merge branch 'master' into 2-0-stable-sept 2018-09-04 17:43:20 +01:00
Kristina Lim
9c3bb863da Add endpoints for removing enterprise images 2018-09-04 01:32:39 +08:00
luisramos0
b5038fa5dc Changed calls to MailMethod in specs to calls to Spree::Config[:mails_from] 2018-08-27 21:02:54 +01:00
luisramos0
05bfc098ff /controllers/spree/order_populator_decorator (with a class_eval) is now /services/CartService with no dependency to Spree::OrderPopulator. 2018-08-23 12:39:55 +01:00
Pau Perez
43bf7293bf Merge branch 'master' into 2-0-stable
* master: (125 commits)
  Fix syntax error in GETTING_STARTED.md
  Fix syntax error in README.md
  Fix link syntax errors in REAME.md and GETTING_STARTED.md
  Style recently merged code
  Update gem i18n-js to pick up locale changes
  Fix embedded shopfront menu responsiveness
  Add communications links to README
  Fix script/setup by making it less clever
  Change import and reset logic to work with first page
  Move options to first page
  Fix wrong sort predicates in customer index
  Reset reverse when clicking another column to sort
  Move logic for toggling by column into SortOptions
  Generalize sorting through SortOptions service
  Remove unused sorting preferences in ColumnsCtrl
  Fix frontend sorting in "Bulk Order Management"
  Fix frontend sorting in "Customers" index
  Change sorting to be done in ascending order first
  Wrap rows in customer index with TBODY tag
  Update .rubocop_todo.yml
  ...
2018-07-27 10:21:47 +02:00
Pau Perez
f1896313b3 Move shipping_address_from_distributor to OrderUpdater
This is still Spree-1.3 compatible not considering multiple shipments
and shipping methods.
2018-07-25 11:07:16 +02:00
Pau Perez
21d905a092 Refactor OrderUpdater to decorate Spree's one
This replaces the nasty class eval and provides some encapsulation
2018-07-25 11:07:16 +02:00
Pau Perez
72f02ee1ee RSpec3-ize OrderUpdater spec 2018-07-25 11:07:16 +02:00
Rob Harrington
fc2844a3d5 Add default_card method to user model 2018-07-05 19:26:11 +10:00
Frank West
09534b41e9 Remove taxon when primary taxon is changed
We are adding taxons to the product as you change the primary taxon.
However we never remove the previous primary taxon so it forces the user
to update the taxons manually. This can be a big problem if you are bulk
updating products.

We now remove the taxon that matches the previously set primary taxon.
2018-07-04 09:16:50 +10:00
Rob Harrington
2da6234362 Add spec for StripeGateway#refund 2018-07-03 14:21:58 +10:00
Pau Perez
7707df354b Merge branch 'master' into 2-0-stable
* master: (206 commits)
  embedded groups layout changes
  embedded groups initial test
  Allow html requests for OrderCycleController#update
  Move applicator calls to OrderCycleForm
  Refactor OrderCycleForm to make logic clearer
  Extract schedule syncing logic into OrderCycleForm
  Add basic specs for OrderCyclesController#create
  Add basic OrderCycleForm to handle create/update logic
  Remove unnecessary respond_to blocks from OrderCyclesController
  Include admin users as managers on new enterprises
  Remove obsolete goWithoutHashFragments
  Simplify Navigation.go, not preserving hash fragments
  Only show change warning for open order cycles
  Use a SubscriptionsCount query object to provide counts to IndexOrderCycleSerializer
  Preload subscription counts for serialization in order cycle collection actions
  Request the subscription count for change warning each time, don't cache
  Ask user to confirm oc date change for open order cycles with subsciptions
  Fix ordering of Gemfile.lock
  Add rack-rewrite to handle redirects
  Renames product bulk edit action to index
  ...
2018-06-22 13:23:18 +02:00
Frank West
8324b00999 Renames product bulk edit action to index
When a user hit cancel while editing a product it took them to the spree
products index page instead of the bulk edit page. The button was part
of a shared view for all resources so changing it's actions were not
readily available.

It was suggested that instead of carrying our own separate controller
action we could just override the index action of the products
controller with the bulk edit functionality instead. This has the
advantage of removing some overrides and allows us to not add
additional overrides in the future.
2018-06-19 17:51:23 +10:00
Rob Harrington
d146d3714f Add callbacks to ensure a user always has a default credit card
(if any exist)
2018-06-08 15:30:01 +10:00
Pau Perez
5c260dae51 Remove no longer valid tests
`#available_to_order?` is gone in Spree 2.0 and our customization on top
of it went away with #2256.
2018-05-14 12:30:11 +02:00
Matt-Yorkley
358edb4727 Disable guest checkout in model 2018-05-11 12:05:27 +10:00
Daniel Dominguez
9d9a974295 Switched gem FactoryGirl to FactoryBot as FactoryGirl is deprecated.
- Change FactoryGirl to FactoryBot everywhere on code.
2018-05-04 11:52:08 -03:00
Pau Pérez Fabregat
1abfe2ab8c Merge pull request #2199 from coopdevs/auto-correct-cops
Auto correct cops
2018-04-16 14:58:28 +02:00
Pau Perez
f5a5d735fd Auto correct Rubocop's Layout/EmptyLinesAroundModuleBody cop 2018-04-09 18:47:18 +02:00
Rob Harrington
236ba9328d Order cycles in specs comply with new date validations 2018-04-04 17:18:33 +10:00
Hugo Daniel
2a942da160 Use rspec context 2018-04-04 14:58:48 +10:00
Hugo Daniel
bd97d08653 Remove stub after test and create two distinct calculators 2018-04-04 14:58:47 +10:00
Hugo Daniel
68ca352510 Use rspec expect syntax 2018-04-04 14:58:47 +10:00
Hugo Daniel
a71b650f89 Added tests 2018-04-04 14:58:47 +10:00
Hugo Daniel
5ec89dde42 Update test sentences to fit new PriceSack behavior 2018-04-04 11:25:26 +10:00
Hugo Daniel
28009afbea Calculate price sack fees and tests 2018-04-04 11:25:25 +10:00
Matt-Yorkley
357ff5fb7d Improve associating customer specs 2018-04-04 10:14:55 +10:00
Em-AK
3b5c3f41a2 Ensure created users are associated with customers
When a user is created with the same email as existing customers
Then the user is associated with these customers

So that the user can access the private shops where he has been invited
to before signup
2018-04-04 10:14:55 +10:00
Pau Pérez Fabregat
87329ad729 Merge pull request #2092 from ltrls/fix-tax-admin-order-show
Fix incorrect tax on Admin Order Show
2018-04-03 08:36:10 +02:00
Pau Perez
0cbd967007 Remove in_stock dead scope
This makes the upgrade to Spree 2.0 a bit easier.
`spree_variants.count_on_hand` is removed in that version and this
column was used in the `in_stock` scope that we no longer use.
2018-03-28 12:13:34 +02:00
stveep
8a783bbb7d PR changes: extract SQL in methods to scopes, add case insensitivity to test for sorting 2018-03-23 17:37:50 +11:00
stveep
40506685ef Adding extra sort step for variant name; ignore case in sorting line items by name 2018-03-23 17:37:50 +11:00
Duende13
ba37db7ccc Refactoring test to adopt most Rspec syntax (expect instead of should) 2018-03-23 17:37:50 +11:00
Duende13
330e7d71af Sort line items by name and unit_value for confirmation email and summary screen 2018-03-23 17:37:50 +11:00