Commit Graph

606 Commits

Author SHA1 Message Date
David Cook
918d4401ff Gracefully handle empty string 2024-07-18 12:05:56 +10:00
David Cook
4925e2088d Test for corrupt data
Ah ha, we found the problem.
2024-07-18 12:03:25 +10:00
Gaetan Craig-Riou
686fe8c028 Per review, remove flag argument from products_relation
products_relation is now split in two, products_relation and
products_relation_incl_supplier_properties.
It avoids using a flag argument which is not a a good practice see:
https://martinfowler.com/bliki/FlagArgument.html
2024-07-10 13:19:08 +10:00
Gaetan Craig-Riou
c372bf746a Refactor ProductRenderer
The sorting logic has been moved to
OrderCycles::DistributedProductsService#product_relations

Plus hopefully fix the spec flackiness
2024-07-08 10:35:57 +10:00
Gaetan Craig-Riou
79a22aefc3 Refactor #products_relation
Due to primary_taxon and supplier having moved to the variant, filtering
by_producer and by_category with a custom order involves some
complicated sql queries. So we moved the sorting logic from
ProductsRenderer to OrderCycles::DistributedProductsService so we can
keep the complicated SQL logic contained in one place
2024-07-08 10:35:57 +10:00
Gaetan Craig-Riou
dfe56c1eed Fix flacky spec
In practise we shouldn't have product with mutiple variant with
different supplier, so I think it's fine to not test it.
2024-07-03 11:23:02 +10:00
Gaetan Craig-Riou
1ead9208ee Fix rebase issue
Fix test by creating a variant instead of relying on some random data
from the database.
2024-07-03 11:23:02 +10:00
Gaetan Craig-Riou
260211cf15 Fix Ruboxop issue 2024-07-03 11:21:28 +10:00
Gaetan Craig-Riou
84197aca19 Fix the filtering by properties/supplier properties
- Apply OR when filtering by both product properties and supplier
properties
- Apply AND when filtering by supplier properties and taxon
Filtering by product properties and taxon is handled by ransack, so
no change there
2024-07-03 11:21:28 +10:00
Gaetan Craig-Riou
feb7e173b1 Fix order cycle controller spec, product properties filtering
And fix the underlying product renderer
2024-07-03 11:21:28 +10:00
Gaetan Craig-Riou
63807f198b Fix product set, to handle updating supplier on the variant 2024-07-03 10:17:49 +10:00
Gaetan Craig-Riou
f8c2dfb3f7 Fix variants stock level sevice specs 2024-07-03 10:17:49 +10:00
Gaetan Craig-Riou
df209fdc2b Fix product tag rules filterer spec 2024-07-03 10:17:49 +10:00
Gaetan Craig-Riou
1f904a3e2f Fix orcer cycle form service spec 2024-07-03 10:17:49 +10:00
Gaetan Craig-Riou
0c9223809b Fix with_properties scope to accept any number of arguments 2024-07-03 10:17:49 +10:00
Gaetan Craig-Riou
a873fa692b Fix exchange products renderer and specs 2024-07-03 10:17:49 +10:00
Gaetan Craig-Riou
3d82309c5f Fix order permission and specs 2024-07-03 10:17:49 +10:00
zanetagebka
a2a670c848 Fix cops StringConcatenation 2024-06-11 15:17:32 +10:00
Filipe
5872515a35 Merge pull request #12515 from isidzukuri/12503_skip_saving_of_unchanged_products
Do not commit to db unchanged products in bulk save
2024-06-05 18:01:59 +02:00
Ana Nunes da Silva
205c7dafd2 Add div to sanitizer supported tags 2024-06-03 11:45:50 +01:00
Ana Nunes da Silva
5f54ea3877 Add safe trix tags to html sanitizer;
Use custom html sanitizer in product description.
2024-06-03 11:45:50 +01:00
isidzukuri
7565825b61 Do not commit to db unchanged products is bulk save 2024-05-27 10:22:58 +10:00
Maikel Linke
f089c0eff3 Keep HTML line breaks
They do appear in long_description on au_prod.
2024-05-14 12:40:58 +10:00
Maikel Linke
7b4a85f7ef Sanitise HTML in long description of enterprise
This happens only on assignment. We still need to migrate existing data.
2024-05-14 12:25:47 +10:00
Maikel Linke
6317fe1b71 Disable RSpec monkey patching 2024-05-09 12:24:41 +10:00
cyrillefr
404fcf1f72 Fix FixRailsWhereEquals
- fixes offenses caused by RuboCop::Cop::Rails::WhereEquals cop
2024-04-09 10:44:02 +02:00
Matt-Yorkley
a55931c081 Reinstate sorting by arbitrary list of product categories 2024-04-02 09:42:43 +11:00
Matt-Yorkley
2743a8183d Disable sorting by user-defined product category order 2024-04-02 09:33:34 +11:00
Matt-Yorkley
d9899e8af6 Update more specs 2024-04-02 09:27:36 +11:00
Feruz Oripov
778ed46d50 cops 2024-03-16 19:14:18 +05:00
Feruz Oripov
9d919938f3 Group Order && OrderCycle related services and specs 2024-03-16 19:07:08 +05:00
Gaetan Craig-Riou
ff52a66e75 Merge pull request #12250 from mkllnk/not-to-not
Enforce RSpec expect(..).not_to over to_not
2024-03-12 10:35:16 +11:00
Maikel Linke
bd6b0ddbf3 Enforce RSpec expect(..).not_to over to_not 2024-03-07 16:57:54 +11:00
David Cook
2ef9e34f28 Re-arrange imperial units
Who would have guessed it was this complicated.

