From f977a05b081fb04f6fcc8dce45aa821ec66f3a6d Mon Sep 17 00:00:00 2001 From: Rob Harrington Date: Fri, 5 May 2017 08:50:45 +1000 Subject: [PATCH] Fixing broken spec for fetching list of bought items as json --- .../controllers/line_items_controller_spec.rb | 20 ++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/spec/controllers/line_items_controller_spec.rb b/spec/controllers/line_items_controller_spec.rb index 3ee277f4fe..2b7ee1c247 100644 --- a/spec/controllers/line_items_controller_spec.rb +++ b/spec/controllers/line_items_controller_spec.rb @@ -2,25 +2,31 @@ require 'spec_helper' describe LineItemsController do let(:item) { create(:line_item) } + let(:user) { create(:user) } + let(:distributor) { create(:distributor_enterprise) } + let(:order_cycle) { create(:simple_order_cycle) } + let(:completed_order) do + order = create(:completed_order_with_totals, user: user, distributor: distributor, order_cycle: order_cycle) + while !order.completed? do break unless order.next! end + order + end let(:item_with_oc) do - order_cycle = create(:simple_order_cycle) - distributor = create(:distributor_enterprise) + item.order.user = user item.order.order_cycle = order_cycle item.order.distributor = distributor item.order.save item end - it "lists bought items" do - item.order.finalize! - controller.stub spree_current_user: item.order.user + it "lists items bought by the user from the same shop in the same order_cycle" do + controller.stub spree_current_user: completed_order.user controller.stub current_order_cycle: item_with_oc.order.order_cycle controller.stub current_distributor: item_with_oc.order.distributor get :index, { format: :json } expect(response.status).to eq 200 json_response = JSON.parse(response.body) - expect(json_response.length).to eq 1 - expect(json_response[0]['id']).to eq item.id + expect(json_response.length).to eq completed_order.line_items(:reload).count + expect(json_response[0]['id']).to eq completed_order.line_items.first.id end it "fails without line item id" do