Make assignment list assignTo tray checkpoint aware
closes VICE-4298 flag=discussion_checkpoints Data will not be displayed correctly. that is handled in VICE-4299 Test Plan 1. Open the assignto tray from the assignment index page 2. Verify checkpointed discussion display correct inputs Change-Id: I97a4eed9946fb4d415e027776615c350c117908b Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/356004 Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com> Reviewed-by: Caleb Guanzon <cguanzon@instructure.com> QA-Review: Chawn Neal <chawn.neal@instructure.com> Product-Review: Jason Gillett <jason.gillett@instructure.com>
This commit is contained in:
parent
c4aab0f9e0
commit
5c74896a06
|
@ -1463,32 +1463,49 @@ describe "assignments" do
|
|||
|
||||
context "with discussion_checkpoints" do
|
||||
before :once do
|
||||
Account.site_admin.enable_feature! :discussion_checkpoints
|
||||
end
|
||||
course_with_teacher({ user: @teacher, active_course: true, active_enrollment: true })
|
||||
|
||||
it "does not show points possible and due date fields for checkpointed assignments" do
|
||||
course_with_teacher_logged_in(active_all: true, course: @course)
|
||||
checkpointed_discussion = DiscussionTopic.create_graded_topic!(course: @course, title: "checkpointed discussion")
|
||||
Account.site_admin.enable_feature! :discussion_checkpoints
|
||||
@checkpointed_discussion = DiscussionTopic.create_graded_topic!(course: @course, title: "checkpointed discussion")
|
||||
Checkpoints::DiscussionCheckpointCreatorService.call(
|
||||
discussion_topic: checkpointed_discussion,
|
||||
discussion_topic: @checkpointed_discussion,
|
||||
checkpoint_label: CheckpointLabels::REPLY_TO_TOPIC,
|
||||
dates: [{ type: "everyone", due_at: 2.days.from_now }],
|
||||
points_possible: 6
|
||||
)
|
||||
Checkpoints::DiscussionCheckpointCreatorService.call(
|
||||
discussion_topic: checkpointed_discussion,
|
||||
discussion_topic: @checkpointed_discussion,
|
||||
checkpoint_label: CheckpointLabels::REPLY_TO_ENTRY,
|
||||
dates: [{ type: "everyone", due_at: 3.days.from_now }],
|
||||
points_possible: 7,
|
||||
replies_required: 2
|
||||
)
|
||||
end
|
||||
|
||||
it "does not show points possible and due date fields for checkpointed assignments" do
|
||||
user_session(@teacher)
|
||||
|
||||
get "/courses/#{@course.id}/assignments"
|
||||
f("div#assignment_#{checkpointed_discussion.assignment.id} button.al-trigger").click
|
||||
f("div#assignment_#{@checkpointed_discussion.assignment.id} button.al-trigger").click
|
||||
f("li a.edit_assignment").click
|
||||
expect(f("input#assign_#{checkpointed_discussion.assignment.id}_assignment_name")).to be_present
|
||||
expect(f("body")).not_to contain_jqcss "label[for='#{checkpointed_discussion.assignment.id}_assignment_due_at']"
|
||||
expect(f("body")).not_to contain_jqcss "label[for='#{checkpointed_discussion.assignment.id}_assignment_points']"
|
||||
expect(f("input#assign_#{@checkpointed_discussion.assignment.id}_assignment_name")).to be_present
|
||||
expect(f("body")).not_to contain_jqcss "label[for='#{@checkpointed_discussion.assignment.id}_assignment_due_at']"
|
||||
expect(f("body")).not_to contain_jqcss "label[for='#{@checkpointed_discussion.assignment.id}_assignment_points']"
|
||||
end
|
||||
|
||||
it "displays the correct date input fields in the assign to tray" do
|
||||
user_session(@teacher)
|
||||
get "/courses/#{@course.id}/assignments"
|
||||
|
||||
fj("#assign_#{@checkpointed_discussion.assignment.id}_manage_link").click
|
||||
wait_for_ajaximations
|
||||
|
||||
f("#assignment_#{@checkpointed_discussion.assignment.id} .assign-to-link").click
|
||||
wait_for_assign_to_tray_spinner
|
||||
|
||||
expect(module_item_assign_to_card.first).not_to contain_css(due_date_input_selector)
|
||||
expect(module_item_assign_to_card.first).to contain_css(reply_to_topic_due_date_input_selector)
|
||||
expect(module_item_assign_to_card.first).to contain_css(required_replies_due_date_input_selector)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -480,6 +480,7 @@ export default AssignmentListItemView = (function () {
|
|||
tool.base_url +
|
||||
`&discussion_topics[]=${__guard__(this.model.get('discussion_topic'), x => x.id)}`)
|
||||
})
|
||||
data.item_assignment_type = "discussion_topic"
|
||||
} else {
|
||||
const isNewQuizzes = this.model.isQuizLTIAssignment()
|
||||
const isShareToCommons = (tool) => tool.canvas_icon_class === 'icon-commons'
|
||||
|
@ -614,6 +615,7 @@ export default AssignmentListItemView = (function () {
|
|||
itemType="assignment"
|
||||
locale={ENV.LOCALE || 'en'}
|
||||
timezone={ENV.TIMEZONE || 'UTC'}
|
||||
isCheckpointed={itemProps.isCheckpoint}
|
||||
{...itemProps}
|
||||
/>,
|
||||
document.getElementById('assign-to-mount-point')
|
||||
|
@ -629,12 +631,14 @@ export default AssignmentListItemView = (function () {
|
|||
const itemContentId = e.target.getAttribute('data-assignment-id')
|
||||
const pointsPossible = this.model.get('points_possible')
|
||||
const iconType = e.target.getAttribute('data-assignment-type')
|
||||
const isCheckpoint = e.target.getAttribute('data-assignment-has-checkpoint')
|
||||
this.renderItemAssignToTray(true, returnFocusTo, {
|
||||
courseId,
|
||||
itemName,
|
||||
itemContentId,
|
||||
pointsPossible,
|
||||
iconType,
|
||||
isCheckpoint,
|
||||
})
|
||||
}
|
||||
|
||||
|
|
|
@ -252,6 +252,7 @@
|
|||
data-assignment-context-id="{{courseId}}"
|
||||
data-assignment-id="{{id}}"
|
||||
data-assignment-type="{{item_assignment_type}}"
|
||||
data-assignment-has-checkpoint="{{isCheckpoint}}"
|
||||
title="<%= {{#t}}Assign this Assignment{{/t}} %>"
|
||||
aria-label="{{#t}}Assign To...{{/t}}"
|
||||
data-focus-returns-to="assign_{{id}}_manage_link"
|
||||
|
@ -426,6 +427,7 @@
|
|||
data-assignment-context-id="{{courseId}}"
|
||||
data-assignment-id="{{id}}"
|
||||
data-assignment-type="{{item_assignment_type}}"
|
||||
data-assignment-has-checkpoint="{{isCheckpoint}}"
|
||||
title="<%= {{#t}}Assign this Assignment{{/t}} %>"
|
||||
aria-label="{{#t}}Assign To...{{/t}}"
|
||||
data-focus-returns-to="assign_{{id}}_manage_link"
|
||||
|
|
Loading…
Reference in New Issue