mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-02-04 22:16:08 +00:00
Replace 'array.sort.should == expected.sort' pattern with match_array
This commit is contained in:
@@ -143,7 +143,7 @@ describe Spree::Admin::OrdersController do
|
||||
end
|
||||
|
||||
it "only displays line items from orders for which my enterprise is the order_cycle coorinator" do
|
||||
json_response.map{ |order| order['line_items'] }.flatten.map{ |line_item| line_item["id"] }.sort.should == [line_item1.id, line_item2.id, line_item3.id].sort
|
||||
json_response.map{ |order| order['line_items'] }.flatten.map{ |line_item| line_item["id"] }.should match_array [line_item1.id, line_item2.id, line_item3.id]
|
||||
end
|
||||
end
|
||||
|
||||
@@ -159,7 +159,7 @@ describe Spree::Admin::OrdersController do
|
||||
end
|
||||
|
||||
it "only displays line items from orders for which my enterprise is a distributor" do
|
||||
json_response.map{ |order| order['line_items'] }.flatten.map{ |line_item| line_item["id"] }.sort.should == [line_item1.id, line_item2.id].sort
|
||||
json_response.map{ |order| order['line_items'] }.flatten.map{ |line_item| line_item["id"] }.should match_array [line_item1.id, line_item2.id]
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -170,17 +170,17 @@ describe Spree::Admin::ReportsController do
|
||||
|
||||
it "should build distributors for the current user" do
|
||||
spree_get :products_and_inventory
|
||||
assigns(:distributors).sort.should == [c1, c2, d1, d2, d3].sort
|
||||
assigns(:distributors).should match_array [c1, c2, d1, d2, d3]
|
||||
end
|
||||
|
||||
it "builds suppliers for the current user" do
|
||||
spree_get :products_and_inventory
|
||||
assigns(:suppliers).sort.should == [s1, s2, s3].sort
|
||||
assigns(:suppliers).should match_array [s1, s2, s3]
|
||||
end
|
||||
|
||||
it "builds order cycles for the current user" do
|
||||
spree_get :products_and_inventory
|
||||
assigns(:order_cycles).sort.should == [ocB, ocA].sort
|
||||
assigns(:order_cycles).should match_array [ocB, ocA]
|
||||
end
|
||||
|
||||
it "assigns report types" do
|
||||
@@ -211,17 +211,17 @@ describe Spree::Admin::ReportsController do
|
||||
|
||||
it "should build distributors for the current user" do
|
||||
spree_get :customers
|
||||
assigns(:distributors).sort.should == [c1, c2, d1, d2, d3].sort
|
||||
assigns(:distributors).should match_array [c1, c2, d1, d2, d3]
|
||||
end
|
||||
|
||||
it "builds suppliers for the current user" do
|
||||
spree_get :customers
|
||||
assigns(:suppliers).sort.should == [s1, s2, s3].sort
|
||||
assigns(:suppliers).should match_array [s1, s2, s3]
|
||||
end
|
||||
|
||||
it "builds order cycles for the current user" do
|
||||
spree_get :customers
|
||||
assigns(:order_cycles).sort.should == [ocB, ocA].sort
|
||||
assigns(:order_cycles).should match_array [ocB, ocA]
|
||||
end
|
||||
|
||||
it "assigns report types" do
|
||||
|
||||
@@ -30,7 +30,7 @@ module Spree
|
||||
|
||||
it "does not filter when no distributor or order cycle is specified" do
|
||||
spree_get :search, q: 'Prod'
|
||||
assigns(:variants).sort.should == [p1.master, p2.master].sort
|
||||
assigns(:variants).should match_array [p1.master, p2.master]
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -50,7 +50,7 @@ feature %q{
|
||||
eg.name.should == 'EGEGEG'
|
||||
eg.description.should == 'This is a description'
|
||||
eg.on_front_page.should be_true
|
||||
eg.enterprises.sort.should == [e1, e2].sort
|
||||
eg.enterprises.should match_array [e1, e2]
|
||||
end
|
||||
|
||||
scenario "editing an enterprise group" do
|
||||
|
||||
@@ -50,7 +50,7 @@ feature %q{
|
||||
page.should have_relationship e1, e2, ['to add to order cycle', 'to override variant details', 'to edit profile']
|
||||
er = EnterpriseRelationship.where(parent_id: e1, child_id: e2).first
|
||||
er.should be_present
|
||||
er.permissions.map(&:name).sort.should == ['add_to_order_cycle', 'edit_profile', 'create_variant_overrides'].sort
|
||||
er.permissions.map(&:name).should match_array ['add_to_order_cycle', 'edit_profile', 'create_variant_overrides']
|
||||
end
|
||||
|
||||
|
||||
|
||||
@@ -354,7 +354,7 @@ feature %q{
|
||||
page.should have_selector 'td.distributors', text: 'My distributor'
|
||||
|
||||
# And my coordinator fees should have been configured
|
||||
OrderCycle.last.coordinator_fee_ids.sort.should == [coordinator_fee1.id, coordinator_fee2.id].sort
|
||||
OrderCycle.last.coordinator_fee_ids.should match_array [coordinator_fee1.id, coordinator_fee2.id]
|
||||
|
||||
# And my supplier fees should have been configured
|
||||
OrderCycle.last.exchanges.incoming.last.enterprise_fee_ids.should == [supplier_fee2.id]
|
||||
@@ -364,7 +364,7 @@ feature %q{
|
||||
|
||||
# And it should have some variants selected
|
||||
selected_initial_variants = initial_variants.take initial_variants.size - 1
|
||||
OrderCycle.last.variants.map(&:id).sort.should == (selected_initial_variants.map(&:id) + [v1.id, v2.id]).sort
|
||||
OrderCycle.last.variants.map(&:id).should match_array (selected_initial_variants.map(&:id) + [v1.id, v2.id])
|
||||
|
||||
# And the collection details should have been updated
|
||||
OrderCycle.last.exchanges.where(pickup_time: 'New time 0', pickup_instructions: 'New instructions 0').should be_present
|
||||
@@ -568,9 +568,9 @@ feature %q{
|
||||
|
||||
flash_message.should == "Your order cycle has been created."
|
||||
order_cycle = OrderCycle.find_by_name('My order cycle')
|
||||
order_cycle.suppliers.sort.should == [supplier_managed, supplier_permitted].sort
|
||||
order_cycle.suppliers.should match_array [supplier_managed, supplier_permitted]
|
||||
order_cycle.coordinator.should == distributor_managed
|
||||
order_cycle.distributors.sort.should == [distributor_managed, distributor_permitted].sort
|
||||
order_cycle.distributors.should match_array [distributor_managed, distributor_permitted]
|
||||
end
|
||||
|
||||
scenario "editing an order cycle we can see (and for now, edit) all exchanges in the order cycle" do
|
||||
@@ -592,9 +592,9 @@ feature %q{
|
||||
page.should have_content "Your order cycle has been updated."
|
||||
|
||||
oc.reload
|
||||
oc.suppliers.sort.should == [supplier_managed, supplier_permitted, supplier_unmanaged].sort
|
||||
oc.suppliers.should match_array [supplier_managed, supplier_permitted, supplier_unmanaged]
|
||||
oc.coordinator.should == distributor_managed
|
||||
oc.distributors.sort.should == [distributor_managed, distributor_permitted, distributor_unmanaged].sort
|
||||
oc.distributors.should match_array [distributor_managed, distributor_permitted, distributor_unmanaged]
|
||||
end
|
||||
|
||||
scenario "editing an order cycle" do
|
||||
@@ -683,9 +683,9 @@ feature %q{
|
||||
page.should have_content "Your order cycle has been updated."
|
||||
|
||||
oc.reload
|
||||
oc.suppliers.sort.should == [supplier_managed, supplier_permitted, supplier_unmanaged].sort
|
||||
oc.suppliers.should match_array [supplier_managed, supplier_permitted, supplier_unmanaged]
|
||||
oc.coordinator.should == distributor_managed
|
||||
oc.distributors.sort.should == [distributor_managed, distributor_permitted, distributor_unmanaged].sort
|
||||
oc.distributors.should match_array [distributor_managed, distributor_permitted, distributor_unmanaged]
|
||||
end
|
||||
end
|
||||
|
||||
@@ -736,9 +736,9 @@ feature %q{
|
||||
page.should have_content "Your order cycle has been updated."
|
||||
|
||||
oc.reload
|
||||
oc.suppliers.sort.should == [supplier_managed, supplier_permitted, supplier_unmanaged].sort
|
||||
oc.suppliers.should match_array [supplier_managed, supplier_permitted, supplier_unmanaged]
|
||||
oc.coordinator.should == distributor_managed
|
||||
oc.distributors.sort.should == [my_distributor, distributor_managed, distributor_permitted, distributor_unmanaged].sort
|
||||
oc.distributors.should match_array [my_distributor, distributor_managed, distributor_permitted, distributor_unmanaged]
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -68,10 +68,10 @@ feature %q{
|
||||
click_button 'Update'
|
||||
|
||||
product.reload
|
||||
product.distributors.sort.should == [@distributors[0], @distributors[2]].sort
|
||||
product.distributors.should match_array [@distributors[0], @distributors[2]]
|
||||
|
||||
|
||||
product.product_distributions.map { |pd| pd.enterprise_fee }.sort.should == [@enterprise_fees[0], @enterprise_fees[2]].sort
|
||||
product.product_distributions.map { |pd| pd.enterprise_fee }.should match_array [@enterprise_fees[0], @enterprise_fees[2]]
|
||||
end
|
||||
|
||||
scenario "making a product into a group buy product" do
|
||||
|
||||
@@ -36,7 +36,7 @@ feature 'shipping methods' do
|
||||
|
||||
sm = Spree::ShippingMethod.last
|
||||
sm.name.should == 'Carrier Pidgeon'
|
||||
sm.distributors.sort.should == [d1, d2].sort
|
||||
sm.distributors.should match_array [d1, d2]
|
||||
end
|
||||
|
||||
it "at checkout, user can only see shipping methods for their current distributor (checkout spec)"
|
||||
|
||||
@@ -3,7 +3,7 @@ require 'spec_helper'
|
||||
module OpenFoodNetwork
|
||||
describe CustomersReport do
|
||||
context "as a site admin" do
|
||||
let(:user) do
|
||||
let(:user) do
|
||||
user = create(:user)
|
||||
user.spree_roles << Spree::Role.find_or_create_by_name!("admin")
|
||||
user
|
||||
@@ -44,14 +44,14 @@ module OpenFoodNetwork
|
||||
it "builds a table from a list of variants" do
|
||||
a = create(:address)
|
||||
d = create(:distributor_enterprise)
|
||||
o = create(:order, distributor: d, bill_address: a)
|
||||
o = create(:order, distributor: d, bill_address: a)
|
||||
o.shipping_method = create(:shipping_method)
|
||||
|
||||
subject.stub(:orders).and_return [o]
|
||||
subject.table.should == [[
|
||||
a.firstname, a.lastname,
|
||||
[a.address1, a.address2, a.city].join(" "),
|
||||
o.email, a.phone, d.name,
|
||||
a.firstname, a.lastname,
|
||||
[a.address1, a.address2, a.city].join(" "),
|
||||
o.email, a.phone, d.name,
|
||||
[d.address.address1, d.address.address2, d.address.city].join(" "),
|
||||
o.shipping_method.name
|
||||
]]
|
||||
@@ -74,7 +74,7 @@ module OpenFoodNetwork
|
||||
end
|
||||
|
||||
context "as an enterprise user" do
|
||||
let(:user) do
|
||||
let(:user) do
|
||||
user = create(:user)
|
||||
user.spree_roles = []
|
||||
user.save!
|
||||
@@ -131,7 +131,7 @@ module OpenFoodNetwork
|
||||
order2.line_items << create(:line_item, product: product2)
|
||||
|
||||
subject.stub(:params).and_return(supplier_id: supplier.id)
|
||||
subject.filter(orders).sort.should == [order1]
|
||||
subject.filter(orders).should == [order1]
|
||||
end
|
||||
|
||||
it "filters to a specific distributor" do
|
||||
@@ -141,7 +141,7 @@ module OpenFoodNetwork
|
||||
order2 = create(:order, distributor: d2)
|
||||
|
||||
subject.stub(:params).and_return(distributor_id: d1.id)
|
||||
subject.filter(orders).sort.should == [order1]
|
||||
subject.filter(orders).should == [order1]
|
||||
end
|
||||
|
||||
it "filters to a specific cycle" do
|
||||
@@ -151,7 +151,7 @@ module OpenFoodNetwork
|
||||
order2 = create(:order, order_cycle: oc2)
|
||||
|
||||
subject.stub(:params).and_return(order_cycle_id: oc1.id)
|
||||
subject.filter(orders).sort.should == [order1]
|
||||
subject.filter(orders).should == [order1]
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -300,8 +300,8 @@ module OpenFoodNetwork
|
||||
expect(exchange.sender).to eq sender
|
||||
expect(exchange.receiver).to eq receiver
|
||||
expect(exchange.incoming).to eq incoming
|
||||
expect(exchange.variants.sort).to eq [variant1, variant2].sort
|
||||
expect(exchange.enterprise_fees.sort).to eq [enterprise_fee1, enterprise_fee2].sort
|
||||
expect(exchange.variants).to match_array [variant1, variant2]
|
||||
expect(exchange.enterprise_fees).to match_array [enterprise_fee1, enterprise_fee2]
|
||||
|
||||
applicator.send(:touched_exchanges).should == [exchange]
|
||||
end
|
||||
@@ -345,8 +345,8 @@ module OpenFoodNetwork
|
||||
|
||||
it "updates the variants, enterprise fees and pickup information of the exchange" do
|
||||
exchange.reload
|
||||
expect(exchange.variants.sort).to eq [variant1, variant3].sort
|
||||
expect(exchange.enterprise_fees.sort).to eq [enterprise_fee2, enterprise_fee3]
|
||||
expect(exchange.variants).to match_array [variant1, variant3]
|
||||
expect(exchange.enterprise_fees).to match_array [enterprise_fee2, enterprise_fee3]
|
||||
expect(exchange.pickup_time).to eq 'New Pickup Time'
|
||||
expect(exchange.pickup_instructions).to eq 'New Pickup Instructions'
|
||||
expect(applicator.send(:touched_exchanges)).to eq [exchange]
|
||||
@@ -364,8 +364,8 @@ module OpenFoodNetwork
|
||||
|
||||
it "updates the variants, enterprise fees and pickup information of the exchange" do
|
||||
exchange.reload
|
||||
expect(exchange.variants.sort).to eq [variant1, variant3].sort
|
||||
expect(exchange.enterprise_fees.sort).to eq [enterprise_fee2, enterprise_fee3]
|
||||
expect(exchange.variants).to match_array [variant1, variant3]
|
||||
expect(exchange.enterprise_fees).to match_array [enterprise_fee2, enterprise_fee3]
|
||||
expect(exchange.pickup_time).to eq 'New Pickup Time'
|
||||
expect(exchange.pickup_instructions).to eq 'New Pickup Instructions'
|
||||
expect(applicator.send(:touched_exchanges)).to eq [exchange]
|
||||
@@ -383,8 +383,8 @@ module OpenFoodNetwork
|
||||
|
||||
it "updates the variants in the exchange, but not the fees or pickup information" do
|
||||
exchange.reload
|
||||
expect(exchange.variants.sort).to eq [variant1, variant3].sort
|
||||
expect(exchange.enterprise_fees.sort).to eq [enterprise_fee1, enterprise_fee2]
|
||||
expect(exchange.variants).to match_array [variant1, variant3]
|
||||
expect(exchange.enterprise_fees).to match_array [enterprise_fee1, enterprise_fee2]
|
||||
expect(exchange.pickup_time).to_not eq 'New Pickup Time'
|
||||
expect(exchange.pickup_instructions).to_not eq 'New Pickup Instructions'
|
||||
expect(applicator.send(:touched_exchanges)).to eq [exchange]
|
||||
|
||||
@@ -98,7 +98,7 @@ module OpenFoodNetwork
|
||||
{1 => [e1.id], 2 => [e1.id, e2.id]}
|
||||
end
|
||||
|
||||
permissions.variant_override_producers.sort.should == [e1, e2].sort
|
||||
permissions.variant_override_producers.should match_array [e1, e2]
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@ require 'spec_helper'
|
||||
module OpenFoodNetwork
|
||||
describe ProductsAndInventoryReport do
|
||||
context "As a site admin" do
|
||||
let(:user) do
|
||||
let(:user) do
|
||||
user = create(:user)
|
||||
user.spree_roles << Spree::Role.find_or_create_by_name!("admin")
|
||||
user
|
||||
@@ -14,7 +14,7 @@ module OpenFoodNetwork
|
||||
|
||||
it "Should return headers" do
|
||||
subject.header.should == [
|
||||
"Supplier",
|
||||
"Supplier",
|
||||
"Producer Suburb",
|
||||
"Product",
|
||||
"Product Properties",
|
||||
@@ -63,7 +63,7 @@ module OpenFoodNetwork
|
||||
|
||||
context "As an enterprise user" do
|
||||
let(:supplier) { create(:supplier_enterprise) }
|
||||
let(:enterprise_user) do
|
||||
let(:enterprise_user) do
|
||||
user = create(:user)
|
||||
user.enterprise_roles.create(enterprise: supplier)
|
||||
user.spree_roles = []
|
||||
@@ -79,7 +79,7 @@ module OpenFoodNetwork
|
||||
variant_1 = create(:variant, product: product1)
|
||||
variant_2 = create(:variant, product: product1)
|
||||
|
||||
subject.child_variants.sort.should == [variant_1, variant_2].sort
|
||||
subject.child_variants.should match_array [variant_1, variant_2]
|
||||
end
|
||||
|
||||
it "should only return variants managed by the user" do
|
||||
@@ -87,7 +87,7 @@ module OpenFoodNetwork
|
||||
product2 = create(:simple_product, supplier: supplier)
|
||||
variant_1 = create(:variant, product: product1)
|
||||
variant_2 = create(:variant, product: product2)
|
||||
|
||||
|
||||
subject.child_variants.should == [variant_2]
|
||||
end
|
||||
end
|
||||
@@ -96,15 +96,15 @@ module OpenFoodNetwork
|
||||
it "should only return variants managed by the user" do
|
||||
product1 = create(:simple_product, supplier: create(:supplier_enterprise))
|
||||
product2 = create(:simple_product, supplier: supplier)
|
||||
|
||||
|
||||
subject.master_variants.should == [product2.master]
|
||||
end
|
||||
|
||||
it "doesn't return master variants with siblings" do
|
||||
product = create(:simple_product, supplier: supplier)
|
||||
create(:variant, product: product)
|
||||
|
||||
subject.master_variants.should be_empty
|
||||
create(:variant, product: product)
|
||||
|
||||
subject.master_variants.should be_empty
|
||||
end
|
||||
end
|
||||
|
||||
@@ -113,13 +113,13 @@ module OpenFoodNetwork
|
||||
it "should return unfiltered variants sans-params" do
|
||||
product1 = create(:simple_product, supplier: supplier)
|
||||
product2 = create(:simple_product, supplier: supplier)
|
||||
subject.filter(Spree::Variant.scoped).sort.should == [product1.master, product2.master].sort
|
||||
subject.filter(Spree::Variant.scoped).should match_array [product1.master, product2.master]
|
||||
end
|
||||
it "should filter deleted products" do
|
||||
product1 = create(:simple_product, supplier: supplier)
|
||||
product2 = create(:simple_product, supplier: supplier)
|
||||
product2.delete
|
||||
subject.filter(Spree::Variant.scoped).sort.should == [product1.master].sort
|
||||
subject.filter(Spree::Variant.scoped).should match_array [product1.master]
|
||||
end
|
||||
describe "based on report type" do
|
||||
it "returns only variants on hand" do
|
||||
|
||||
@@ -43,7 +43,7 @@ describe EnterpriseFee do
|
||||
ef3 = create(:enterprise_fee, calculator: Spree::Calculator::PerItem.new)
|
||||
ef4 = create(:enterprise_fee, calculator: Spree::Calculator::PriceSack.new)
|
||||
|
||||
EnterpriseFee.per_item.sort.should == [ef1, ef2, ef3, ef4].sort
|
||||
EnterpriseFee.per_item.should match_array [ef1, ef2, ef3, ef4]
|
||||
end
|
||||
end
|
||||
|
||||
@@ -52,7 +52,7 @@ describe EnterpriseFee do
|
||||
ef1 = create(:enterprise_fee, calculator: Spree::Calculator::FlatRate.new)
|
||||
ef2 = create(:enterprise_fee, calculator: Spree::Calculator::FlexiRate.new)
|
||||
|
||||
EnterpriseFee.per_order.sort.should == [ef1, ef2].sort
|
||||
EnterpriseFee.per_order.should match_array [ef1, ef2]
|
||||
end
|
||||
|
||||
it "does not return fees with any other calculator" do
|
||||
|
||||
@@ -34,7 +34,7 @@ describe EnterpriseRelationship do
|
||||
it "creates permissions with a list" do
|
||||
er = EnterpriseRelationship.create! parent: e1, child: e2, permissions_list: ['one', 'two']
|
||||
er.reload
|
||||
er.permissions.map(&:name).sort.should == ['one', 'two'].sort
|
||||
er.permissions.map(&:name).should match_array ['one', 'two']
|
||||
end
|
||||
|
||||
it "does nothing when the list is nil" do
|
||||
@@ -50,11 +50,11 @@ describe EnterpriseRelationship do
|
||||
let!(:er3) { create(:enterprise_relationship, parent: e1, child: e3) }
|
||||
|
||||
it "finds relationships that grant permissions to some enterprises" do
|
||||
EnterpriseRelationship.permitting([e1, e2]).sort.should == [er1, er2].sort
|
||||
EnterpriseRelationship.permitting([e1, e2]).should match_array [er1, er2]
|
||||
end
|
||||
|
||||
it "finds relationships that are granted by particular enterprises" do
|
||||
EnterpriseRelationship.permitted_by([e1, e2]).sort.should == [er1, er3].sort
|
||||
EnterpriseRelationship.permitted_by([e1, e2]).should match_array [er1, er3]
|
||||
end
|
||||
end
|
||||
|
||||
@@ -66,7 +66,7 @@ describe EnterpriseRelationship do
|
||||
er3 = create(:enterprise_relationship, parent: e3, child: e1,
|
||||
permissions_list: ['three', 'four'])
|
||||
|
||||
EnterpriseRelationship.with_permission('two').sort.should == [er1, er2].sort
|
||||
EnterpriseRelationship.with_permission('two').should match_array [er1, er2]
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -118,7 +118,7 @@ describe Enterprise do
|
||||
let!(:er2) { create(:enterprise_relationship, parent_id: e.id, child_id: c.id) }
|
||||
|
||||
it "finds relatives" do
|
||||
e.relatives.sort.should == [p, c].sort
|
||||
e.relatives.should match_array [p, c]
|
||||
end
|
||||
|
||||
it "scopes relatives to visible distributors" do
|
||||
@@ -422,7 +422,7 @@ describe Enterprise do
|
||||
create(:product, :distributors => [d1], :on_hand => 5)
|
||||
create(:product, :distributors => [d3], :on_hand => 0)
|
||||
|
||||
Enterprise.with_distributed_active_products_on_hand.sort.should == [d1, d2]
|
||||
Enterprise.with_distributed_active_products_on_hand.should match_array [d1, d2]
|
||||
end
|
||||
|
||||
it "returns distributors with available products in stock" do
|
||||
@@ -438,7 +438,7 @@ describe Enterprise do
|
||||
create(:product, :distributors => [d4], :on_hand => 0)
|
||||
create(:product, :distributors => [d5]).delete
|
||||
|
||||
Enterprise.with_distributed_active_products_on_hand.sort.should == [d1, d2]
|
||||
Enterprise.with_distributed_active_products_on_hand.should match_array [d1, d2]
|
||||
Enterprise.with_distributed_active_products_on_hand.distinct_count.should == 2
|
||||
end
|
||||
end
|
||||
@@ -458,7 +458,7 @@ describe Enterprise do
|
||||
create(:product, :supplier => d4, :on_hand => 0)
|
||||
create(:product, :supplier => d5).delete
|
||||
|
||||
Enterprise.with_supplied_active_products_on_hand.sort.should == [d1, d2]
|
||||
Enterprise.with_supplied_active_products_on_hand.should match_array [d1, d2]
|
||||
Enterprise.with_supplied_active_products_on_hand.distinct_count.should == 2
|
||||
end
|
||||
end
|
||||
@@ -485,7 +485,7 @@ describe Enterprise do
|
||||
p1 = create(:simple_product, supplier: s1)
|
||||
p2 = create(:simple_product, supplier: s2)
|
||||
|
||||
Enterprise.supplying_variant_in([p1.master, p2.master]).sort.should == [s1, s2].sort
|
||||
Enterprise.supplying_variant_in([p1.master, p2.master]).should match_array [s1, s2]
|
||||
end
|
||||
|
||||
it "does not return duplicates" do
|
||||
@@ -625,9 +625,9 @@ describe Enterprise do
|
||||
er = EnterpriseRelationship.where(parent_id: opts[:from], child_id: opts[:to]).last
|
||||
er.should_not be_nil
|
||||
if opts[:with] == :all_permissions
|
||||
er.permissions.map(&:name).sort.should == ['add_to_order_cycle', 'manage_products', 'edit_profile', 'create_variant_overrides'].sort
|
||||
er.permissions.map(&:name).should match_array ['add_to_order_cycle', 'manage_products', 'edit_profile', 'create_variant_overrides']
|
||||
elsif opts.key? :with
|
||||
er.permissions.map(&:name).sort.should == opts[:with].map(&:to_s).sort
|
||||
er.permissions.map(&:name).should match_array opts[:with].map(&:to_s)
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -674,7 +674,7 @@ describe Enterprise do
|
||||
d = create(:distributor_enterprise)
|
||||
p = create(:product, distributors: [d])
|
||||
v = create(:variant, product: p)
|
||||
d.distributed_variants.sort.should == [p.master, v].sort
|
||||
d.distributed_variants.should match_array [p.master, v]
|
||||
end
|
||||
|
||||
it "finds variants distributed by order cycle" do
|
||||
@@ -696,7 +696,7 @@ describe Enterprise do
|
||||
d = create(:distributor_enterprise)
|
||||
p = create(:product, distributors: [d])
|
||||
v = create(:variant, product: p)
|
||||
d.product_distribution_variants.sort.should == [p.master, v].sort
|
||||
d.product_distribution_variants.should match_array [p.master, v]
|
||||
end
|
||||
|
||||
it "does not find variants distributed by order cycle" do
|
||||
@@ -752,12 +752,12 @@ describe Enterprise do
|
||||
|
||||
it "gets all taxons of all distributed products" do
|
||||
Spree::Product.stub(:in_distributor).and_return [product1, product2]
|
||||
distributor.distributed_taxons.sort.should == [taxon1, taxon2].sort
|
||||
distributor.distributed_taxons.should match_array [taxon1, taxon2]
|
||||
end
|
||||
|
||||
it "gets all taxons of all supplied products" do
|
||||
Spree::Product.stub(:in_supplier).and_return [product1, product2]
|
||||
supplier.supplied_taxons.sort.should == [taxon1, taxon2].sort
|
||||
supplier.supplied_taxons.should match_array [taxon1, taxon2]
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -170,17 +170,17 @@ describe Exchange do
|
||||
|
||||
it "finds exchanges coming from any of a number of enterprises" do
|
||||
Exchange.from_enterprises([coordinator]).should == [outgoing_exchange]
|
||||
Exchange.from_enterprises([supplier, coordinator]).sort.should == [incoming_exchange, outgoing_exchange].sort
|
||||
Exchange.from_enterprises([supplier, coordinator]).should match_array [incoming_exchange, outgoing_exchange]
|
||||
end
|
||||
|
||||
it "finds exchanges going to any of a number of enterprises" do
|
||||
Exchange.to_enterprises([coordinator]).should == [incoming_exchange]
|
||||
Exchange.to_enterprises([coordinator, distributor]).sort.should == [incoming_exchange, outgoing_exchange].sort
|
||||
Exchange.to_enterprises([coordinator, distributor]).should match_array [incoming_exchange, outgoing_exchange]
|
||||
end
|
||||
|
||||
it "finds exchanges involving any of a number of enterprises" do
|
||||
Exchange.involving([supplier]).should == [incoming_exchange]
|
||||
Exchange.involving([coordinator]).sort.should == [incoming_exchange, outgoing_exchange].sort
|
||||
Exchange.involving([coordinator]).should match_array [incoming_exchange, outgoing_exchange]
|
||||
Exchange.involving([distributor]).should == [outgoing_exchange]
|
||||
end
|
||||
end
|
||||
|
||||
@@ -37,7 +37,7 @@ describe OrderCycle do
|
||||
oc_undated = create(:simple_order_cycle, orders_open_at: nil, orders_close_at: nil)
|
||||
|
||||
OrderCycle.active.should == [oc_active]
|
||||
OrderCycle.inactive.sort.should == [oc_not_yet_open, oc_already_closed].sort
|
||||
OrderCycle.inactive.should match_array [oc_not_yet_open, oc_already_closed]
|
||||
OrderCycle.upcoming.should == [oc_not_yet_open]
|
||||
OrderCycle.closed.should == [oc_already_closed]
|
||||
OrderCycle.undated.should == [oc_undated]
|
||||
@@ -153,7 +153,7 @@ describe OrderCycle do
|
||||
e2 = create(:exchange, incoming: true,
|
||||
order_cycle: oc, receiver: oc.coordinator, sender: create(:enterprise))
|
||||
|
||||
oc.suppliers.sort.should == [e1.sender, e2.sender].sort
|
||||
oc.suppliers.should match_array [e1.sender, e2.sender]
|
||||
end
|
||||
|
||||
it "reports its distributors" do
|
||||
@@ -164,7 +164,7 @@ describe OrderCycle do
|
||||
e2 = create(:exchange, incoming: false,
|
||||
order_cycle: oc, sender: oc.coordinator, receiver: create(:enterprise))
|
||||
|
||||
oc.distributors.sort.should == [e1.receiver, e2.receiver].sort
|
||||
oc.distributors.should match_array [e1.receiver, e2.receiver]
|
||||
end
|
||||
|
||||
it "checks for existance of distributors" do
|
||||
@@ -215,11 +215,11 @@ describe OrderCycle do
|
||||
end
|
||||
|
||||
it "reports on the variants exchanged" do
|
||||
@oc.variants.sort.should == [@p0.master, @p1.master, @p2.master, @p2_v].sort
|
||||
@oc.variants.should match_array [@p0.master, @p1.master, @p2.master, @p2_v]
|
||||
end
|
||||
|
||||
it "reports on the variants distributed" do
|
||||
@oc.distributed_variants.sort.should == [@p1.master, @p2.master, @p2_v].sort
|
||||
@oc.distributed_variants.should match_array [@p1.master, @p2.master, @p2_v]
|
||||
end
|
||||
|
||||
it "reports on the variants distributed by a particular distributor" do
|
||||
@@ -231,7 +231,7 @@ describe OrderCycle do
|
||||
end
|
||||
|
||||
it "reports on the products exchanged" do
|
||||
@oc.products.sort.should == [@p0, @p1, @p2]
|
||||
@oc.products.should match_array [@p0, @p1, @p2]
|
||||
end
|
||||
end
|
||||
|
||||
@@ -313,7 +313,7 @@ describe OrderCycle do
|
||||
@oc.pickup_time_for(@d2).should == '2-8pm Friday'
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
describe "finding pickup instructions for a distributor" do
|
||||
it "returns the pickup instructions" do
|
||||
@oc.pickup_instructions_for(@d1).should == "Come get it!"
|
||||
@@ -375,7 +375,7 @@ describe OrderCycle do
|
||||
|
||||
occ.coordinator_fee_ids.should_not be_empty
|
||||
occ.coordinator_fee_ids.should == oc.coordinator_fee_ids
|
||||
|
||||
|
||||
# to_h gives us a unique hash for each exchange
|
||||
# check that the clone has no additional exchanges
|
||||
occ.exchanges.map(&:to_h).all? do |ex|
|
||||
@@ -402,7 +402,7 @@ describe OrderCycle do
|
||||
describe "finding order cycles opening in the future" do
|
||||
it "should give the soonest opening order cycle for a distributor" do
|
||||
distributor = create(:distributor_enterprise)
|
||||
oc = create(:simple_order_cycle, name: 'oc 1', distributors: [distributor], orders_open_at: 10.days.from_now, orders_close_at: 11.days.from_now)
|
||||
oc = create(:simple_order_cycle, name: 'oc 1', distributors: [distributor], orders_open_at: 10.days.from_now, orders_close_at: 11.days.from_now)
|
||||
OrderCycle.first_opening_for(distributor).should == oc
|
||||
end
|
||||
|
||||
@@ -411,12 +411,12 @@ describe OrderCycle do
|
||||
OrderCycle.first_opening_for(distributor).should == nil
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
describe "finding open order cycles" do
|
||||
it "should give the soonest closing order cycle for a distributor" do
|
||||
distributor = create(:distributor_enterprise)
|
||||
oc = create(:simple_order_cycle, name: 'oc 1', distributors: [distributor], orders_open_at: 1.days.ago, orders_close_at: 11.days.from_now)
|
||||
oc2 = create(:simple_order_cycle, name: 'oc 2', distributors: [distributor], orders_open_at: 2.days.ago, orders_close_at: 12.days.from_now)
|
||||
oc = create(:simple_order_cycle, name: 'oc 1', distributors: [distributor], orders_open_at: 1.days.ago, orders_close_at: 11.days.from_now)
|
||||
oc2 = create(:simple_order_cycle, name: 'oc 2', distributors: [distributor], orders_open_at: 2.days.ago, orders_close_at: 12.days.from_now)
|
||||
OrderCycle.first_closing_for(distributor).should == oc
|
||||
end
|
||||
end
|
||||
|
||||
@@ -22,7 +22,7 @@ module Spree
|
||||
it "finds line items for products supplied by one of a number of enterprises" do
|
||||
LineItem.supplied_by_any([s1]).should == [li1]
|
||||
LineItem.supplied_by_any([s2]).should == [li2]
|
||||
LineItem.supplied_by_any([s1, s2]).sort.should == [li1, li2].sort
|
||||
LineItem.supplied_by_any([s1, s2]).should match_array [li1, li2]
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@ module Spree
|
||||
let(:payment) { create(:payment, source: create(:credit_card)) }
|
||||
|
||||
it "can capture and void" do
|
||||
payment.actions.sort.should == %w(capture void).sort
|
||||
payment.actions.should match_array %w(capture void)
|
||||
end
|
||||
|
||||
describe "when a payment has been taken" do
|
||||
@@ -17,7 +17,7 @@ module Spree
|
||||
end
|
||||
|
||||
it "can void and credit" do
|
||||
payment.actions.sort.should == %w(void credit).sort
|
||||
payment.actions.should match_array %w(void credit)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -545,7 +545,7 @@ module Spree
|
||||
ot3 = create(:option_type, name: 'unit_items', presentation: 'Items')
|
||||
ot4 = create(:option_type, name: 'foo_unit_bar', presentation: 'Foo')
|
||||
|
||||
Spree::Product.all_variant_unit_option_types.sort.should == [ot1, ot2, ot3].sort
|
||||
Spree::Product.all_variant_unit_option_types.should match_array [ot1, ot2, ot3]
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@ module Spree
|
||||
sm.distributors << d1
|
||||
sm.distributors << d2
|
||||
|
||||
sm.reload.distributors.sort.should == [d1, d2].sort
|
||||
sm.reload.distributors.should match_array [d1, d2]
|
||||
end
|
||||
|
||||
it "finds shipping methods for a particular distributor" do
|
||||
|
||||
@@ -25,7 +25,7 @@ module Spree
|
||||
end
|
||||
|
||||
it "returns variants in stock or on demand, but not those that are neither" do
|
||||
Variant.where(is_master: false).in_stock.sort.should == [@v_in_stock, @v_on_demand].sort
|
||||
Variant.where(is_master: false).in_stock.should match_array [@v_in_stock, @v_on_demand]
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ describe VariantOverride do
|
||||
let!(:vo2) { create(:variant_override, hub: hub2, variant: v) }
|
||||
|
||||
it "finds variant overrides for a set of hubs" do
|
||||
VariantOverride.for_hubs([hub1, hub2]).sort.should == [vo1, vo2].sort
|
||||
VariantOverride.for_hubs([hub1, hub2]).should match_array [vo1, vo2]
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user