Commit Graph

356 Commits

Author SHA1 Message Date
Pau Perez
d439a5074b Remove unnecessary delegation specs
The custom RSpec matchers they use raises the following deprecation
warning

```
Using `stub` from rspec-mocks' old `:should` syntax without explicitly enabling the syntax is deprecated. Use the new `:expect` syntax or explicitly enable `:should` instead. Called from /home/runner/work/openfoodnetwork/openfoodnetwork/spec/support/matchers/delegate_matchers.rb:22:in `block (2 levels) in <top (required)>'.
```

It's not worth maintaining those matchers to test such
implementation-related thing. Whether or not any delegations work is
something that will be caught by integration tests or directly stubbing
the collaborator object's methods.

This stems from
https://github.com/openfoodfoundation/openfoodnetwork/pull/6902.
2021-03-02 11:54:46 +01:00
Matt-Yorkley
0e3429dc35 Merge pull request #6758 from Matt-Yorkley/enterprise-fees-refactor
Enterprise fees refactor
2021-02-22 17:59:18 +01:00
Jean-Baptiste Bellet
e93474d493 Look for hidden input using the right date time format
- This is an option, and by default it has the previous behavior: look only for visible element
 - This option allows us to look for non-visible elements
 - Using new altInput from flatpickr create a input hidden element. This is why we need to look at this element.
 - Using the altInput from flatpickr forces us to use this default date format
 - As we now use `altInput` from flatpickr, the value used to communicate between backend and frontend is stored into an input type hidden.
2021-02-22 13:00:04 +01:00
Jean-Baptiste Bellet
fbe53a3a2e Use UI to fill date into datetimepicker
This creates a new method to select date and time from datetimepicker.

Field cannot be filled "manually" (ie. by entering its value)
2021-02-22 12:58:29 +01:00
Jean-Baptiste Bellet
fbd6db89c9 avoid selecting the day in the previous month
When you select date at the end of the month (27,28,29,30,...) it is likely possible that this date is already displayed by the calender but for the previous month.
Avoid this by using css selector :not()
2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
b72ef18ad6 update datepicker_helper and add method to select date
Introduce a new method `select_date_from_datepicker` and then use it on test
2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
3ab1d728a1 update helper with right selectors
As we now use flatpickr, need to update css/xpath selectors used by tests.
2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
e3db4e2e86 update test to match new datepicker
And use the method choose_today_from_datepicker
2021-02-08 22:09:06 +01:00
Matt-Yorkley
9abf6cdcdf Rename expensive method Order#update_distribution_charge!
This method is named "update distribution charge". What this method actually does is delete all of the fee adjustments on an order and all it's line items, then recreate them all from scratch. We call this from lots of different places all the time, and it's incredibly expensive. It even gets called from inside of transactions being run inside callbacks. Renaming it hopefully will add a bit of clarity.

This needs to be a lot more granular!
2021-01-29 21:52:28 +00:00
Matt-Yorkley
9d5eaa1790 Delete dead code in delayed job spec helper 2021-01-08 23:18:55 +00:00
Pau Pérez Fabregat
fa812364ff Merge pull request #6453 from andrewpbrett/fix-void-payment-error
fix #5829 (Voiding an initial payment (i.e. a full refund) after partially refunding the order is not possible with Stripe-SCA)
2020-12-14 09:48:41 +01:00
Andy Brett
3d47ad7e33 add stubs for stripe requests 2020-12-08 07:52:42 -08:00
Andy Brett
e866e983f6 add spec for partially refunded SCA orders 2020-12-07 14:51:47 -08:00
Andy Brett
96462325d2 fix #5829 2020-12-04 18:13:43 -08:00
Luis Ramos
2b8f0abe49 Try some mass auto-correct adding frozen-string-literal to all specs 2020-12-03 06:38:24 -08:00
Matt-Yorkley
21d67a0723 Extract some more paypal-specific test code to new helper 2020-11-19 01:44:38 +00:00
Matt-Yorkley
41a5787830 Extract paypal response stubbing to helper 2020-11-18 15:39:01 +00:00
Jason Hsu
8f95de10bc Removed variant argument from click_add_bulk_max_to_cart; updated spec/features/consumer/shopping/shopping_spec.rb to reflect this 2020-10-29 00:35:49 -05:00
Matt-Yorkley
e06e8fc460 Improve flaky form interaction process in #fill_in_tag 2020-10-25 10:17:16 +00:00
Matt-Yorkley
ee402db734 Refactor and DRY tag-rule-filling-in to #fill_in_tag method 2020-10-25 09:01:04 +00:00
Matt-Yorkley
3f1e496731 Fix select2 capybara issues 2020-10-24 23:53:02 +01:00
Matt-Yorkley
f22c7fcdfb Merge pull request #6151 from luisramos0/stripe_save_cards
Stripe Feature Tests: checkout with saved a card
2020-10-24 23:29:29 +02:00
Maikel Linke
81cc951ed4 Name symbols on quantity buttons in specs 2020-10-22 15:46:46 +11:00
Maikel Linke
01c4882759 Replace bulk buy inputs with add-remove-buttons 2020-10-22 15:46:46 +11:00
Maikel Linke
59c13b97ea Replace quantity input with add-remove buttons
The new mobile friendly design contains a nice "Add" button to add
variants to your cart. Once you have the variant in you cart, it's
replaced by plus and minus buttons to adjust the quantity.

Other languages have longer words than "Add" which need to fit on the
button. Since the add button and the +/- buttons should have the same
width, I widened them a little bit so that they fit the longest words
Aggiungi and Добавить.
2020-10-22 15:46:46 +11:00
Maikel Linke
e29be51c45 Place price-breakdown and price in the middle 2020-10-22 15:46:44 +11:00
Luis Ramos
2711139420 Re-use existing stripe stub 2020-10-16 12:37:44 +01:00
Luis Ramos
cf319d3f05 Extract customers stripe stub to StripeStubs helper 2020-10-16 12:37:44 +01:00
Luis Ramos
f5f9a733fb Fix rubocop issue, long module, by extracting StripeStubs to a separate helper module 2020-10-16 12:37:42 +01:00
Luis Ramos
487aaf4862 Extract stub to StripeHelper 2020-10-16 11:12:44 +01:00
Luis Ramos
f13ebf8f21 DRY StripeHelper 2020-10-16 11:09:52 +01:00
Luis Ramos
7efc52075e First attempt at adding a spec to checkout and save a credit card 2020-10-16 09:26:19 +01:00
Luis Ramos
62a54e5f17 Add spec to cover stripe SCA refunds in the backoffice 2020-10-15 14:54:42 +01:00
Luis Ramos
a6ed003cb9 Extract redirect stub to stripe_helper 2020-10-15 14:54:42 +01:00
Luis Ramos
b341f593e7 Improve method names 2020-10-15 14:54:42 +01:00
Luis Ramos
76a9271d9e Add spec to cover payments in the backoffice for an order in the payment state 2020-10-15 14:54:42 +01:00
Luis Ramos
0178d3f1e6 Add spec that takes a stripe payment in the BO 2020-10-15 14:54:42 +01:00
Jason Hsu
a8eaabc5da Used guard clause in spec/support/request/checkout_helper.rb instead of an if statement with two actions; reduces the number of RuboCop offenses from 108 to 107 2020-10-13 12:14:15 -05:00
Jason Hsu
0d051b7c7d Added '# frozen_string_literal: true' to spec/support/request/checkout_helper.rb; reduces number of RuboCop offenses from 109 to 108 2020-10-13 12:05:50 -05:00
Jason Hsu
c6d6b6f65a Removed empty trailing line in spec/support/request/stripe_helper.rb; reduces RuboCop offenses from 110 to 109 2020-10-13 12:01:11 -05:00
Pau Pérez Fabregat
f1e2040ce3 Merge pull request #6061 from arku/fix/sleep-removal
Remove sleep calls from select2 helper
2020-10-13 09:42:25 +02:00
Luis Ramos
9288250194 Merge pull request #5981 from luisramos0/spree_ability
[Bye bye spree] Bring classes related to abilities to OFN
2020-10-12 15:26:30 +01:00
Arun Kumar Mohan
4b7d4ad960 Refactor select2 specs 2020-10-07 21:56:43 -05:00
Arun Kumar Mohan
ead1419583 Remove sleep calls from select2 helper 2020-10-07 21:56:43 -05:00
Luis Ramos
80ea80f26e DRY stripe spec 2020-10-03 11:50:04 +01:00
Luis Ramos
ef70c1fc5c Make helper more flexible and use it in a spec 2020-10-02 19:20:32 +01:00
Luis Ramos
83456f94e3 Simplify test by re-using helper stripe mock 2020-10-02 19:12:56 +01:00
Luis Ramos
ff9f374950 Merge pull request #6050 from Matt-Yorkley/stripe-checkout-spec
Stripe checkout spec
2020-10-02 18:57:22 +01:00
Matt-Yorkley
1cc950a4d9 DRY StripeHelper methods 2020-10-01 15:54:16 +01:00
Matt-Yorkley
c518e7e0dd Extract Stripe credit card form filling 2020-09-28 19:59:26 +01:00