Commit Graph

156 Commits

Author SHA1 Message Date
Matt-Yorkley
dcc3d933bc Add retry handling for flaky spec timeouts 2021-02-08 12:38:22 +00:00
Pau Perez
fd80d4a67f Remove old deprecation warning
We're in Rails 4.2 so we can remove it. This gets rid of the following
message when running tests:

```
DEPRECATION WARNING: Suppressing Selenium deprecation warnings is not needed any more. (called from block in <top (required)> at /usr/src/app/spec/spec_helper.rb:214)
```
2021-01-18 17:01:43 +01:00
Matt-Yorkley
a7ad62a735 Update deprecated devise spec helper
Devise has been complaining about this for a while in the test suite:
```
[Devise] including `Devise::TestHelpers` is deprecated and will be removed from Devise.
For controller tests, please include `Devise::Test::ControllerHelpers` instead.
```
2021-01-16 13:54:09 +00:00
Luis Ramos
1ea775cffb Keep factory bot v4 behaviour
In v5 the default value is true, that means that all parent objects (for example the order od a line item) will be built using the same strategy as the object (build or create), in v4 and now with this config, the parent is always created

We can revert this and use the default value but that will require some adaptions, quite a lot of specs are broken with that behaviour activated
2020-12-12 00:23:24 +00: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
2b884be8dd Update specs to work with ActionMailer::DeliveryJob 2020-11-27 14:00:29 +00:00
Matt-Yorkley
6b45208cf1 Define Capybara server
The server type now has to be set explicitly for Capybara
2020-11-27 14:00:28 +00:00
Pau Pérez Fabregat
8e3f0d2152 Merge pull request #6134 from Matt-Yorkley/webmock-helper
Improve Webmock debugging
2020-11-05 13:11:02 +01:00
Rajan Joshi
fbadf25043 Add coverage threshold for simplecov. 2020-10-11 17:18:50 +01:00
Matt-Yorkley
6d169c1b08 Improve Webmock debugging 2020-10-05 17:11:34 +01:00
Matt-Yorkley
4ed34bb942 Add javascript debug option to test suite 2020-09-18 21:20:47 +01:00
Luis Ramos
cfdfd82d9a Replace api controller test helpers with easier existing alternatives 2020-08-31 17:05:51 +01:00
Luis Ramos
d0c07b931a Bring Spree::TestingSupport::Preferences from spree_core to ofn as PreferencesHelper 2020-08-22 16:50:12 +01:00
Luis Ramos
b6adef38e5 Remove unused auth helpers 2020-08-22 16:50:12 +01:00
Luis Ramos
0ca4d0842a Remove capybara_ext from spree and bring its helpers that are required in ofn 2020-08-22 16:50:12 +01:00
Matt-Yorkley
0edeb82c32 Update spec/spec_helper.rb
Co-authored-by: Maikel <maikel@email.org.au>
2020-08-11 14:02:49 +02:00
Matt-Yorkley
74252e9d13 Suppress Selenium warnings in test log output. 2020-08-09 14:02:07 +01:00
Pau Perez
6e39ab779c Make RSpec infer the file type from its location
Apparently, although we tend to add the type of spec file some RSpec
methods are not working without it. We're getting:

```
NoMethodError:
  undefined method `helper' for RSpec::ExampleGroups::SpreeSharedOrderDetailsHtmlHaml:Class
```

```
NameError:
   undefined local variable or method `controller' for #<RSpec::ExampleGroups::SpreeAdminUsersController::AuthorizeAdmin:0x00007fa8b32addf8>
 # ./spec/controllers/spree/admin/users_controller_spec.rb:10:in `block (3 levels) in <top (required)>'
