Extract method in subs controller

This commit is contained in:
luisramos0
2019-07-17 10:33:38 +01:00
parent 57f1742f24
commit 81482683cf
2 changed files with 18 additions and 19 deletions

View File

@@ -33,21 +33,11 @@ module Admin
end
def create
form = SubscriptionForm.new(@subscription, params[:subscription])
if form.save
render_as_json @subscription
else
render json: { errors: form.json_errors }, status: :unprocessable_entity
end
save_form_and_render(false)
end
def update
form = SubscriptionForm.new(@subscription, params[:subscription])
if form.save
render_as_json @subscription, order_update_issues: form.order_update_issues
else
render json: { errors: form.json_errors }, status: :unprocessable_entity
end
save_form_and_render
end
def cancel
@@ -69,16 +59,25 @@ module Admin
def unpause
params[:subscription][:paused_at] = nil
form = SubscriptionForm.new(@subscription, params[:subscription])
if form.save
render_as_json @subscription, order_update_issues: form.order_update_issues
else
render json: { errors: form.json_errors }, status: :unprocessable_entity
end
save_form_and_render
end
private
def save_form_and_render(render_issues = true)
form = SubscriptionForm.new(@subscription, params[:subscription])
unless form.save
render json: { errors: form.json_errors }, status: :unprocessable_entity
return
end
if render_issues
render_as_json @subscription, order_update_issues: form.order_update_issues
else
render_as_json @subscription
end
end
def permissions
return @permissions unless @permissions.nil?
@permissions = OpenFoodNetwork::Permissions.new(spree_current_user)

View File

@@ -583,7 +583,7 @@ describe Admin::SubscriptionsController, type: :controller do
end
context 'json' do
let(:params) { { format: :json, id: subscription.id } }
let(:params) { { format: :json, id: subscription.id, subscription: {} } }
context 'as a regular user' do
it 'redirects to unauthorized' do