Loading managed shops into standing orders index, to be used for filtering

This commit is contained in:
Rob Harrington
2016-10-07 10:07:55 +11:00
parent 8372317a8f
commit 24cb823c90
2 changed files with 8 additions and 2 deletions

View File

@@ -3,6 +3,7 @@ require 'open_food_network/permissions'
module Admin
class StandingOrdersController < ResourceController
before_filter :load_shop, only: [:new]
before_filter :load_shops, only: [:index]
before_filter :wrap_sli_attrs, only: [:create]
respond_to :json
@@ -50,6 +51,10 @@ module Admin
@shop = Enterprise.find(params[:shop_id])
end
def load_shops
@shops = Enterprise.managed_by(spree_current_user).is_distributor
end
def json_errors
@object.errors.messages.inject({}) do |errors, (k,v)|
errors[k] = v.map{ |msg| @object.errors.full_message(k,msg) }

View File

@@ -25,10 +25,11 @@ describe Admin::StandingOrdersController, type: :controller do
context 'as an enterprise user' do
before { shop.update_attributes(owner: user) }
it 'renders the index page without loading any data' do
it 'renders the index page with appropriate data' do
spree_get :index, params
expect(response).to render_template 'index'
expect(assigns(:collection)).to eq []
expect(assigns(:collection)).to eq [] # No collection loaded
expect(assigns(:shops)).to eq [shop] # Shops are loaded
end
end
end