Maikel Linke
342ef4e9eb
Complete smoke test of DFC data sharing
...
Working within a shadow root of the web component isn't well supported
by Capybara and I needed to find some workarounds. It's not pretty but
it works (on my machine). *fingers crossed*
2025-08-08 14:00:41 +10:00
Maikel Linke
210201514e
Add gem capybara-shadowdom to access web component
2025-08-08 14:00:41 +10:00
Maikel Linke
d01474ebcd
Ignore Chrome's automatic requests to Google services
2025-07-30 12:25:34 +10:00
Maikel Linke
a062a7b697
Add Billy proxy to Chrome in system specs
...
And demonstrate the use of puffing-billy browser proxy.
Billy can cache and record responses to browser requests. For that to
work we need to allow network connections and disable VCR. But instead I
found that the Billy proxy is just like any other Ruby backend code and
its connections can be recorded with VCR instead.
And instead of stubbing requests via Billy.proxy, we can use standard
Webmock `stub_request`. Now we use puffing-billy just to relay browser
requests via our Ruby app.
2025-07-29 14:37:27 +10:00
Maikel Linke
c9ec7e13d3
Add missing spec cassette
2025-05-29 11:42:53 +10:00
David Cook
75dcee12a8
Re-record fixture
...
And document how to run it.
2025-03-25 10:38:34 +11:00
David Cook
eff8fdb28b
Move to new job
...
And re-organise specs.
TOFIX: concurrency test now fails. why?
Use correct testing methods
2025-03-25 10:38:34 +11:00
David Cook
5b21c81ca5
Synchronise remote products when order cycle opens
...
I considered pre-loading the variant and product with includes, But can't do that here because it's a polymorphic relationship.
2025-03-25 10:27:47 +11:00
Maikel Linke
bb503e12a3
Direct people to refresh OIDC connection
...
Not the best UX but the easiest next step to implement. Next we should:
* Include link in error message instead of redirecting straight there.
Otherwise users may feel disoriented.
* Provide a custom error message?
2025-02-18 12:14:12 +11:00
Maikel Linke
00a2894e93
Clear invalid OIDC tokens
2025-02-18 11:48:17 +11:00
Maikel Linke
60b62d41d6
Remove old, replaced backorder lookup
2024-12-17 13:48:03 +11:00
Maikel
de938f6f10
Merge pull request #12949 from rioug/12859-use-VINE-voucher
...
[City OFN Voucher] A shopper can use a VINE voucher
2024-12-03 14:04:44 +11:00
Maikel
697f430156
Merge pull request #12992 from mkllnk/errors
...
Add simpler Alert.raise interface to notify Bugsnag
2024-12-03 13:29:11 +11:00
Gaetan Craig-Riou
0569b30e0d
Refactor Vine related services
...
Move them under Vine module to keep the code nicely organised
2024-11-28 13:35:01 +01:00
Gaetan Craig-Riou
cf13dc2ff6
Add system spec when completing order with VINE voucher
2024-11-28 13:35:01 +01:00
Gaetan Craig-Riou
b30096317c
VineApiService, add voucher_redemptions
...
It is used to redeem a voucher
2024-11-28 13:35:01 +01:00
Gaetan Craig-Riou
c89b4fb86b
Add system spec fot adding VINE voucher to order
2024-11-28 13:35:01 +01:00
Gaetan Craig-Riou
7cbe77668a
VineApiService, add voucher_validation
...
It is used to validate a voucher using the given short code
2024-11-28 13:35:01 +01:00
Maikel Linke
73a1698aad
Add live test for Bugsnag
...
Needs human to review Bugsnag account.
2024-11-21 15:28:19 +11:00
Maikel Linke
a8fb6492f4
Lookup backorder for updates with saved link
2024-11-19 15:53:59 +11:00
Maikel Linke
337113000f
Avoid collision of test secrets
...
A test was failing locally because I have the OpenID client secret set
in my environment. And the dummy value was the same as another test key.
So it got replaced with the wrong value.
2024-10-30 16:03:29 +11:00
Maikel Linke
e0638b1765
Amend backorder after cancellations
...
The new job class blends code from the BackorderJob and the
CompleteBackorderJob for the specific case of adjusting quantities after
an order has been cancelled.
I would like to write a more general class which can be used for any
order amendmends but this was the quickest solution to cater for
currently running pilots.
2024-10-24 17:08:50 +11:00
Maikel Linke
63c83a19d6
Fix backorder spec with incomplete test data
2024-10-24 16:21:39 +11:00
Maikel Linke
7b8aeb7ef8
Request offline access when connecting OIDC account
2024-10-18 09:39:49 +11:00
Rachel Arnould
f54552f939
Merge pull request #12886 from rioug/12855-VINE-connected-app
...
[Citi OFN Voucher] Add VINE connected app
2024-10-14 15:32:09 +02:00
Gaetan Craig-Riou
224738e0a1
Per review, clean up code
2024-10-07 15:09:51 +11:00
Maikel Linke
f8bd0a1cc7
Adjust backorder for stock controlled items
...
We aggregate quantities over the whole order cycle to account for
cancelations and order adjustments by admins.
2024-10-03 15:58:53 +10:00
Maikel Linke
11f3bbc566
Remove leftover recording
2024-10-03 13:28:17 +10:00
Gaetan Craig-Riou
097c6dee2f
Add VineApiService and specs
...
It handles connection to the VINE API
2024-10-02 16:44:21 +10:00
Maikel Linke
e31e45b875
Place backorders in the background
2024-09-26 14:32:55 +10:00
Maikel Linke
66f080232f
Import DFC product images
2024-09-25 10:55:41 +10:00
Maikel Linke
070b93c531
Fall back to givin product id w/o retail variant
2024-09-25 10:55:40 +10:00
Maikel Linke
fb96f8f936
Fall back to given product w/o wholesale variant
...
The class is moving to providing all data with several methods instead
of a data class containing the information. That should be more
flexible. Still some work to do.
2024-09-25 10:55:40 +10:00
Maikel Linke
5ef85aef3e
Handle backorder cancellations
2024-09-25 10:55:40 +10:00
Maikel Linke
283db8f9d0
Adjust quantities of backorder before completion
2024-09-25 10:55:40 +10:00
Maikel Linke
c948efd9ce
Add structure to adjust final quantities
2024-09-25 10:55:40 +10:00
Maikel Linke
efe2b724e6
Find wholesale offer for retail variant
2024-09-25 10:55:40 +10:00
Maikel Linke
8f4f873ba0
Move offer finding into separate class
...
It's going to be more complicated.
2024-09-25 10:55:40 +10:00
Maikel Linke
c0ae2ede2c
Complete order 4 hours after order cycle closed
2024-09-25 10:55:40 +10:00
Maikel Linke
3849db7c48
Simplify order update call
2024-09-25 10:55:39 +10:00
Maikel Linke
7b286ea31d
Complete test for FDC Orders API
...
Previous specs testing the live API assumed an order to be present or
not present. You needed to provide the right state before recording. I
condensed more into one test that completes the cycle and is repeatable,
assuming no order to start with.
2024-09-25 10:55:39 +10:00
Maikel Linke
f839452df9
Complete an open order
2024-09-25 10:55:39 +10:00
Maikel Linke
a7a38890f4
Add needed quantities to existing line items
2024-09-25 10:55:39 +10:00
Maikel Linke
caa6d284f0
Find and update existing open order
2024-09-25 10:55:39 +10:00
Maikel Linke
6c6927af84
Add SaleSession with correct OrderCycle times
...
Apparently, the FDC implementation uses those dates to finalise orders.
2024-09-25 10:55:39 +10:00
Maikel Linke
98966f6b89
Place backorders for DFC products
2024-09-25 10:55:39 +10:00
Joseph Johansen
922b853e3a
Define specs for rake task to combine results
2024-08-21 13:02:31 +01:00
Maikel Linke
ec828c335d
Remove superfluous FDC-specific request class
2024-08-07 15:09:05 +10:00
Maikel Linke
6d03a8ddf3
Test that the FDC is now complying with the DFC
2024-08-07 15:09:05 +10:00
David Cook
5d0f55b8c3
Re-organise spec
...
Best viewed with whitespac ignored.
2024-07-25 17:06:13 +10:00