diff --git a/app/views/spree/api/orders/bulk_show.v1.rabl b/app/views/spree/api/orders/bulk_show.v1.rabl index 9454ebb733..a7496f8b4b 100644 --- a/app/views/spree/api/orders/bulk_show.v1.rabl +++ b/app/views/spree/api/orders/bulk_show.v1.rabl @@ -1,6 +1,7 @@ object @order attributes :id, :email node( :completed_at ) { |order| order.completed_at.blank? ? "" : order.completed_at.strftime("%F %T") } +node( :distributor ) { |order| partial 'spree/api/enterprises/bulk_show', :object => order.distributor } node( :line_items ) do |order| order.line_items.order('id ASC').map do |line_item| partial 'spree/api/line_items/bulk_show', :object => line_item diff --git a/spec/controllers/spree/api/orders_controller_spec.rb b/spec/controllers/spree/api/orders_controller_spec.rb index 220a373d55..d4cd2327ef 100644 --- a/spec/controllers/spree/api/orders_controller_spec.rb +++ b/spec/controllers/spree/api/orders_controller_spec.rb @@ -6,14 +6,15 @@ module Spree include Spree::Api::TestingSupport::Helpers render_views - let!(:order1) { FactoryGirl.create(:order, :state => 'complete', :completed_at => Time.now ) } - let!(:order2) { FactoryGirl.create(:order, :state => 'complete', :completed_at => Time.now ) } - let!(:order3) { FactoryGirl.create(:order, :state => 'complete', :completed_at => Time.now ) } - let!(:line_item1) { FactoryGirl.create(:line_item, :order => order1) } - let!(:line_item2) { FactoryGirl.create(:line_item, :order => order2) } - let!(:line_item3) { FactoryGirl.create(:line_item, :order => order2) } - let!(:line_item4) { FactoryGirl.create(:line_item, :order => order3) } - let(:order_attributes) { [:id, :email, :completed_at, :line_items] } + let!(:dist1) { FactoryGirl.create(:distributor_enterprise) } + let!(:order1) { FactoryGirl.create(:order, state: 'complete', completed_at: Time.now, distributor: dist1 ) } + let!(:order2) { FactoryGirl.create(:order, state: 'complete', completed_at: Time.now, distributor: dist1 ) } + let!(:order3) { FactoryGirl.create(:order, state: 'complete', completed_at: Time.now, distributor: dist1 ) } + let!(:line_item1) { FactoryGirl.create(:line_item, order: order1) } + let!(:line_item2) { FactoryGirl.create(:line_item, order: order2) } + let!(:line_item3) { FactoryGirl.create(:line_item, order: order2) } + let!(:line_item4) { FactoryGirl.create(:line_item, order: order3) } + let(:order_attributes) { [:id, :email, :completed_at, :line_items, :distributor] } let(:line_item_attributes) { [:id, :quantity, :max_quantity, :supplier, :variant_unit_text] } before do @@ -58,6 +59,10 @@ module Spree it "returns supplier object with id and name keys" do json_response.map{ |order| order['line_items'] }.flatten.map{ |li| li['supplier'] }.all?{ |s| s.has_key?('id') && s.has_key?('name') }.should == true end + + it "returns distributor object with id and name keys" do + json_response.map{ |order| order['distributor'] }.all?{ |d| d.has_key?('id') && d.has_key?('name') }.should == true + end end end end \ No newline at end of file