Maikel Linke
fc00a48d67
Require associations of CoordinatorFee
2023-06-14 15:08:05 +10:00
Maikel Linke
c02c90317f
Require user of column preference record
...
It doesn't make sense to have a preference without a user. And it was
already enforced in the database.
2023-06-14 15:07:43 +10:00
Maikel Linke
2d4cfd7548
Validate and enforce AdjustmentMetadata associations
2023-06-14 15:07:43 +10:00
Matt-Yorkley
5fa81d1333
Fix invalid test setup in old tax tests
2023-06-13 14:58:16 +01:00
Matt-Yorkley
4e7fab6914
Delete dead code Checkout#find_transition
...
This method is only called from tests and nowhere else in the codebase. We may as well remove it.
2023-06-13 14:58:16 +01:00
Mohamed ABDELLANI
345f540723
fix spec/models/spree/tax_rate_spec.rb
2023-06-13 14:58:16 +01:00
Mohamed ABDELLANI
bd0e7cdfc8
remove legacy checkout tests
2023-06-13 14:58:16 +01:00
Konrad
48c107bde1
Merge pull request #10974 from cillian/ignore-whitespace-in-product-import
...
Ignore leading and trailing whitespace when importing products via a spreadsheet
2023-06-12 16:32:15 +02:00
Konrad
d0f4c44add
Merge pull request #10938 from jibees/10931-white-label-custom-tab-without-a-title-impossible-to-disable-the-custom-tab
...
[White Label] Validate the presence of a custom tab title before creating it (+ max 20 characters length)
2023-06-09 19:01:13 +02:00
Cillian O'Ruanaidh
5cde4de512
Ignore leading and trailing whitespace in spreadsheet when importing products
2023-06-09 16:23:18 +01:00
Filipe
ca03e1596b
Merge pull request #10952 from Matt-Yorkley/full-name
...
Improve nil-safety in variant naming methods
2023-06-08 16:26:28 +01:00
Matt-Yorkley
f4261b85b8
Merge pull request #10940 from Matt-Yorkley/order-tidyup
...
Order class tidyup
2023-06-08 15:06:59 +01:00
Filipe
7974e1eaa6
Merge pull request #10936 from abdellani/fix-order-progressing-automatically-on-BOO
...
fix Viewing an order in state "confirmation" changes the state to "complete"
2023-06-08 14:50:04 +01:00
Jean-Baptiste Bellet
d1d050e6a4
Limit size to 20 char for the custom tab title
2023-06-08 11:27:07 +02:00
Matt-Yorkley
bed2fe69f6
Update regression tests
2023-06-07 16:39:37 +01:00
Matt-Yorkley
bb73d70e57
Improve nil-safety in variant naming methods
2023-06-07 12:17:50 +01:00
Maikel Linke
1ebacf96ad
Ignore accidental spaces around whitelabel URL
2023-06-07 13:12:06 +10:00
Matt-Yorkley
e88843c733
Ensure order number is generated nicely on new records
2023-06-07 00:58:43 +01:00
Matt-Yorkley
17b10d10c0
Make Order #deliver_order_confirmation_email method private
2023-06-05 21:30:43 +01:00
Jean-Baptiste Bellet
5938577bd1
Update custom_tab_spec.rb
2023-06-05 15:43:11 +02:00
Jean-Baptiste Bellet
40111910b6
Validates white_label_logo_link on enterprise model
2023-06-05 11:24:07 +02:00
Matt-Yorkley
a20277c3a7
Completely remove option_values and option_types from the codebase
2023-06-01 10:12:19 +01:00
Matt-Yorkley
3e5ecba738
Remove unhelpful Helper
2023-06-01 10:11:20 +01:00
Jean-Baptiste Bellet
a24604f146
Remove unused enterprise declaration
2023-05-26 10:24:11 +02:00
Jean-Baptiste Bellet
839419791f
Create CustomTab model, that belongs to an enterprise
2023-05-25 09:19:51 +02:00
Maikel Linke
90cbac7176
Validate email domains
...
The gem checks the DNS system for a valid domain entry.
2023-05-23 08:23:58 +02:00
Maikel Linke
ffc45f77cf
Validate user email syntax on change
...
We probably have invalid entries in the database and we don't want these
records to suddenly become invalid. People would not be able to log in.
2023-05-23 08:23:58 +02:00
Maikel Linke
101b9025b4
Spec user email validation
...
The pending spec addresses:
* https://github.com/openfoodfoundation/openfoodnetwork/issues/10808
2023-05-23 08:23:58 +02:00
Konrad
fed7c3da51
Merge pull request #10761 from rioug/vouchers-any-amount
...
[Vouchers] Flat rate of any amount
2023-05-19 17:39:33 +02:00
Filipe
3d1b0816ed
Merge pull request #10512 from abdellani/fix-tax-not-charged-when-tax-category-set-to-inherit-from-product
...
Prevent saving the enterprise fee when a per order calculator is selected along with 'Inherit from product'
2023-05-18 13:43:14 +01:00
David Cook
c0c123a92a
Remove localized number logic from weight calculator
...
Follow-on from a46eef291c
2023-05-17 14:10:58 +02:00
saunmanoj888
aee7645e29
Fix searching issue with full name on bulk order management
2023-05-17 13:14:10 +02:00
Gaetan Craig-Riou
b585f77be4
Make enterprise mandatory for a voucher
...
It should have already been the case...
2023-05-16 16:20:04 +10:00
Gaetan Craig-Riou
2d8fa24862
Add a voucher factory
...
As vouchers are getting more complicated, it makes sense to use a
factory to simplify writing test.
2023-05-16 16:20:04 +10:00
Gaetan Craig-Riou
15eee8175e
Add amount to voucher
...
Change value to amount to be more consistent
2023-05-16 16:19:59 +10:00
Gaetan Craig-Riou
d29119f5c5
Remove non need belongs_to associations from Adjustments
...
It turns out the "tax_rate" association isn't used and wasn't working.
Same for the "voucher" one, which I added to be consistent with existing
code.
Both of these weren't caught by the specs because you can't test associations
with a custome relation with 'shouda-matchers' see: https://github.com/thoughtbot/shoulda-matchers/issues/981
2023-05-15 13:42:40 +10:00
Gaetan Craig-Riou
17e32a89f8
Add VoucherAdjustmentsService to handle calculation
...
Refactor Voucher to move voucher adjustments calculation
to VoucherAdjustmentsService
2023-05-15 13:42:39 +10:00
Gaetan Craig-Riou
56e981d300
Refactor Voucher to get rid of CalculatedAdjustments
...
Voucher adjustment have complicated calculation that prevent us from
using Spree::Calculator, and we need to override CalculatedAdjustments
method, so no point using it.
We still keep the same methods to stay as consitent as possible in
regards to adjustments
2023-05-15 13:42:39 +10:00
Gaetan Craig-Riou
43ab881181
Rename order association to voucher_adjustments
...
The name vouchers is a bit confusing as the order is linked to a
voucher adjutment and not the actual voucher
2023-05-15 13:42:39 +10:00
Gaetan Craig-Riou
4b5d6d7eac
Fix voucher adjustments association
...
Add missing, "inverse_of" and "dependent" options. Use :nullify as
for "dependent" because we would want to keep the adjustments on order
even if the voucher is deleted.
2023-05-15 13:42:38 +10:00
Gaetan Craig-Riou
58469adfeb
Adjustments spec, add association test
2023-05-15 13:42:38 +10:00
Gaetan Craig-Riou
9789911523
Rework how voucher are applied to an order and handle tax calculation
...
At the time when we can apply a voucher to an order (payment step) we
don't have any data on possible taxes and payment fees. These are
calculated when we move to the summary step. So voucher are applied in
two step:
- create an "open" voucher adjustment on the order when a customer enters
a voucher code.
- when we move to the summary step, recalulate the amount and
possible tax for the voucher adjustment, once taxes and payment fees
have been included in the order. And then close the original and update
order to reflect the changes
2023-05-15 13:42:38 +10:00
Gaetan Craig-Riou
d157d91054
When voucher cover more than order total, use only amount needed
...
The checkout payment step will also show a warning.
The amount used is stored in the adjustment created, so we will be able
to track how much has been used down the line.
2023-05-15 13:42:38 +10:00
Gaetan Craig-Riou
3ec58d8791
Add #vouchers, return an array of voucher adjustments
2023-05-15 13:42:37 +10:00
Gaetan Craig-Riou
9b680e1a92
Add CalculatedAdjustments to Voucher
...
Vouchers are only flat rate of 10 for now, so we add a FlatRate
calculator in a before_validation callback
2023-05-15 13:42:37 +10:00
Maikel Linke
87c4c5373b
Spec more variant naming with realistic data
2023-05-12 14:10:54 +10:00
Maikel Linke
f70607259a
Spec Variant#product_and_full_name with real data
...
Mocking skips a lot of code execution which we want to test as well.
2023-05-12 13:34:34 +10:00
Maikel Linke
ce180caad9
Test with in-memory data when possible
...
This should speed up specs but I observed only one second less run time.
2023-05-12 13:21:58 +10:00
Maikel Linke
01be934caf
Reduce spec run time by not creating unused subject
...
The `variant` instance isn't used in all specs and doesn't need to be
created every time. This reduced run time from 1min5sec to 43sec on my
machine.
2023-05-12 13:21:58 +10:00
Maikel Linke
54c6559b97
Move Spree::Variant spec out of Spree module
...
I also discovered that some specs were just in the Spee module and not
within the `describe Variant` block. I moved them inside the block.
2023-05-12 13:21:19 +10:00