MDL-47065 notes: don't add blank notes
Previously the logic was wrong and was proceeding to add a note when content was missing. Also add behat coverage for adding notes to participants (this test is not perfect, but better than zero coverage we had before).
This commit is contained in:
committed by
David Monllao
parent
44f23c7ec1
commit
6ccff3ba5d
@@ -0,0 +1,41 @@
|
||||
@core @core_note
|
||||
Feature: Add notes to course participants
|
||||
In order to share information with other staff
|
||||
As a teacher
|
||||
I need to add notes from the course particpants list
|
||||
|
||||
Scenario: An teacher can add multiple notes
|
||||
Given the following "users" exist:
|
||||
| username | firstname | lastname | email |
|
||||
| teacher1 | Teacher | 1 | teacher1@example.com |
|
||||
| student1 | Student | 1 | student1@example.com |
|
||||
| student2 | Student | 2 | student2@example.com |
|
||||
And the following "courses" exist:
|
||||
| fullname | shortname | format |
|
||||
| Course 1 | C1 | topics |
|
||||
And the following "course enrolments" exist:
|
||||
| user | course | role |
|
||||
| teacher1 | C1 | editingteacher |
|
||||
| student1 | C1 | student |
|
||||
| student2 | C1 | student |
|
||||
And I log in as "teacher1"
|
||||
And I follow "Course 1"
|
||||
And I follow "Participants"
|
||||
And I set the field with xpath "//tr[contains(normalize-space(.), 'Student 1')]//input[@type='checkbox']" to "1"
|
||||
And I set the field with xpath "//tr[contains(normalize-space(.), 'Student 2')]//input[@type='checkbox']" to "1"
|
||||
And I set the field "With selected users..." to "Add a new note"
|
||||
And I press "OK"
|
||||
# Add a note to student 1, but leave student 2 empty.
|
||||
When I set the field with xpath "//tr[contains(normalize-space(.), 'Student 1')]//textarea" to "Student 1 needs to pick up his game"
|
||||
And I set the field with xpath "//tr[contains(normalize-space(.), 'Student 2')]//textarea" to ""
|
||||
And I press "Save changes"
|
||||
And I follow "Student 1"
|
||||
And I follow "Notes"
|
||||
# Student 1 has note from Teacher
|
||||
Then I should see "Teacher" in the "region-main" "region"
|
||||
And I should see "Student 1 needs to pick up his game"
|
||||
And I follow "Participants"
|
||||
And I follow "Student 2"
|
||||
And I follow "Notes"
|
||||
# Terrible way to verify the absence of a note..
|
||||
And I should not see "Teacher" in the "region-main" "region"
|
||||
+2
-1
@@ -54,7 +54,8 @@ if (!empty($users) && confirm_sesskey()) {
|
||||
$note->courseid = $id;
|
||||
$note->format = FORMAT_PLAIN;
|
||||
foreach ($users as $k => $v) {
|
||||
if (!$user = $DB->get_record('user', array('id' => $v)) || empty($contents[$k])) {
|
||||
$user = $DB->get_record('user', array('id' => $v));
|
||||
if (!$user || empty($contents[$k])) {
|
||||
continue;
|
||||
}
|
||||
$note->id = 0;
|
||||
|
||||
Reference in New Issue
Block a user