David Cook
18fb1cfa74
Rename variant 'owner' to 'hub'
...
As discussed by team, and using same nomenclature as VariantOverride.
2026-03-11 11:09:13 +11:00
David Cook
e9ce2df5a9
Rename 'source variant' to linked variant (in most places)
...
There are two types of linked variant associations: source and target, so we need to keep the name there.
But when cloning a variant and retaining a link as source, we will prefer the general term 'linked variant'. Hopefully this name works well.
2026-03-11 11:09:13 +11:00
David Cook
c165ade4ba
Avoid unnecessary save
...
Actually, the variant factory is still adding an extra save. We should refactor Variant to avoid that.. but the afternoon slump has got me.
2026-03-11 11:09:12 +11:00
David Cook
299ada1220
Refactor: move variant duplication to model
...
I tried to avoid it but rubocop made me move it. I think maybe it will need to go into a concern or service class later, but hopefully it's ok here for now.
2026-03-11 11:09:12 +11:00
David Cook
8955ffe126
AddOwnerToSpreeVariants [migration]
...
Should existing variants be migrated to have an owner (copied from supplier)? No, because you can change supplier. This concept needs work.
2026-03-11 11:09:09 +11:00
copilot-swe-agent[bot]
04c0adf960
Fix source_variants and target_variants associations in Variant model
...
Co-authored-by: dacook <4188088+dacook@users.noreply.github.com >
Thanks co-pilot for sending me in the right direction.
Would this be neater as a has_and_belongs_to_many? Maybe but I will try to keep moving.
2026-03-11 11:08:50 +11:00
Maikel Linke
dcb6f4676d
Remove all unnecessary spec_helper require statements
...
The `.rspec` file is doing this for us.
2026-01-21 12:35:34 +11:00
Konrad
01036e6321
Merge pull request #13087 from mkllnk/stock-location
...
Remove class Spree::StockLocation
2025-01-25 12:41:37 +01:00
Maikel Linke
aa9daed66e
Remove unused StockLocation#stock_items
...
And the reverse association.
2025-01-22 11:20:05 +11:00
Maikel Linke
917e0ff01a
Remove unnecessary storage of currency
2025-01-21 20:11:05 +01:00
Ahmed Ejaz
3e031ab735
13026: reset variant unit name if unit is not items
2024-12-11 03:14:11 +05:00
Gaetan Craig-Riou
7c2c614f90
Update spec/models/spree/variant_spec.rb
...
Co-authored-by: David Cook <david@redcliffs.net >
2024-10-14 15:01:18 +11:00
Gaetan Craig-Riou
e2c762f06b
Refactor, use instance_double in variant spec
2024-10-14 14:56:47 +11:00
Gaetan Craig-Riou
f58a3a859f
Move variant unit attributes to variant 1
...
Update Spree::Variant model and spec
2024-10-14 14:56:46 +11:00
Maikel Linke
95e620a78b
Add lookup of variants by semantic id
2024-09-25 10:55:40 +10:00
Gaetan Craig-Riou
448308710a
Per review, distributor are now updated via variant
...
When a product is deleted, it will delete associated variant and
in turn will touch the affected distributors
2024-07-03 11:23:02 +10:00
Gaetan Craig-Riou
3788b33eb0
First round of code review change
2024-07-03 11:23:02 +10:00
Gaetan Craig-Riou
c328ee8087
Remove stockable_by from Product and Variant
...
It's not used anymore
2024-07-03 11:23:02 +10:00
Gaetan Craig-Riou
117f6d3300
First round of code review change
2024-07-03 11:21:28 +10:00
Gaetan Craig-Riou
260211cf15
Fix Ruboxop issue
2024-07-03 11:21:28 +10:00
Gaetan Craig-Riou
22f4ae115a
Add missing associations and validations specs
2024-07-03 10:17:49 +10:00
Gaetan Craig-Riou
6290e7ad1c
Test the suppliers are touched on destroy
2024-07-03 10:17:49 +10:00
Gaetan Craig-Riou
4113880401
Move supplier to variant part 2
...
Variant model and specs
2024-07-03 10:17:49 +10:00
David Cook
35c2297d55
Detect changes in price
...
Price is actually an association with lots of custom methods to make it look like a field, and so changes were ignored.
Now this issue is fixed, perhaps it should be moved to a concern..
Note, there are other delegated fields: product name and description may be assigned from the variant. But there's no hooks to save the prroduct, so I didn't include it when checking for changes.
2024-05-28 12:00:04 +10:00
Maikel Linke
6317fe1b71
Disable RSpec monkey patching
2024-05-09 12:24:41 +10:00
Maikel Linke
c2c7910357
Reset I18n.local for each spec
...
This avoids a locale setting leaking from one spec to another. It also
means that we don't have to reset the locale in individual specs.
Also:
- `cookies` is reset automatically and we don't need to do that.
- Removed some unused code (German number format and helper methods).
2024-04-11 10:14:52 +10:00
Ahmed Ejaz
b2172ef8d8
12332 - Add around block to apply default_locale on specs
2024-04-11 10:14:52 +10:00
Ahmed Ejaz
693b9bd171
12332 - Fix rubocop Rails/I18nLocaleAssignment errors
...
- use I18n.with_locale method rather than direct locale assignment
2024-04-11 10:13:50 +10:00
David Cook
6cff5c81fe
Fix RSpecRails/NegationBeValid
...
Another cop that only supports not_to instead of to_not.
2024-04-04 09:41:05 +11:00
Maikel Linke
d47d3eba8f
Add SemanticLink model for variants
...
We want to link variants/products to external DFC SuppliedProducts to
trigger supplier orders when local stock is exhausted. This is the first
step to enable the link.
2024-03-15 16:46:41 +11:00
Maikel Linke
bd6b0ddbf3
Enforce RSpec expect(..).not_to over to_not
2024-03-07 16:57:54 +11:00
Maikel Linke
95c6a56e2e
Simplify loading of default tax category
...
The logic doesn't change but I simplified it and added more detailed
specs.
2024-01-12 17:06:24 +11:00
Mohamed ABDELLANI
d239beb226
remove unnecessary require instructions
2024-01-03 11:34:57 +01:00
Neal Chambers
35e8f88943
Fix Style/HashSyntax
2023-09-24 22:41:27 +09:00
Matt-Yorkley
e65efe0f85
Remove unused variant :position attribute
2023-08-09 18:24:46 +01:00
Maikel
2b18effe6d
Merge pull request #11322 from macanudo527/fix_remaining_line_length
...
Fix remaining Layout/LineLength Rubocop Errors
2023-08-04 09:34:00 +10:00
Neal Chambers
a4f270bdec
Fix Layout/LineLength
2023-08-03 09:49:47 +09:00
Matt-Yorkley
0df121bcc8
Move tax_category validations test
2023-07-31 09:23:20 +10:00
Matt-Yorkley
3ef7d2c9ff
Remove master variant from product
2023-06-16 21:23:44 +01: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
Matt-Yorkley
a20277c3a7
Completely remove option_values and option_types from the codebase
2023-06-01 10:12:19 +01: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
Nihal M. Kelanthodika
ddaac654ef
Add specs for conversion of variant weight input into decimal/0.0
2022-01-31 17:43:15 +05:30
Matt-Yorkley
290e292dea
Revert "Fixed inconsistency with display of unit name for products sold by item"
2021-12-07 13:24:12 +00:00
Nihal M. Kelanthodika
aefb580023
Update unit_to_display spec
2021-11-23 12:59:42 +05:30