Commit Graph

12842 Commits

Author SHA1 Message Date
Maikel Linke
c5d38d684b Remove repeated navigation to speed up spec 2026-03-20 11:51:50 +11:00
Maikel Linke
c2907b839a Remove ineffective sorting spec
The spec was not really testing the order of users appearing on the
page. It's also a UX detail only visible to super admins which is not
important to test. So I'm not investing time to fix it.
2026-03-20 11:51:50 +11:00
Maikel Linke
ee653bb825 Remove redundant spec description
Admin users are the only one who can manage users.
2026-03-20 11:51:50 +11:00
Maikel
c5aaecf76a Merge pull request #13961 from mkllnk/taler-checkout-stock-error
Taler checkout stock error
2026-03-20 11:29:58 +11:00
Maikel Linke
8f0d4d23a7 Restore Stripe spec stubs as todo list 2026-03-18 14:54:44 +11:00
Maikel Linke
d56b4b4109 Make locale spec more accurate 2026-03-18 14:49:35 +11:00
Maikel Linke
7a01409f5c Save time by avoiding page visit 2026-03-18 14:49:34 +11:00
Maikel Linke
5c634c269b Remove unused helpers from spec 2026-03-18 14:49:34 +11:00
Maikel Linke
63988fff4f Configure test locales like other envs
The locale config is set in application.rb from environment variables
already. We don't need to repeat that logic in test.rb. And because it
was outdated, the language switcher was actually broken in the test
environment. We did have an English selector for the fallback `en` even
though we were already displaying English as en_TST. And after
switchting to Spanish, we could switch back because en_TST was not in
the available locales.

I now fixed the test with the right assumption and the config to solve
the problem.
2026-03-18 14:49:15 +11:00
Maikel Linke
d56790b71e Remove unneeded context blocks
Best viewed ignoring whitespace.
2026-03-18 13:23:54 +11:00
Maikel Linke
c2f725b20c Remove redundant language setup
We tested earlier already that we have the needed languages available.
2026-03-18 13:21:27 +11:00
Maikel Linke
b939d41bf5 Remove useless negative spec
Any change in markup would invalidate the test.

It is unlikely to ever fail and then it would not be a big problem.
2026-03-18 13:18:15 +11:00
Maikel Linke
91c4ba03cd Remove more expensive specs 2026-03-18 13:15:35 +11:00
Maikel Linke
3f29cdab3c Combine specs and add detail 2026-03-18 13:14:57 +11:00
Maikel Linke
60a4d36408 Remove expensive without really new coverage 2026-03-18 13:08:24 +11:00
Maikel Linke
9513c07c2f Remove ineffective test
It would pass even if locales were broken.
2026-03-18 13:05:23 +11:00
Maikel Linke
4b5fd2495f Restore multilingual spec 2026-03-18 13:03:48 +11:00
David Cook
93c9181c3f Merge pull request #14021 from mkllnk/money
Remove dead code from Spree::Money
2026-03-18 10:50:54 +11:00
David Cook
7473a2f0bd Merge pull request #14020 from mkllnk/flaky-invite-spec
Expect UI change before emails
2026-03-18 10:49:03 +11:00
Maikel Linke
0629153362 Complete code coverage on Taler error handling 2026-03-11 16:05:54 +11:00
Gaetan Craig-Riou
4946ffc329 Add specs for CustomerAccountTransaction ability 2026-03-11 15:45:33 +11:00
Gaetan Craig-Riou
c134bbf49b Add missing ability for credit customer
Fix the specs to use a non super admin user, so it should catch missing
ability in the future.
2026-03-11 15:34:27 +11:00
Maikel Linke
5e871fc71e Expect UI change before emails
Fixing a flaky spec.
2026-03-11 15:30:39 +11:00
Maikel Linke
35e03ea3c7 Check stock before completing order after Taler payment 2026-03-11 15:12:21 +11:00
Maikel Linke
4140209820 Remove unused delegator to Money#cents 2026-03-11 14:56:28 +11:00
Maikel Linke
9ca1a9e33f Allow orders to be paid before checkout
Taler puts the payment completion into the hands of the user. So we
can't strictly finalise the payment and order together.

