Skip to content

Commit

Permalink
Support nested script object for section updates
Browse files Browse the repository at this point in the history
  • Loading branch information
maddiedierker committed Jun 7, 2018
1 parent d9f184b commit 42f6cdc
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 1 deletion.
6 changes: 5 additions & 1 deletion dashboard/app/controllers/sections_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,11 @@ def update
authorize! :manage, section

course_id = params[:course_id]
script_id = params[:script_id] || params[:script][:id]

# This endpoint needs to satisfy two endpoint formats for getting script_id
# This should be updated soon to always expect params[:script_id]
script_id = params[:script][:id] if params[:script]
script_id ||= params[:script_id]

if script_id
script = Script.get_from_cache(script_id)
Expand Down
12 changes: 12 additions & 0 deletions dashboard/test/controllers/sections_controller_test.rb
Original file line number Diff line number Diff line change
Expand Up @@ -266,4 +266,16 @@ class SectionsControllerTest < ActionController::TestCase

assert_not_nil UserScript.find_by(script: Script.artist_script, user: student)
end

test "update: can set script from nested script param" do
sign_in @teacher
section = create(:section, user: @teacher, script_id: Script.flappy_script.id)
post :update, as: :json, params: {
id: section.id,
script: {id: @script_in_course.id}
}
assert_response :success
section.reload
assert_equal(@script_in_course.id, section.script_id)
end
end

0 comments on commit 42f6cdc

Please sign in to comment.