diff --git a/app/helpers/canvas_outcomes_helper.rb b/app/helpers/canvas_outcomes_helper.rb index bf469a4ad2d..52f2356e33f 100644 --- a/app/helpers/canvas_outcomes_helper.rb +++ b/app/helpers/canvas_outcomes_helper.rb @@ -18,6 +18,11 @@ module CanvasOutcomesHelper def set_outcomes_alignment_js_env(artifact, context, props) + context = + case context + when Group then context.context + else context + end # don't show for contexts without alignmments return if context.learning_outcome_links.empty? diff --git a/spec/helpers/canvas_outcomes_helper_spec.rb b/spec/helpers/canvas_outcomes_helper_spec.rb index b6911718efc..77d090fd3aa 100644 --- a/spec/helpers/canvas_outcomes_helper_spec.rb +++ b/spec/helpers/canvas_outcomes_helper_spec.rb @@ -88,6 +88,27 @@ describe CanvasOutcomesHelper do it_behaves_like 'valid js_env settings' end + + context 'within a Group' do + before do + outcome_model(context: @course) + @group = @course.groups.create(:name => "some group") + end + + it 'sets js_env with the group.context values' do + expect(subject).to receive(:extract_domain_jwt).and_return ['domain', 'jwt'] + expect(subject).to receive(:js_env).with({ + canvas_outcomes: { + artifact_type: 'canvas.page', + artifact_id: wiki_page.id, + context_uuid: @course.uuid, + host: 'http://domain', + jwt: 'jwt' + } + }) + subject.set_outcomes_alignment_js_env(wiki_page, @group, {}) + end + end end end