```

It needs more investigation but another day.
2020-08-04 11:24:49 +02:00
Luis Ramos
6eebb0e399 Use rubocop autocorrect to fix rubocop issue 2020-06-22 12:58:33 +01:00
Luis Ramos
88896b7730 Merge branch 'master' into 3-0-stable-jun-2 2020-06-08 19:17:11 +01:00
Luis Ramos
2f76e0b15b Bring methods from Spree::TestingSupport::ControllerRequests to our ControllerRequestsHelper so we can merge them later 2020-06-02 13:54:33 +01:00
Luis Ramos
5d0856e5a3 Rename ControllerHacks to ControllerRequestsHelper and move it's configuration to spec_helper 2020-06-02 13:47:59 +01:00
Luis Ramos
f34f693620 Merge branch 'master' into 3-0-stable-may-22 2020-05-22 22:54:19 +01:00
Luis Ramos
639c1e1ccc Rename method, it's not phantomjs running underneath any more 2020-05-22 10:57:51 +01:00
Luis Ramos
19da0ba969 Merge branch 'master' into 3-0-stable-may13 2020-05-13 19:50:32 +01:00
Matt-Yorkley
61d7adaf74 Enable optional caching tag in test metadata 2020-05-05 18:43:09 +02:00
Matt-Yorkley
046d8e0b87 Explicitly configure shoulda-matchers in spec_helper
This is apparently needed in Rails 4
2020-02-22 11:06:51 +00:00
Maikel Linke
ec1b5a7a92 Test concurrent checkouts
When two people tried to buy the same item at the same time, it was
possible to oversell the item and end up with negative stock.

Parallel checkouts could also lead to other random failures. This spec
is testing that scenario by starting two threads which would run into a
race condition unless they use effective synchronisation. The added spec
fails if the synchronisation is removed from the CheckoutController.
2019-11-19 18:18:01 +11:00
luisramos0
9404aacfb2 run rubocop --auto-correct 2019-11-10 18:42:43 +00:00
luisramos0
00e789b95b Force use of expect over should in spec expectations 2019-09-20 10:29:56 +01:00
luisramos0
25451eed6b Bring api spec helpers from spree_api into ofn/api_helper 2019-07-31 09:36:48 +01:00
luisramos0
18aa16650d Remove dependency to Spree::ApiConfiguration, overall requires_authentication? is true, exceptions will be endpoint specific 2019-07-31 09:35:46 +01:00
luisramos0
1681e8a572 Remove unused auth config 2019-07-08 14:06:01 +01:00
luisramos0
17448699f9 Bring devise initializer from spree_auth_devise and fix spree initializer details 2019-07-05 22:45:59 +01:00
luisramos0
86b0d71c7e Result of rubocop auto-correct and rebuilding rubocop_manual_todo 2019-05-28 12:57:29 +01:00
luisramos0
5858a83239 Simplify spec_helper config to make file downloads work in headless chrome 2019-05-23 20:31:52 +01:00
Eelco de Vlieger
5667c00587 issue 3450 - add webdrivers dependency (+ spec helper setup) and remove chromedriver-helper dependency
https://github.com/openfoodfoundation/openfoodnetwork/issues/3450
2019-05-08 19:10:14 +01:00
luisramos0
7cc5940e19 Load DownloadsHelper only for feature specs 2019-04-02 11:39:52 +01:00
luisramos0
d9304916cc Add chrome driver config to make testing csv downloads with headless chrome possible 2019-04-02 11:39:52 +01:00
luisramos0
c652cfe4d5 Merge branch 'master' into 2-0-stable-Feb12 2019-02-12 16:03:33 +00:00
Kristina Lim
da4d6a092a Add spec helper for choosing today from datepicker 2019-01-26 02:03:56 +08:00
luisramos0
0460e7fc6c Merge branch 'master' into 2-0-stable-jan-17th 2019-01-17 22:51:25 +00:00
Rob Harrington
1bad08c1c0 Update checkout_workflow and spec_helper to work with Selenium 2019-01-16 16:21:30 +00:00
Rob Harrington
70502a7a32 Switch to using selenium as js driver for capybara specs
PhantomJS is no longer being maintained
2019-01-16 16:21:30 +00:00
luisramos0
e28f9a7c84 Merge branch 'master' into 2-0-stable-jan-8th 2019-01-08 14:29:50 +00:00
Kristina Lim
a460e9d35f Allow disabling Knapsack when running RSpec tests 2018-12-19 17:50:29 +08:00
luisramos0
cdee7c0422 Merge branch 'master' into 2-0-stable-dec-10th 2018-12-10 16:41:29 +00:00
Pau Perez
25567d6bd6 Do not clean DB twice on feature specs
It turns out that we were executing `DatabaseCleaner.clean` on two
`after(:each)` blocks. One for all specs and another one for `js: true`
specs. As a result feature specs were hitting both which slows them down
considerably.

On my machine this changes consistently saves 2sec on
`spec/features/consumer/shops_spec.rb` but chances are it has an
accumulative effect when run on the whole test suite.
2018-12-05 09:58:14 +01:00
luisramos0
90d7b7f4a0 Merge branch 'master' into 2-0-stable-oct-25 2018-10-25 14:28:58 +01:00
luisramos0
87cd73ddba Merge branch 'master' into 2-0-stable-oct 2018-10-15 17:09:26 +01:00