Fix specs creating deleted variants

Spree checks that each price belongs to a variant
Since we were creating deleted variants, the price models couldnt see those
This commit is contained in:
luisramos0
2018-11-05 10:43:10 +00:00
parent f32e4dddb1
commit 4f992a18f7
3 changed files with 11 additions and 3 deletions

View File

@@ -1,4 +1,5 @@
require 'open_food_network/products_cache'
require 'spec_helper'
module OpenFoodNetwork
describe ProductsCache do
@@ -144,7 +145,7 @@ module OpenFoodNetwork
let(:product) { create(:simple_product, supplier: s) }
let(:v1) { create(:variant, product: product) }
let(:v2) { create(:variant, product: product) }
let(:v_deleted) { create(:variant, product: product, deleted_at: Time.now) }
let(:v_deleted) { create(:variant, product: product) }
let(:d1) { create(:distributor_enterprise) }
let(:d2) { create(:distributor_enterprise) }
let(:d3) { create(:distributor_enterprise) }
@@ -154,6 +155,8 @@ module OpenFoodNetwork
let!(:ex3) { create(:exchange, order_cycle: oc, sender: oc.coordinator, receiver: d3, variants: [product.master, v_deleted]) }
before do
v_deleted.deleted_at = Time.now
v_deleted.save
s.set_producer_property :organic, 'NASAA 12345'
end

View File

@@ -211,13 +211,16 @@ describe OrderCycle do
}
let!(:p0) { create(:simple_product) }
let!(:p1) { create(:simple_product) }
let!(:p1_v_deleted) { create(:variant, product: p1, deleted_at: Time.zone.now) }
let!(:p1_v_deleted) { create(:variant, product: p1) }
let!(:p1_v_visible) { create(:variant, product: p1, inventory_items: [create(:inventory_item, enterprise: d2, visible: true)]) }
let!(:p1_v_hidden) { create(:variant, product: p1, inventory_items: [create(:inventory_item, enterprise: d2, visible: false)]) }
let!(:p2) { create(:simple_product) }
let!(:p2_v) { create(:variant, product: p2) }
before(:each) do
p1_v_deleted.deleted_at = Time.zone.now
p1_v_deleted.save
e0.variants << p0.master
e1.variants << p1.master
e1.variants << p2.master

View File

@@ -15,7 +15,9 @@ module Spree
describe "scopes" do
it "finds non-deleted variants" do
v_not_deleted = create(:variant)
v_deleted = create(:variant, deleted_at: Time.zone.now)
v_deleted = create(:variant)
v_deleted.deleted_at = Time.zone.now
v_deleted.save
Spree::Variant.not_deleted.should include v_not_deleted
Spree::Variant.not_deleted.should_not include v_deleted