Commit Graph

200 Commits

Author SHA1 Message Date
Maikel Linke
e6adb8a3b9 Extract email setup in specs for easy upgrade
The way we set up email sending completely changes with Spree 2. This
change encapsulates that code in a single method so that it can be
changed easily and doesn't create further merge conflicts while we are
still working on the master branch and the Spree upgrade.
2018-10-25 13:53:22 +11:00
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
Kristina Lim
c14e7ea8d5 Allow bulk update of order cycle name 2018-08-16 21:18:24 +08:00
Rob Harrington
edde929ced Replace uses of #stub with #allow in Admin::CustomersController 2018-07-05 19:26:12 +10:00
Rob Harrington
21c3f7d21c Remove unrequired #cards and #addresses actions from Admin::CustomerController 2018-07-05 19:26:12 +10:00
Rob Harrington
cf8ca1f8c1 Add show action to Admin::CustomersController 2018-07-05 19:26:11 +10:00
Rob Harrington
25525ae30b Move applicator calls to OrderCycleForm 2018-06-22 09:46:08 +10:00
Rob Harrington
d9830749f1 Extract schedule syncing logic into OrderCycleForm 2018-06-22 09:46:08 +10:00
Rob Harrington
21bd9d2e10 Add basic specs for OrderCyclesController#create 2018-06-22 09:46:08 +10:00
Rob Harrington
7af11da901 Use a SubscriptionsCount query object to provide counts to IndexOrderCycleSerializer 2018-06-20 13:06:06 +10:00
Rob Harrington
d5b1041481 Preload subscription counts for serialization in order cycle collection actions 2018-06-20 13:06:06 +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
Matt-Yorkley
1782a8c700 manager invite permissions spec 2018-04-27 10:13:54 +10:00
Rob Harrington
b17d8c2fe3 Add validation of open and close dates for order cycles 2018-04-04 17:18:32 +10:00
Rob Harrington
b14f27f956 Return an error if no order_cycle_set params are submitted to #bulk_update action 2018-04-04 17:17:36 +10:00
Rob Harrington
18f7ec992d Refactor loading of OrderCycleSet in OrderCyclesController
This should result in a significant speed bump in saving order cycles in bulk, because only referenced OCs are loaded into the set, rather than OrderCycle.all
2018-04-04 17:17:36 +10:00
Rob Harrington
a83bdf16c9 Add error message for case when schedule cannot be deleted 2018-04-04 09:21:52 +10:00
Matt-Yorkley
5f0075f8b7 Refactor to use new REST resource 2018-03-16 17:32:38 +00:00
Matt-Yorkley
128ca3b1ef Invite manager specs 2018-03-15 18:48:47 +00:00
Rob Harrington
b98afc00ba Show message about resumable orders when unpausing a subscription 2018-03-07 14:24:59 +11:00
Rob Harrington
ae1c8344d1 Ensure price estimates generated for subscriptions take overrides into account 2018-02-22 16:16:49 +11:00
Rob Harrington
7017c8540c Replace references to 'standing line item' with 'subscription line item' 2018-02-09 14:44:15 +11:00
Rob Harrington
ae4420d9ba Rename standing line item files 2018-02-09 14:44:14 +11:00
Rob Harrington
b7876ebfbf Replace references to 'standing order' with 'subscription' (spec) 2018-02-09 14:44:14 +11:00
Rob Harrington
902802594f Renaming standing order files (lib, spec) 2018-02-09 14:44:13 +11:00
Rob Harrington
8bf460c93a Manually fix remaining rubocop offences 2018-02-09 14:44:08 +11:00
Rob Harrington
fb28940952 Use Time.zone.now instead of Time.now 2018-02-09 14:44:07 +11:00
Rob Harrington
03f1980b1b Auto-correct rubocop offences for standing-orders 2018-02-09 14:44:07 +11:00
Rob Harrington
d6a9d63de5 Replace StandingOrderSyncJob with ProxyOrderSyncer service object 2018-02-09 14:44:06 +11:00
Rob Harrington
bdac68900f Move address and card loading logic down into DetailsController
Also switch to using CreditCardResource to load the card
2018-02-09 14:44:05 +11:00
Rob Harrington
c94badbf36 Stub or provide mailer as appropriate 2018-02-09 14:44:04 +11:00
Rob Harrington
494f2f4821 Add cards lookup action to CustomersController 2018-02-09 14:44:04 +11:00
Rob Harrington
d3937e5c80 Move customer address lookup action to CustomersController 2018-02-09 14:44:03 +11:00
Rob Harrington
26b85052e1 Load only Cash and Stripe payment methods into standing order form actions 2018-02-09 14:44:03 +11:00
Rob Harrington
fce2d743e5 Adding proxy-order state to specs 2018-02-09 14:44:02 +11:00
Rob Harrington
ab5dc7ddd5 Require action from user when pausing/cancelling standing order with open orders 2018-02-09 14:44:02 +11:00
Rob Harrington
7dcd39986f Refactoring StandingOrder validations and errors
Moving validations to StandingOrderForm
2018-02-09 14:44:01 +11:00
Rob Harrington
ceaae89dee Prevent order cycles that are linked to schedules from being destroyed 2018-02-09 14:44:00 +11:00
Rob Harrington
877a5f27d1 ProxyOrder state is 'pending' until OC opens, then 'cart' until OC closes 2018-02-09 14:44:00 +11:00
Rob Harrington
57653cb911 Displaying setup instructions on Standing Orders index 2018-02-09 14:43:58 +11:00
Rob Harrington
a6add2eff6 Limiting shops loaded onto standing orders index to those with standing orders enabled 2018-02-09 14:43:57 +11:00
Rob Harrington
875557dc9d WIP: ProxyOrders don't require an order, fixing remainder of specs 2018-02-09 14:43:55 +11:00
Rob Harrington
2231d4c6cf Using factories to build spec data rather than StandingOrderForm 2018-02-09 14:43:54 +11:00
Rob Harrington
64206bc35b ProxyOrders belong to order cycles 2018-02-09 14:43:54 +11:00
Rob Harrington
e351c3e355 Renaming StandingOrderOrder to ProxyOrder 2018-02-09 14:43:54 +11:00
Rob Harrington
c2b68ed6b5 Running StandingOrderSyncJob when order cycles added to a schedule via OrderCyclesController 2018-02-09 14:43:53 +11:00
Rob Harrington
0a74bb8373 Running StandingOrderSyncJob when order cycles added to a schedule via SchedulesController 2018-02-09 14:43:53 +11:00
Rob Harrington
8ff9ffbc38 Adding controller actions and routes for pausing and unpausing a standing order 2018-02-09 14:43:52 +11:00
Rob Harrington
736de4826f Renaming cancelled_at column to canceled_at, for consistency 2018-02-09 14:43:52 +11:00
Rob Harrington
7dcf7ec5b0 Adding controller action and route for cancelling a standing order 2018-02-09 14:43:51 +11:00