Fingers crossed this doesn't break any other functionality...
2024-03-06 13:01:43 +11:00
David Cook
ea0067946d Generate variant unit options in Ruby
This re-implements Angular JS function VariantUnitManager.variantUnitOptions()

Well.. almost. See next commit.
2024-03-06 13:01:43 +11:00
David Cook
2107aeded1 Un-safely autocorrect RSpec/ExpectChange 2024-02-23 12:17:09 +11:00
David Cook
ec0e8b80eb Add specs for creating variants
This already works, but we want to make sure it stays that way!
2024-02-15 14:57:13 +11:00
filipefurtad0
edae56345b Removes unnecessary Stripe api key / secret declaration 2024-02-08 14:53:48 +00:00
Mohamed ABDELLANI
d239beb226 remove unnecessary require instructions 2024-01-03 11:34:57 +01:00
filipefurtad0
0517d1ce6b Replaces receive_message_chain rspec mocks with responses from real Stripe calls 2023-12-21 18:15:34 +00:00
Maikel Linke
d841b1dae2 DRY feature activation in specs
It's simple this way and we have one place to add logic to when needed
(see next commit).
2023-11-17 13:17:27 +11:00
David Cook
2960f7570e Merge pull request #11741 from abdellani/fix-product-with-ml-unit-display-dl
Fix product with ml unit display dl
2023-11-17 09:41:44 +11:00
filipefurtad0
a56f95d1e3 Uses more readable DB call
Also makes some other minor improvements, like removing the rest case around editing ajustment types, something which we don't really need a test for, as it should not occur in the app
2023-11-14 14:40:21 +00:00
filipefurtad0
612125b918 Updates create/delete adjustments tests
Creating and deleting adjustments will change associated attributes such as the payment state of the order which triggers a new invoice
2023-11-13 23:20:50 +00:00
filipefurtad0
eea15089d3 Updates state change tests
Cancelling orders will change associated attributes such as payment_state which is triggers a new invoice
2023-11-13 23:19:40 +00:00
filipefurtad0
e7c2b52f52 Updates pending example
..however: creating and deleting adjustments are still not passing when can_update_latest_invoice? is called over the order. @abdellani, I think I need your help on this one, I was not able to progress any further
2023-11-13 23:19:40 +00:00
filipefurtad0
9057ffd6c0 Fixes pending test case 2023-11-13 23:19:40 +00:00
David Cook
91cb3df215 Use named config method
And mock the preference value, rather than setting it. Before, the set preference could have leaked to other tests.
(I noticed that it was already like this in product_import_spec.rb)
2023-11-13 09:29:31 +01:00
Mohamed ABDELLANI
a9d85fd08f fix existing tests 2023-11-13 09:29:31 +01:00
Mohamed ABDELLANI
e10d441153 load GeneralSettingsHelper#all_units from WeightsAndMeasures::UNITS 2023-11-13 09:29:31 +01:00