And in the bigger picture, it should be okay if a payment goes through
but we have to abort checkout due to stock issues. Then we want to be
able to check out again, using the existing complete payment. Any
refunds can be handled later by the shop owner.
2026-03-11 14:46:06 +11:00
Maikel Linke
62af416696 Avoid useless page visit causing spec flakiness 2026-03-11 14:41:40 +11:00
Maikel Linke
bcf39acebc Remove confusing if-branch in shared examples 2026-03-11 14:41:40 +11:00
Maikel Linke
82186118a7 Remove long inactive specs
Several years ago, some checkout features got rewritten and some specs
became invalid. They had been set to pending to keep the option of
rewriting them one day. Some were re-written. But I'm deleting the
remainder.

If we haven't "needed" these specs for several years then I question
their use. System specs are expensive and should only cover the most
common scenarios or the ones we know could go wrong (after a bug
report). We can always write new specs if needed. Otherwise they are
just adding to maintenance cost.
2026-03-11 14:41:40 +11:00
Gaetan Craig-Riou
4810b02233 Merge pull request #13702 from marincarroll/improve-accessibility-of-admin-pagination
Improve accessibility of admin pagination
2026-03-10 22:12:57 +11:00
Gaetan Craig-Riou
5cf213f22a Fix failing spec 2026-03-10 16:07:43 +11:00
Gaetan Craig-Riou
d5dec05ab1 Remove payment method ApiCustomerCredit 2026-03-10 16:07:43 +11:00
Gaetan Craig-Riou
7790259c27 Add transaction origin for internal credit payments 2026-03-10 16:07:43 +11:00
Gaetan Craig-Riou
6a99d2a3c8 Add transaction origin in descriptiopn 2026-03-10 16:07:43 +11:00
Gaetan Craig-Riou
e7a2b7ea48 Remove payment method from customer account transaction 2026-03-10 16:07:43 +11:00
Gaetan Craig-Riou
bd0dcd99f3 Fix failing spec
I wrongly fixed it due to my local database having rogue data
2026-03-10 16:07:43 +11:00
Gaetan Craig-Riou
bc23423521 Remove the link between enterprise and internal payment method
Enterprise have access to the internal payment method by default.
The access is handled at the application level so we don't have to
manage database links.
2026-03-10 16:07:43 +11:00
Gaetan Craig-Riou
a4ca56c7a5 Refactored internal payment method
We now check on known payment method type, instead of using the internal
collumn.
2026-03-10 16:07:43 +11:00
Gaetan Craig-Riou
ec106a8f83 Add new payment method ApiCustomerCredit
It was previously modelled by a "Check" payment method
2026-03-10 16:07:43 +11:00
Gaetan Craig-Riou
2e7237197a Refactor customer credit payment method
Set fixed name and description
2026-03-10 16:07:43 +11:00
Gaetan Craig-Riou
25c579c478 Per review, small code fixes 2026-03-10 16:07:43 +11:00
Gaetan Craig-Riou
3b068b7125 Add created_by to customer account transactions
It allows tracking of who credited the customer via :
- customer account transaction API
- order payment screen
2026-03-10 16:07:43 +11:00
Gaetan Craig-Riou
b9b91620ef Make sure to link credit payment method on create and update 2026-03-10 16:07:43 +11:00
Gaetan Craig-Riou
c67d47a773 Check if internal payment can be voided
Add extra security, we don't want to void a credit payment that is not
completed, otherwise we would be refunding credit that was not used.
A credit payment should not be in a non completed state, but you never
know.
2026-03-10 16:07:43 +11:00
Gaetan Craig-Riou
85e0da8aeb Improve concurrency spec
Add checks to see if breakpoint is actually reach and if we have a race
condition.
2026-03-10 16:07:43 +11:00
Gaetan Craig-Riou
34c91613f7 Customer account transaction, simplify balance calculation
Lock the customer to ensure the balance calculation is correct. Much
simpler than locking the first transaction.
2026-03-10 16:07:43 +11:00
Gaetan Craig-Riou
628810eb33 Fix spec to work with the internal payment method 2026-03-10 16:07:42 +11:00
Gaetan Craig-Riou
d95aac333b Add internal to payment method
It's used to hide the payment method used for paying with credit. These
payment method are for internal use only.
2026-03-10 16:07:42 +11:00
Gaetan Craig-Riou
3e2e7f1799 Add button to credit customer when order is credit owed state
It will add a negative payment, matching the amount credited in the
customer_account_transaction
2026-03-10 16:07:42 +11:00
Gaetan Craig-Riou
ee13a3abaf Add Orders::CustomerCreditService.refund
It will be used to credit the customer any fund from an order in
credit_owed state
2026-03-10 16:07:42 +11:00