From 17456ebf2ec1524b9dd4bb1c7b65ba4fe51eecf6 Mon Sep 17 00:00:00 2001 From: Rob H Date: Fri, 7 Feb 2014 15:29:31 +1100 Subject: [PATCH] BOM: only fetch completed orders --- .../admin/bulk_order_management.js.coffee | 2 +- .../admin/bulk_order_management_spec.rb | 26 ++++++++++++++----- .../unit/bulk_order_management_spec.js.coffee | 2 +- 3 files changed, 22 insertions(+), 8 deletions(-) diff --git a/app/assets/javascripts/admin/bulk_order_management.js.coffee b/app/assets/javascripts/admin/bulk_order_management.js.coffee index e88697ff7f..62469d0e2a 100644 --- a/app/assets/javascripts/admin/bulk_order_management.js.coffee +++ b/app/assets/javascripts/admin/bulk_order_management.js.coffee @@ -93,7 +93,7 @@ orderManagementModule.controller "AdminOrderMgmtCtrl", [ api_error_msg = "You don't have an API key yet. An attempt was made to generate one, but you are currently not authorised, please contact your site administrator for access." $scope.fetchOrders = -> - dataFetcher("/api/orders?template=bulk_index").then (data) -> + dataFetcher("/api/orders?template=bulk_index&q[completed_at_not_null]=true").then (data) -> $scope.resetOrders data $scope.resetOrders = (data) -> diff --git a/spec/features/admin/bulk_order_management_spec.rb b/spec/features/admin/bulk_order_management_spec.rb index 2b6c5d3542..1f5125745e 100644 --- a/spec/features/admin/bulk_order_management_spec.rb +++ b/spec/features/admin/bulk_order_management_spec.rb @@ -29,6 +29,26 @@ feature %q{ page.should have_selector "h1.page-title", text: "Bulk Order Management" end + context "displaying the list of line items " do + let!(:o1) { FactoryGirl.create(:order, state: 'complete', completed_at: Time.now ) } + let!(:o2) { FactoryGirl.create(:order, state: 'complete', completed_at: Time.now ) } + let!(:o3) { FactoryGirl.create(:order, state: 'address', completed_at: nil ) } + let!(:li1) { FactoryGirl.create(:line_item, order: o1 ) } + let!(:li2) { FactoryGirl.create(:line_item, order: o2 ) } + let!(:li3) { FactoryGirl.create(:line_item, order: o3 ) } + + before :each do + visit '/admin/orders/bulk_management' + end + + it "displays a list of line items" do + page.should have_selector "th.id", text: "ID", :visible => true + page.should have_selector "td.id", text: li1.id.to_s + page.should have_selector "td.id", text: li2.id.to_s + page.should_not have_selector "td.id", text: li3.id.to_s + end + end + context "displaying individual columns" do let!(:o1) { FactoryGirl.create(:order, state: 'complete', completed_at: Time.now ) } let!(:o2) { FactoryGirl.create(:order, state: 'complete', completed_at: Time.now ) } @@ -39,12 +59,6 @@ feature %q{ visit '/admin/orders/bulk_management' end - it "displays a list of line items" do - page.should have_selector "th.id", text: "ID", :visible => true - page.should have_selector "td.id", text: li1.id.to_s, :visible => true - page.should have_selector "td.id", text: li2.id.to_s, :visible => true - end - it "displays a column for user email" do page.should have_selector "th.email", text: "EMAIL", :visible => true page.should have_selector "td.email", text: o1.email, :visible => true diff --git a/spec/javascripts/unit/bulk_order_management_spec.js.coffee b/spec/javascripts/unit/bulk_order_management_spec.js.coffee index 1e7b0c39e6..54cf386d78 100644 --- a/spec/javascripts/unit/bulk_order_management_spec.js.coffee +++ b/spec/javascripts/unit/bulk_order_management_spec.js.coffee @@ -32,7 +32,7 @@ describe "AdminOrderMgmtCtrl", -> describe "fetching orders", -> beforeEach -> - httpBackend.expectGET("/api/orders?template=bulk_index").respond "list of orders" + httpBackend.expectGET("/api/orders?template=bulk_index&q[completed_at_not_null]=true").respond "list of orders" it "makes a standard call to dataFetcher", -> scope.fetchOrders()