Maikel Linke
a10bb5acbd
Consider deleted products when creating permalinks
...
https://github.com/openfoodfoundation/openfoodnetwork/issues/3844
Spree's implementation and our implementation to create a unique
permalink failed to notice conflicts with soft-deleted products. This
patch looks at deleted products as well.
2019-06-11 18:20:41 +10:00
luisramos0
86b0d71c7e
Result of rubocop auto-correct and rebuilding rubocop_manual_todo
2019-05-28 12:57:29 +01:00
luisramos0
04801e5c2e
Run transpec in spec/models
2019-05-09 22:25:29 +01:00
luisramos0
c1d14686a6
Merge branch 'master' into 2-0-stable-Mar22
2019-03-22 10:55:17 +00:00
luisramos0
34d7070c6c
Delete spec used to test product distributions (removed feature)
2019-03-13 12:24:40 +00:00
luisramos0
ed9321e92d
Remove product distributions from product model and controller
2019-03-13 11:47:50 +00:00
luisramos0
a36722cebf
Merge branch '2-0-stable' into 2-0-remove-variant-count-on-hand
2019-02-26 12:47:11 +00:00
Maikel Linke
cdb49f88b0
Move Variant deletion into its own service
...
This keeps the override of Spree's model leaner. More importantly, it
prepares us for using `destroy` instead of `delete`.
In the past, `Product#delete` soft-deleted the product, but didn't
delete the variants. When we use `Product#destroy` to soft-delete the
product, it will also call destroy on the variants. If the model doesn't
allow the deletion of the last variant, it will fail. So when a product
is deleted we want to allow the deletion of all variants. But the user
should not be allowed to delete the last variant. That's why I'm moving
the check to the controller level.
Related commits:
- e6c7acdff3
- 2b47c9145a
- b9f19d5777 (diff-412c5af2ec1ba9f6643f6df5a673c1d4R105)
2019-02-19 14:25:18 +11:00
Maikel Linke
5d828bd7ae
Update soft-delete of products
...
Spree changed their way of soft-deleting products, variants and
some other models. `#destroy` is now soft-deleting and replaces
`#delete`.
This commit considers only products. Variants will follow in another
commit. The other models can be ignored, because we don't call `delete`
on them.
2019-02-19 14:25:18 +11:00
luisramos0
f0842fcbe5
Convert all calls to variant.count_on_hand to variant.on_hand
2019-02-18 21:54:07 +00:00
luisramos0
b52c99ac26
Delete on_hand test in product spec, this is already covered in product_stock_spec
2019-01-17 20:18:43 +00:00
Pau Perez
7834b1d3f3
Fix test case for invalid product master
2018-11-28 17:39:59 +01:00
luisramos0
d28f47046a
Fix product model spec by removing unnecessary on_hand setter and adding required fields for a new product
2018-11-22 20:38:58 +00:00
Pau Pérez Fabregat
db9669b4ce
Merge pull request #2817 from coopdevs/remove-reference-to-on-demand
...
[Spree Upgrade] Remove on_demand from Product serializers
2018-10-16 17:52:42 +02:00
Kristina Lim
da904c908d
Fix product import date when not all variants have it
2018-10-06 03:03:22 +08:00
Pau Perez
75ad4254a6
Remove on_demand from Api::Admin::ProductSerializer
...
This change also moves the spec file to its appropriate place for the
sake of consistency and RSpec3-izes the test example.
2018-10-03 13:06:13 +02:00
Frank West
09534b41e9
Remove taxon when primary taxon is changed
...
We are adding taxons to the product as you change the primary taxon.
However we never remove the previous primary taxon so it forces the user
to update the taxons manually. This can be a big problem if you are bulk
updating products.
We now remove the taxon that matches the previously set primary taxon.
2018-07-04 09:16:50 +10:00
Rob Harrington
236ba9328d
Order cycles in specs comply with new date validations
2018-04-04 17:18:33 +10:00
Rob Harrington
946046e53b
Moving action for estimating standing_line_item prices into StandingLineItemController#build
2018-02-09 14:43:31 +11:00
Pau Perez
6cb038c362
Autocorrect rubocop Layout/BlockEndNewline cop
2018-02-01 09:52:53 +01:00
Rob Harrington
59578a73af
Changing all references to 'be_true' and 'be_false' to 'be true' and 'be false'
...
See next commit for changes where this substitution was broken
2017-11-10 08:47:12 +11:00
Rohan Mitchell
6795237a2d
Put timecop into safe mode and fix leaky Timecop.freeze
2016-11-25 14:14:42 +11:00
Rohan Mitchell
57363e2da5
When a product is deleted, touch the supplier and distributors
2016-11-25 14:14:42 +11:00
Rohan Mitchell
da9a3ce9f3
Refresh products cache when product is deleted (cf. destroyed)
2016-11-25 14:14:42 +11:00
Rohan Mitchell
1765ba0422
Fix spec dependent on product on_demand
2016-11-04 09:39:17 +11:00
Rohan Mitchell
58379a5e28
Extract property merging to lib class
2016-06-24 07:57:06 +10:00
Rohan Mitchell
422061f137
Merge branch 'master' into products-caching
...
Conflicts:
app/controllers/shop_controller.rb
app/models/enterprise_fee.rb
app/models/order_cycle.rb
app/models/variant_override.rb
db/schema.rb
lib/open_food_network/products_renderer.rb
spec/lib/open_food_network/products_renderer_spec.rb
2016-03-03 09:42:52 +11:00
Rob Harrington
77e74c5642
OC Coordinators can opt to restrict products in an order cycle to those in their inventory only
2016-03-02 12:10:22 +11:00
Rohan Mitchell
0c0c98a0b0
Refresh products cache on product change
2016-02-24 15:05:01 +11:00
Maikel Linke
cd7721a127
Using date and time of current timezone
...
Using Time.zone.now and Date.current instead of Time.now and Date.today.
This should make all specs timezone independent.
2015-12-10 11:38:41 +11:00
Rohan Mitchell
c5c3051f98
Re-enable future spec
2015-07-10 09:42:09 +10:00
Rohan Mitchell
d9f4a92648
Do not use with_products_require_tax_category in around filters - Spree::Config has caching which isn't shared between contexts
2015-06-24 14:52:17 +10:00
Rohan Mitchell
bfeb63c8d7
Ensure that changes to Spree::Config.products_require_tax_category do not leak out of the relevant spec
2015-06-11 14:16:18 +10:00
Rohan Mitchell
7486daa2a3
Merge branch 'master' into require_standard_variant
...
Conflicts:
spec/controllers/spree/admin/variants_controller_spec.rb
spec/lib/open_food_network/permissions_spec.rb
spec/lib/open_food_network/products_and_inventory_report_spec.rb
spec/models/enterprise_spec.rb
2015-05-28 15:08:13 +10:00
Rohan Mitchell
97e49c2bdb
Replace 'array.sort.should == expected.sort' pattern with match_array
2015-05-28 10:46:08 +10:00
Rob Harrington
5b65f67737
Amending spec expect after_create when we want after_save
2015-05-22 15:02:49 +10:00
Rob Harrington
992fb2347d
Merging master branch into require_standard_variant
2015-04-29 14:30:49 +10:00
Rob Harrington
c66a7e44b6
Updating product model specs to reflect changes to properties
2015-04-23 15:37:41 +10:00
Rob Harrington
e546388784
Rename properties_h to properties_including_inherited
2015-04-22 21:02:07 +10:00
Rob Harrington
976c24cf4c
properties_h uses inherit_properties flag, and returns property id rather than presentation
2015-04-22 21:02:07 +10:00
Rob Harrington
72d553ef0c
Test actual deletion of variants
2015-04-17 16:51:02 +10:00
Rob Harrington
9ee25c4e42
Making spec better
2015-04-17 11:25:18 +10:00
Rob Harrington
2d7fb3fd67
Updating name of spec
2015-04-17 11:25:18 +10:00
Rob Harrington
a223a2d662
Cannot remove all variants from a product
2015-04-17 11:25:17 +10:00
Rob Harrington
5e2fe56c22
Cleanup
2015-04-17 11:25:17 +10:00
Rob Harrington
971723964e
Update outdated spec
2015-04-17 11:25:17 +10:00
Rob Harrington
28486f9e76
Only adds standard variant on create
2015-04-17 11:25:17 +10:00
Rob Harrington
869551a17c
Adding a standard variant again
2015-04-17 11:25:17 +10:00
Rob Harrington
13a910c372
Replace validates_associated on master with current spree method for error reporting master saves
2015-04-17 11:25:17 +10:00
Rob Harrington
0a7b01ff07
Product requires variant_unit and master requires unit_value and/or unit_desc
2015-04-17 11:25:16 +10:00