Julius Pabrinkis
8e10269b50
Try to fix intermittently failing test for product distribution
2017-11-10 08:47:12 +11:00
Julius Pabrinkis
dae74666c5
Add missing 'type: :request' for request spec
2017-11-10 08:47:12 +11:00
Julius Pabrinkis
94e31e35ba
Fix Spree::Admin::BaseController related issues
2017-11-10 08:47:12 +11:00
Rob Harrington
c835b4eb1a
Replacing stub_model objects with actual factory generated instances
2017-11-10 08:47:12 +11:00
Rob Harrington
ef9e43fbd3
Replacing mock_model objects with instance_doubles
2017-11-10 08:47:12 +11:00
Rob Harrington
f083433854
Explicitly specifying 'type: :helper' for all helper specs
2017-11-10 08:47:12 +11:00
Rob Harrington
9052b1c3db
A few updates to spec where 'be true' and 'be false' didn't cut it
2017-11-10 08:47:12 +11:00
Rob Harrington
59578a73af
Changing all references to 'be_true' and 'be_false' to 'be true' and 'be false'
...
See next commit for changes where this substitution was broken
2017-11-10 08:47:12 +11:00
Rob Harrington
c691e260cf
Rspec matcher enqueue_job for Delayed::Job supports block expectations
2017-11-10 08:47:12 +11:00
Rob Harrington
82072c8970
Explicitly specifying 'type: :controller' for all controller specs
2017-11-10 08:47:12 +11:00
Pau Perez
84e4ebef08
Do not notify Bugsnag of a cache miss
...
It's not the responsibility of a error tracking software to track
neither cache misses nor logs. That is what log monitoring is for.
2017-11-09 10:22:31 +01:00
Pau Perez
98603c4042
Do not test private methods
2017-11-09 10:22:31 +01:00
Pau Perez
26a4ee0171
Do not stub object under test
2017-11-09 10:22:31 +01:00
Pau Perez
4f03a2d25c
Remove unnecessary require
2017-11-09 10:22:31 +01:00
Matt-Yorkley
01647c3df9
Disable allow_backorders by default in test environment
2017-11-02 17:43:46 +11:00
Rob Harrington
cd6d7c76f6
Fix spec that requires preference persistence
2017-11-02 17:43:04 +11:00
Rob Harrington
efa71c4ac8
Use Spree's approach for handling config when testing
2017-11-02 17:43:04 +11:00
Rob Harrington
d4eb27a4ed
Fix race condition in shipping method order spec
2017-11-01 16:37:12 +11:00
Duende13
eca18ba6ee
Test to control order of shipping methods by name
2017-11-01 15:30:42 +11:00
Andy Palmer
fd09a63e48
Imperative specs as per review comments
2017-10-24 17:56:04 +11:00
Andy Palmer
fea2240c39
Disabled product links in cart for openfoodfoundation/openfoodnetwork#1075
2017-10-24 14:56:35 +11:00
Rob Harrington
ceadd386aa
Update order spec to test an order with a total > 0
...
This is necessary because the previous commit changed the logic
around payment state, meaning that a complete order with a total
of 0 and no complete paymnents is considered to have a payment
state of 'paid'. I don't think this is problematic, since it is
not possible to check out an order without line items.
This way the spec tests an order modelled on the real world.
2017-10-20 15:21:59 +11:00
Rob Harrington
d42dc2b286
Fix #1902 : ensure correct payment state when failed payments are present
...
Problem: order payments didn't seem to be loaded in any particular order,
and OrderUpdater#update_payment_state was relying on payment order to de-
termine payment state.
Strategy: Adapt a version of this method from a future version of Spree.
I tried to select a version where I would have to make the absolute mini-
mum number of changes to get it to work. See comments in code for justif-
ications of the changes that I did make.
2017-10-20 15:21:59 +11:00
Rob Harrington
b7976a2356
Do not update finalized fee adjustments
2017-10-19 16:54:39 +11:00
Rob Harrington
0d483882de
Update helper messages in Stripe Connect config UI
2017-10-16 10:37:04 +11:00
Rob Harrington
1fcbf6b44d
Clear shipping_method_id from order when restarting checkout
...
If the order is allowed to retain a shipping_method_id, then subsequent
saves of the order will cause a new shipment to be initialised. Seems to
only happen for delivery shipping methods. This is undesirable because
fees for the new shipment will appear in the checkout summary, which is
not smart enough to recognise existing shipment fees and adjust the order
total accordingly.
2017-10-13 12:53:35 +11:00
Rob Harrington
f96502c369
Add unit specs for CheckoutController#restart_checkout
2017-10-13 12:53:35 +11:00
Rob Harrington
c031b0e52b
Clear shipments and payments after failed payment at checkout
2017-10-13 12:53:35 +11:00
Rob Harrington
6006952603
Moving checkout request specs into their own folder
2017-10-13 12:53:35 +11:00
Duende13
e5fb8712d7
Simplify Product Edit Screen removing fields and adding 2 new menu options for seo and group buy ( #1741 )
2017-10-13 11:37:57 +11:00
Pierre de Lacroix
508dfa4f23
Fix failing tests assuming localizeCurrency has no "delimiter"
2017-10-13 10:26:13 +11:00
Rob Harrington
f2ad087be5
Change inheritance of StripeAccountsController
2017-10-13 07:57:16 +11:00
Rob Harrington
0b8b5e694e
Move Stripe Connect callback action to dedicated controller
2017-10-12 22:47:51 +11:00
Rob Harrington
01f9fd3232
Rename webhook handler status mappings
2017-10-12 22:47:51 +11:00
Rob Harrington
99cac20725
Fall back to 200 when handler returns an unknown result
2017-10-12 22:47:51 +11:00
Rob Harrington
068dbe5013
Add verification to Stripe webhook endpoint
2017-10-12 22:47:45 +11:00
Rob Harrington
ed375a1e2c
Build Event object in controller instead of service object
2017-10-12 20:51:17 +11:00
Rob Harrington
4345285164
Allow more granularity in Stripe WebhookHandler responses
2017-10-12 20:51:17 +11:00
Rob Harrington
eb7cb02f33
Namespace stripe webhook controller in Stripe module
2017-10-12 20:50:29 +11:00
Rob Harrington
f22dd7513d
Add a service object for handling Stripe webhooks
2017-10-11 17:50:46 +11:00
Rob Harrington
c54119f482
Rename stripe controller action from 'deauthorize' to 'webhook'
2017-10-11 17:11:02 +11:00
Rob Harrington
23d2b3a664
Move Stripe webhook logic into dedicated frontend controller
2017-10-11 16:38:19 +11:00
Rob Harrington
c747bb5305
Remove improper use of quick_login_as_admin from unit spec
2017-10-11 16:10:08 +11:00
Rob Harrington
75ec77dc31
Remove the 'confirm' step from the order checkout flow
...
This step is not being responded to anyway, since we are not rending a page for each checkout step
It was causing an issue whereby an order in the 'confirm' state was not able to progress through the
checkout controller because it was expecting to only redirect to paypal from the 'payment' state.
figured it was easiest to just remove the step, seeing as it wasn't being used in any meaningful way.
It should be fine to bring the 'confirm' step back in the future if we need it, we will just have to
make sure paypal the paypal issue is resolved.
2017-09-23 15:15:06 +10:00
Rob Harrington
a09a54e4cb
Set transaction fee adjustments to ineligible if payment is invalid or failed
2017-09-23 15:15:06 +10:00
Rob Harrington
e486dbd4f8
Respond to Stripe webhook with status of 204 if specified account is not found
2017-09-23 14:58:35 +10:00
Rob Harrington
db5503dd80
Allow destruction of StripeAccounts even if deauthorise request fails
...
Log deauthorise failures to Bugsnag
2017-09-23 14:58:35 +10:00
Rob Harrington
dd3d205536
Update deauthorize webhook to latest version of API (again)
2017-09-23 14:58:35 +10:00
Rob Harrington
90007d7114
Prevent Stripe-based payment methods that are not linked to a StripeAccount from displaying in the checkout
2017-09-23 14:58:35 +10:00
Rob Harrington
7ba99c0fe0
Update Bogus Gateway error message in checkout spec
2017-09-23 14:58:35 +10:00