diff --git a/mod/assign/tests/behat/set_availability.feature b/mod/assign/tests/behat/set_availability.feature index 4772e650497..d773b9bf9b3 100644 --- a/mod/assign/tests/behat/set_availability.feature +++ b/mod/assign/tests/behat/set_availability.feature @@ -1,8 +1,8 @@ -@mod @mod_assign @javascript +@mod @mod_assign Feature: Set availability dates for an assignment - In order to control when a student can upload an assignment - As a teacher - I need be able to set availability dates for an assignment + In order to control when a student can upload an assignment + As a teacher + I need be able to set availability dates for an assignment Background: Given the following "courses" exist: @@ -18,99 +18,89 @@ Feature: Set availability dates for an assignment | teacher1 | C1 | editingteacher | | student1 | C1 | student | | student2 | C1 | student | - And the following "activity" exists: - | activity | assign | - | course | C1 | - | name | Assignment name | - | description | Assignment description | - | assignsubmission_file_enabled | 1 | - | assignsubmission_file_maxfiles | 1 | - | assignsubmission_file_maxsizebytes | 0 | - | submissiondrafts | 0 | Scenario: Student cannot submit an assignment prior to the 'allow submissions from' date - Given I am on the "Assignment name" Activity page logged in as teacher1 - And I navigate to "Edit settings" in current page administration - And I follow "Expand all" - # Set 'Allow submissions from' to tomorrow at noon. - And I set the field "Allow submissions from" to "##tomorrow noon##" - And I press "Save and return to course" - And I log out - + Given the following "activity" exists: + | activity | assign | + | course | C1 | + | name | Assignment name | + | assignsubmission_file_enabled | 1 | + | assignsubmission_file_maxfiles | 1 | + | assignsubmission_file_maxsizebytes | 0 | + | submissiondrafts | 0 | + | allowsubmissionsfromdate | ##tomorrow noon## | When I am on the "Assignment name" Activity page logged in as student1 Then "Add submission" "button" should not exist And I should see "This assignment will accept submissions from" And I should see "##tomorrow noon##%A, %d %B %Y, %I:%M %p##" + @javascript Scenario: Student can see the assignment's due date in the course calendar - Given I am on the "Assignment name" Activity page logged in as teacher1 - And I navigate to "Edit settings" in current page administration - And I follow "Expand all" - # Set 'Allow submissions from' to the first day of this month at noon. - And I set the field "Allow submissions from" to "##first day of this month noon##" - # Set 'Due date' to the second day of this month at noon. - And I set the field "Due date" to "##first day of this month noon +24 hours##" - And I press "Save and return to course" - And I turn editing mode on - And I add the "Calendar" block - And I log out - - And I am on the "C1" Course page logged in as student1 - And I follow "This month" - When I hover over day "2" of this month in the calendar + Given the following "activity" exists: + | activity | assign | + | course | C1 | + | name | Assignment name | + | assignsubmission_file_enabled | 1 | + | assignsubmission_file_maxfiles | 1 | + | assignsubmission_file_maxsizebytes | 0 | + | submissiondrafts | 0 | + | allowsubmissionsfromdate | ##first day of this month noon## | + | duedate | ##first day of this month noon +24 hours## | + And the following "blocks" exist: + | blockname | contextlevel | reference | pagetypepattern | defaultregion | + | calendar_month | Course | C1 | course-view-* | site-post | + When I am on the "C1" Course page logged in as student1 + And I hover over day "2" of this month in the calendar Then I should see "C1: Assignment name is due" - @_file_upload + @javascript @_file_upload Scenario: Student can submit an assignment before the due date - Given I am on the "Assignment name" Activity page logged in as teacher1 - And I navigate to "Edit settings" in current page administration - And I follow "Expand all" - # Set 'Allow submissions from' to now. - And I set the field "Allow submissions from" to "##now##" - # Set 'Due date' to 2 days 5 hours 30 minutes in the future. - And I set the field "Due date" to "##+2 days 5 hours 30 minutes##" - And I press "Save and return to course" - And I log out - + Given the following "activity" exists: + | activity | assign | + | course | C1 | + | name | Assignment name | + | assignsubmission_file_enabled | 1 | + | assignsubmission_file_maxfiles | 1 | + | assignsubmission_file_maxsizebytes | 0 | + | submissiondrafts | 0 | + | allowsubmissionsfromdate | ##now## | + | duedate | ##+2 days 5 hours 30 minutes## | When I am on the "Assignment name" Activity page logged in as student1 And I should see "##+2 days 5 hours 30 minutes##%A, %d %B %Y##" in the "Due date" "table_row" And I should see "2 days 5 hours" in the "Time remaining" "table_row" And "Add submission" "button" should exist And I press "Add submission" And I upload "lib/tests/fixtures/empty.txt" file to "File submissions" filemanager - When I press "Save changes" - Then I should see "Submitted for grading" in the "Submission status" "table_row" - And I log out + And I press "Save changes" + And I should see "Submitted for grading" in the "Submission status" "table_row" And I am on the "Assignment name" Activity page logged in as teacher1 And I should see "1" in the "Submitted" "table_row" And I navigate to "View all submissions" in current page administration And I should see "Submitted for grading" in the "Student 1" "table_row" - @_file_upload + @javascript @_file_upload Scenario: Student can submit an assignment after the due date and the submission is marked as late - Given I am on the "Assignment name" Activity page logged in as teacher1 - And I navigate to "Edit settings" in current page administration - And I follow "Expand all" - # Set 'Allow submissions from' to 3 days ago. - And I set the field "Allow submissions from" to "##3 days ago##" - # Set 'Due date' to 2 days 5 hours 30 minutes ago. - And I set the field "Due date" to "##2 days 5 hours 30 minutes ago##" - # Set 'Cut-off date' to tomorrow at noon. - And I set the field "Cut-off date" to "##tomorrow noon##" - And I press "Save and return to course" - And I log out - - And I am on the "Assignment name" Activity page logged in as student1 + Given the following "activity" exists: + | activity | assign | + | course | C1 | + | name | Assignment name | + | assignsubmission_file_enabled | 1 | + | assignsubmission_file_maxfiles | 1 | + | assignsubmission_file_maxsizebytes | 0 | + | submissiondrafts | 0 | + | allowsubmissionsfromdate | ##3 days ago## | + | duedate | ##2 days 5 hours 30 minutes ago## | + | cutoffdate | ##tomorrow noon## | + When I am on the "Assignment name" Activity page logged in as student1 And I should see "##2 days 5 hours 30 minutes ago##%A, %d %B %Y##" in the "Due date" "table_row" And I should see "Assignment is overdue by: 2 days 5 hours" in the "Time remaining" "table_row" And "Add submission" "button" should exist And I press "Add submission" And I upload "lib/tests/fixtures/empty.txt" file to "File submissions" filemanager - When I press "Save changes" - Then I should see "Submitted for grading" in the "Submission status" "table_row" + And I press "Save changes" + And I should see "Submitted for grading" in the "Submission status" "table_row" And I should see "Assignment was submitted 2 days 5 hours late" in the "Time remaining" "table_row" - And I log out And I am on the "Assignment name" Activity page logged in as teacher1 And I should see "1" in the "Submitted" "table_row" @@ -119,21 +109,19 @@ Feature: Set availability dates for an assignment And I should see "2 days 5 hours late" in the "Student 1" "table_row" Scenario: Student cannot submit an assignment after the cut-off date - Given I am on the "Assignment name" Activity page logged in as teacher1 - And I navigate to "Edit settings" in current page administration - And I follow "Expand all" - # Set 'Allow submissions from' to 3 days ago. - And I set the field "Allow submissions from" to "##3 days ago##" - # Set 'Due date' to 2 days 5 hours 30 minutes ago. - And I set the field "Due date" to "##2 days 5 hours 30 minutes ago##" - # Set 'Cut-off date' to yesterday at noon. - And I set the field "Cut-off date" to "##yesterday noon##" - And I press "Save and return to course" - And I log out - + Given the following "activity" exists: + | activity | assign | + | course | C1 | + | name | Assignment name | + | assignsubmission_file_enabled | 1 | + | assignsubmission_file_maxfiles | 1 | + | assignsubmission_file_maxsizebytes | 0 | + | submissiondrafts | 0 | + | allowsubmissionsfromdate | ##3 days ago## | + | duedate | ##2 days 5 hours 30 minutes ago## | + | cutoffdate | ##yesterday noon## | When I am on the "Assignment name" Activity page logged in as student1 Then "Add submission" "button" should not exist - And I log out And I am on the "Assignment name" Activity page logged in as teacher1 And I should see "0" in the "Submitted" "table_row"