diff --git a/app/views/spree/api/orders/bulk_index.v1.rabl b/app/views/spree/api/orders/bulk_index.v1.rabl new file mode 100644 index 0000000000..384f518fcf --- /dev/null +++ b/app/views/spree/api/orders/bulk_index.v1.rabl @@ -0,0 +1,2 @@ +collection @orders.order('id ASC') +extends "spree/api/orders/bulk_show" \ No newline at end of file diff --git a/app/views/spree/api/orders/bulk_show.v1.rabl b/app/views/spree/api/orders/bulk_show.v1.rabl new file mode 100644 index 0000000000..5642032975 --- /dev/null +++ b/app/views/spree/api/orders/bulk_show.v1.rabl @@ -0,0 +1,2 @@ +object @order +attributes :id \ No newline at end of file diff --git a/spec/controllers/spree/api/orders_controller_spec.rb b/spec/controllers/spree/api/orders_controller_spec.rb new file mode 100644 index 0000000000..2d70e37fed --- /dev/null +++ b/spec/controllers/spree/api/orders_controller_spec.rb @@ -0,0 +1,28 @@ +require 'spec_helper' +require 'spree/api/testing_support/helpers' + +module Spree + describe Spree::Api::OrdersController do + include Spree::Api::TestingSupport::Helpers + render_views + + + let!(:order1) { FactoryGirl.create(:order) } + let!(:line_item1) { FactoryGirl.create(:line_item) } + let!(:line_item2) { FactoryGirl.create(:line_item) } + let(:attributes) { [:id] } + + before do + stub_authentication! + Spree.user_class.stub :find_by_spree_api_key => current_api_user + end + + context "as a normal user" do + it "retrieves a list of products with appropriate attributes" do + spree_get :index, { :template => 'bulk_index', :format => :json } + keys = json_response.first.keys.map{ |key| key.to_sym } + attributes.all?{ |attr| keys.include? attr }.should == true + end + end + end +end \ No newline at end of file