Merge branch 'MDL-69107-39-2' of git://github.com/andrewnicols/moodle into MOODLE_39_STABLE
This commit is contained in:
@@ -10,16 +10,12 @@ Feature: Manage data storage purposes
|
||||
And I open the action menu in "region-main" "region"
|
||||
And I choose "Purposes" in the open action menu
|
||||
And I press "Add purpose"
|
||||
And I set the field "Name" to "Purpose 1"
|
||||
And I set the field "Description" to "Purpose 1 description"
|
||||
And I click on ".form-autocomplete-downarrow" "css_element" in the "Lawful bases" "form_row"
|
||||
And I click on "Contract (GDPR Art. 6.1(b))" "list_item"
|
||||
And I click on "Legal obligation (GDPR Art 6.1(c))" "list_item"
|
||||
And I press the escape key
|
||||
And I click on ".form-autocomplete-downarrow" "css_element" in the "Sensitive personal data processing reasons" "form_row"
|
||||
And I click on "Explicit consent (GDPR Art. 9.2(a))" "list_item"
|
||||
And I press the escape key
|
||||
And I set the field "retentionperiodnumber" to "2"
|
||||
And I set the following fields to these values:
|
||||
| Name | Purpose 1 |
|
||||
| Description | Purpose 1 description |
|
||||
| Lawful bases | Contract (GDPR Art. 6.1(b)),Legal obligation (GDPR Art 6.1(c)) |
|
||||
| Sensitive personal data processing reasons | Explicit consent (GDPR Art. 9.2(a)) |
|
||||
| retentionperiodnumber | 2 |
|
||||
When I press "Save"
|
||||
Then I should see "Purpose 1" in the "List of data purposes" "table"
|
||||
And I should see "Contract (GDPR Art. 6.1(b))" in the "Purpose 1" "table_row"
|
||||
@@ -31,14 +27,13 @@ Feature: Manage data storage purposes
|
||||
Scenario: Update a data storage purpose
|
||||
Given I open the action menu in "Purpose 1" "table_row"
|
||||
And I choose "Edit" in the open action menu
|
||||
And I set the field "Name" to "Purpose 1 edited"
|
||||
And I set the field "Description" to "Purpose 1 description edited"
|
||||
And I click on "Legal obligation (GDPR Art 6.1(c))" "text" in the ".form-autocomplete-selection" "css_element"
|
||||
And I click on ".form-autocomplete-downarrow" "css_element" in the "Lawful bases" "form_row"
|
||||
And I click on "Vital interests (GDPR Art. 6.1(d))" "list_item"
|
||||
And I press the escape key
|
||||
And I set the field "retentionperiodnumber" to "3"
|
||||
And I click on "protected" "checkbox"
|
||||
And I set the following fields to these values:
|
||||
| Name | Purpose 1 edited |
|
||||
| Description | Purpose 1 description edited |
|
||||
| Lawful bases | Contract (GDPR Art. 6.1(b)), Vital interests (GDPR Art. 6.1(d)) |
|
||||
| Sensitive personal data processing reasons | Explicit consent (GDPR Art. 9.2(a)) |
|
||||
| retentionperiodnumber | 3 |
|
||||
| protected | 1 |
|
||||
When I press "Save changes"
|
||||
Then I should see "Purpose 1 edited" in the "List of data purposes" "table"
|
||||
And I should see "Purpose 1 description edited" in the "Purpose 1 edited" "table_row"
|
||||
|
||||
@@ -53,9 +53,7 @@ Feature: Manage plearning plan
|
||||
And I follow "Home"
|
||||
And I navigate to "Competencies > Learning plan templates" in site administration
|
||||
And I click on ".template-cohorts" "css_element" in the "Science template cohort" "table_row"
|
||||
And I click on ".form-autocomplete-downarrow" "css_element"
|
||||
And I click on "cohort plan" item in the autocomplete list
|
||||
And I press the escape key
|
||||
And I set the field "Select cohorts to sync" to "cohort plan"
|
||||
When I click on "Add cohorts" "button"
|
||||
Then I should see "2 learning plans were created."
|
||||
And I follow "Learning plan templates"
|
||||
|
||||
@@ -55,10 +55,7 @@ Feature: Manage analytics models
|
||||
And I choose "Create model" in the open action menu
|
||||
And I set the field "Enabled" to "Enable"
|
||||
And I select "__core_course__analytics__target__course_completion" from the "target" singleselect
|
||||
And I open the autocomplete suggestions list
|
||||
And I click on "Read actions amount" item in the autocomplete list
|
||||
And I open the autocomplete suggestions list
|
||||
And I click on "Any write action in the course" item in the autocomplete list
|
||||
And I set the field "Indicators" to "Read actions amount, Any write action in the course"
|
||||
And I select "__core__analytics__time_splitting__single_range" from the "timesplitting" singleselect
|
||||
And I press "Save changes"
|
||||
Then I should see "No predictions available yet" in the "Students at risk of not meeting the course completion conditions" "table_row"
|
||||
|
||||
@@ -38,7 +38,7 @@ Feature: Tagging courses
|
||||
And I expand all fieldsets
|
||||
Then I should see "Mathematics" in the ".form-autocomplete-selection" "css_element"
|
||||
And I set the following fields to these values:
|
||||
| Tags | Algebra |
|
||||
| Tags | Mathematics, Algebra |
|
||||
And I press "Save and display"
|
||||
And I am on "Course 2" course homepage
|
||||
And I navigate to "Edit settings" in current page administration
|
||||
@@ -75,7 +75,7 @@ Feature: Tagging courses
|
||||
And I navigate to "Course tags" in current page administration
|
||||
Then I should see "Mathematics" in the ".form-autocomplete-selection" "css_element"
|
||||
And I set the following fields to these values:
|
||||
| Tags | Algebra |
|
||||
| Tags | Mathematics, Algebra |
|
||||
And I press "Save changes"
|
||||
And I am on "Course 2" course homepage
|
||||
And I navigate to "Course tags" in current page administration
|
||||
|
||||
@@ -31,7 +31,7 @@ Feature: Rename roles within a course
|
||||
And "Learner" "button" should exist
|
||||
And I navigate to course participants
|
||||
And I set the field "type" in the "Filter 1" "fieldset" to "Roles"
|
||||
And I click on ".form-autocomplete-downarrow" "css_element" in the "Filter 1" "fieldset"
|
||||
And I open the autocomplete suggestions list in the "Filter 1" "fieldset"
|
||||
And I should see "Tutor" in the ".form-autocomplete-suggestions" "css_element"
|
||||
And I should see "Learner" in the ".form-autocomplete-suggestions" "css_element"
|
||||
And I should not see "Student" in the ".form-autocomplete-suggestions" "css_element"
|
||||
@@ -47,6 +47,6 @@ Feature: Rename roles within a course
|
||||
And "Learner" "button" should not exist
|
||||
And I navigate to course participants
|
||||
And I set the field "type" in the "Filter 1" "fieldset" to "Roles"
|
||||
And I click on ".form-autocomplete-downarrow" "css_element" in the "Filter 1" "fieldset"
|
||||
And I open the autocomplete suggestions list in the "Filter 1" "fieldset"
|
||||
And I should see "Non-editing teacher" in the ".form-autocomplete-suggestions" "css_element"
|
||||
And I should see "Student" in the ".form-autocomplete-suggestions" "css_element"
|
||||
|
||||
@@ -130,18 +130,17 @@ Feature: Teacher can search and enrol users one by one into the course
|
||||
Scenario: Searching for a non-existing user
|
||||
Given I navigate to course participants
|
||||
And I press "Enrol users"
|
||||
And I set the field "Select users" to "qwertyuiop"
|
||||
And I click on ".form-autocomplete-downarrow" "css_element" in the "Select users" "form_row"
|
||||
And I click on "Select users" "field"
|
||||
And I type "qwertyuiop"
|
||||
Then I should see "No suggestions"
|
||||
|
||||
@javascript
|
||||
Scenario: If there are less than 100 matching users, all are displayed for selection
|
||||
Given I navigate to course participants
|
||||
And I press "Enrol users"
|
||||
When I set the field "Select users" to "example.com"
|
||||
And I click on ".form-autocomplete-downarrow" "css_element" in the "Select users" "form_row"
|
||||
And I click on "Student 099" item in the autocomplete list
|
||||
Then I should see "Student 099"
|
||||
When I click on "Select users" "field"
|
||||
And I type "example.com"
|
||||
Then "Student 099" "autocomplete_suggestions" should exist
|
||||
|
||||
@javascript
|
||||
Scenario: If there are more than 100 matching users, inform there are too many.
|
||||
@@ -151,8 +150,8 @@ Feature: Teacher can search and enrol users one by one into the course
|
||||
| student101 | Student | 101 | student101@example.com |
|
||||
And I navigate to course participants
|
||||
And I press "Enrol users"
|
||||
When I set the field "Select users" to "example.com"
|
||||
And I click on ".form-autocomplete-downarrow" "css_element" in the "Select users" "form_row"
|
||||
When I click on "Select users" "field"
|
||||
And I type "example.com"
|
||||
Then I should see "Too many users (>100) to show"
|
||||
|
||||
@javascript
|
||||
@@ -161,8 +160,8 @@ Feature: Teacher can search and enrol users one by one into the course
|
||||
| maxusersperpage | 5 |
|
||||
And I navigate to course participants
|
||||
And I press "Enrol users"
|
||||
When I set the field "Select users" to "student00"
|
||||
And I click on ".form-autocomplete-downarrow" "css_element" in the "Select users" "form_row"
|
||||
When I click on "Select users" "field"
|
||||
And I type "student00"
|
||||
Then I should see "Too many users (>5) to show"
|
||||
|
||||
@javascript
|
||||
@@ -177,18 +176,18 @@ Feature: Teacher can search and enrol users one by one into the course
|
||||
When I am on "Course 001" course homepage
|
||||
Then I navigate to course participants
|
||||
And I press "Enrol users"
|
||||
When I set the field "Select users" to "student100@example.com"
|
||||
And I click on ".form-autocomplete-downarrow" "css_element" in the "Select users" "form_row"
|
||||
And I click on "Select users" "field"
|
||||
And I type "student100@example.com"
|
||||
Then I should see "student100@example.com, CITY1, GB, 1234567892, 1234567893, ABC1, ABC2"
|
||||
# Remove identity field in setting User policies
|
||||
And the following config values are set as admin:
|
||||
| showuseridentity | idnumber,email,phone1,phone2,department,institution |
|
||||
When I am on "Course 001" course homepage
|
||||
And I am on "Course 001" course homepage
|
||||
And I navigate to course participants
|
||||
And I press "Enrol users"
|
||||
When I set the field "Select users" to "student100@example.com"
|
||||
And I click on ".form-autocomplete-downarrow" "css_element" in the "Select users" "form_row"
|
||||
Then I should see "student100@example.com, 1234567892, 1234567893, ABC1, ABC2"
|
||||
And I click on "Select users" "field"
|
||||
And I type "student100@example.com"
|
||||
And I should see "student100@example.com, 1234567892, 1234567893, ABC1, ABC2"
|
||||
|
||||
# The following tests are commented out as a result of MDL-66339.
|
||||
# @javascript
|
||||
|
||||
@@ -50,15 +50,12 @@ Feature: Organize students into groups
|
||||
And the "members" select box should not contain "Student 1 (student1@example.com)"
|
||||
And I navigate to course participants
|
||||
And I set the field "type" in the "Filter 1" "fieldset" to "Groups"
|
||||
And I click on ".form-autocomplete-downarrow" "css_element" in the "Filter 1" "fieldset"
|
||||
And I click on "Group 1" "list_item"
|
||||
And I set the field "Type or select..." in the "Filter 1" "fieldset" to "Group 1"
|
||||
And I click on "Apply filters" "button"
|
||||
And I should see "Student 0"
|
||||
And I should see "Student 1"
|
||||
And I should not see "Student 2"
|
||||
And I click on "Group 1" "autocomplete_selection"
|
||||
And I click on ".form-autocomplete-downarrow" "css_element" in the "Filter 1" "fieldset"
|
||||
And I click on "Group 2" "list_item"
|
||||
And I set the field "Type or select..." in the "Filter 1" "fieldset" to "Group 2"
|
||||
And I click on "Apply filters" "button"
|
||||
And I should see "Student 2"
|
||||
And I should see "Student 3"
|
||||
|
||||
@@ -46,8 +46,7 @@ Feature: The description of a group can be viewed by students and teachers
|
||||
And I should see "Description for Group A"
|
||||
And ".groupinfobox" "css_element" should exist
|
||||
And I set the field "type" in the "Filter 1" "fieldset" to "Groups"
|
||||
And I click on ".form-autocomplete-downarrow" "css_element" in the "Filter 1" "fieldset"
|
||||
And I click on "Group B" "list_item"
|
||||
And I set the field "Type or select..." in the "Filter 1" "fieldset" to "Group B"
|
||||
And I click on "Apply filters" "button"
|
||||
And I click on "Student 2" "link" in the "participants" "table"
|
||||
And I click on "Group B" "link"
|
||||
@@ -96,8 +95,7 @@ Feature: The description of a group can be viewed by students and teachers
|
||||
And I should see "Description for Group A"
|
||||
And ".groupinfobox" "css_element" should exist
|
||||
And I set the field "type" in the "Filter 1" "fieldset" to "Groups"
|
||||
And I click on ".form-autocomplete-downarrow" "css_element" in the "Filter 1" "fieldset"
|
||||
And I click on "Group B" "list_item"
|
||||
And I set the field "Type or select..." in the "Filter 1" "fieldset" to "Group B"
|
||||
And I click on "Apply filters" "button"
|
||||
And I click on "Student 2" "link" in the "participants" "table"
|
||||
And I click on "Group B" "link"
|
||||
|
||||
+1
-1
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1173,6 +1173,9 @@ function($, log, str, templates, notification, LoadingIcon) {
|
||||
originalSelect.hide();
|
||||
var container = originalSelect.parent();
|
||||
|
||||
// Ensure that the data-fieldtype is set for behat.
|
||||
$(input).find('input').attr('data-fieldtype', 'autocomplete');
|
||||
|
||||
container.append(layout);
|
||||
container.find('[data-region="form_autocomplete-input"]').replaceWith(input);
|
||||
container.find('[data-region="form_autocomplete-suggestions"]').replaceWith(suggestions);
|
||||
|
||||
@@ -101,7 +101,6 @@ class behat_field_manager {
|
||||
* @return behat_form_field
|
||||
*/
|
||||
public static function get_field_instance($type, NodeElement $fieldnode, Session $session) {
|
||||
|
||||
global $CFG;
|
||||
|
||||
// If the field is not part of a moodleform, we should still try to find out
|
||||
@@ -152,6 +151,10 @@ class behat_field_manager {
|
||||
$type = $fieldnode->getAttribute('type');
|
||||
switch ($type) {
|
||||
case 'text':
|
||||
if ($fieldtype = $fieldnode->getAttribute('data-fieldtype')) {
|
||||
return self::normalise_fieldtype($fieldtype);
|
||||
}
|
||||
return 'text';
|
||||
case 'password':
|
||||
case 'email':
|
||||
case 'file':
|
||||
|
||||
@@ -48,43 +48,75 @@ class behat_form_autocomplete extends behat_form_text {
|
||||
throw new coding_exception('Setting the value of an autocomplete field requires javascript.');
|
||||
}
|
||||
|
||||
// Set the value of the autocomplete's input.
|
||||
// If this autocomplete offers suggestions then these should be fetched by setting the value and waiting for the
|
||||
// JS to finish fetching those suggestions.
|
||||
// Clear all current selections.
|
||||
$rootnode = $this->field->getParent()->getParent();
|
||||
$selections = $rootnode->findAll('css', '.form-autocomplete-selection [role=option]');
|
||||
foreach (array_reverse($selections) as $selection) {
|
||||
$selection->click();
|
||||
$this->wait_for_pending_js();
|
||||
}
|
||||
|
||||
$istagelement = $this->field->hasAttribute('data-tags') && $this->field->getAttribute('data-tags');
|
||||
$allowscreation = $this->field->hasAttribute('data-tags') && !empty($this->field->getAttribute('data-tags'));
|
||||
$hasmultiple = $this->field->hasAttribute('data-multiple') && !empty($this->field->getAttribute('data-multiple'));
|
||||
|
||||
if ($istagelement && false !== strpos($value, ',')) {
|
||||
// Commas have a special meaning as a value separator in 'tag' autocomplete elements.
|
||||
if ($hasmultiple && false !== strpos($value, ',')) {
|
||||
// Commas have a special meaning as a value separator in 'multiple' autocomplete elements.
|
||||
// To handle this we break the value up by comma, and enter it in chunks.
|
||||
$values = explode(',', $value);
|
||||
|
||||
while ($value = array_shift($values)) {
|
||||
$this->set_value($value);
|
||||
$this->add_value(trim($value), $allowscreation);
|
||||
}
|
||||
} else {
|
||||
$this->field->setValue($value);
|
||||
$this->wait_for_pending_js();
|
||||
|
||||
// If the autocomplete found suggestions, then it will have:
|
||||
// 1) marked itself as expanded; and
|
||||
// 2) have an aria-selected suggestion in the list.
|
||||
$expanded = $this->field->getAttribute('aria-expanded');
|
||||
$suggestion = $this->field->getParent()->find('css', '.form-autocomplete-suggestions > [aria-selected="true"]');
|
||||
|
||||
if ($expanded && null !== $suggestion) {
|
||||
// A suggestion was found.
|
||||
// Click on the first item in the list.
|
||||
$suggestion->click();
|
||||
} else {
|
||||
// Press the return key to create a new tag.
|
||||
behat_base::type_keys($this->session, [behat_keys::ENTER]);
|
||||
}
|
||||
$this->wait_for_pending_js();
|
||||
|
||||
// Press the escape to close the autocomplete suggestions list.
|
||||
behat_base::type_keys($this->session, [behat_keys::ESCAPE]);
|
||||
$this->wait_for_pending_js();
|
||||
$this->add_value(trim($value), $allowscreation);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Add a value to the autocomplete.
|
||||
*
|
||||
* @param string $value
|
||||
* @param bool $allowscreation
|
||||
*/
|
||||
protected function add_value(string $value, bool $allowscreation): void {
|
||||
$value = trim($value);
|
||||
|
||||
// Click into the field.
|
||||
$this->field->click();
|
||||
|
||||
// Remove any existing text.
|
||||
do {
|
||||
behat_base::type_keys($this->session, [behat_keys::BACKSPACE, behat_keys::DELETE]);
|
||||
} while (strlen($this->field->getValue()) > 0);
|
||||
$this->wait_for_pending_js();
|
||||
|
||||
// Type in the new value.
|
||||
behat_base::type_keys($this->session, str_split($value));
|
||||
$this->wait_for_pending_js();
|
||||
|
||||
// If the autocomplete found suggestions, then it will have:
|
||||
// 1) marked itself as expanded; and
|
||||
// 2) have an aria-selected suggestion in the list.
|
||||
$expanded = $this->field->getAttribute('aria-expanded');
|
||||
$suggestion = $this->field->getParent()->getParent()->find('css', '.form-autocomplete-suggestions > [aria-selected="true"]');
|
||||
|
||||
if ($expanded && null !== $suggestion) {
|
||||
// A suggestion was found.
|
||||
// Click on the first item in the list.
|
||||
$suggestion->click();
|
||||
} else if ($allowscreation) {
|
||||
// Press the return key to create a new entry.
|
||||
behat_base::type_keys($this->session, [behat_keys::ENTER]);
|
||||
} else {
|
||||
throw new \InvalidArgumentException(
|
||||
"Unable to find '{$value}' in the list of options, and unable to create a new option"
|
||||
);
|
||||
}
|
||||
|
||||
$this->wait_for_pending_js();
|
||||
|
||||
// Press the escape to close the autocomplete suggestions list.
|
||||
behat_base::type_keys($this->session, [behat_keys::ESCAPE]);
|
||||
$this->wait_for_pending_js();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -37,13 +37,35 @@
|
||||
}}
|
||||
{{#showSuggestions}}
|
||||
<div class="d-md-inline-block mr-md-2 position-relative">
|
||||
<input type="text" id="{{inputId}}" class="form-control" list="{{suggestionsId}}" placeholder="{{placeholder}}" role="combobox" aria-expanded="false" autocomplete="off" autocorrect="off" autocapitalize="off" aria-autocomplete="list" aria-owns="{{suggestionsId}} {{selectionId}}" {{#tags}}data-tags="1"{{/tags}}/>
|
||||
<input type="text"{{!
|
||||
}} id="{{inputId}}"{{!
|
||||
}} class="form-control"{{!
|
||||
}} list="{{suggestionsId}}"{{!
|
||||
}} placeholder="{{placeholder}}"{{!
|
||||
}} role="combobox"{{!
|
||||
}} aria-expanded="false"{{!
|
||||
}} autocomplete="off"{{!
|
||||
}} autocorrect="off"{{!
|
||||
}} autocapitalize="off"{{!
|
||||
}} aria-autocomplete="list"{{!
|
||||
}} aria-owns="{{suggestionsId}} {{selectionId}}"{{!
|
||||
}} {{#tags}}data-tags="1"{{/tags}}{{!
|
||||
}} {{#multiple}}data-multiple="multiple"{{/multiple}}{{!
|
||||
}}>
|
||||
<span class="form-autocomplete-downarrow position-absolute p-1" id="{{downArrowId}}">▼</span>
|
||||
</div>
|
||||
{{/showSuggestions}}
|
||||
{{^showSuggestions}}
|
||||
<div class="d-md-inline-block mr-md-2">
|
||||
<input type="text" id="{{inputId}}" class="form-control" placeholder="{{placeholder}}" role="textbox" aria-owns="{{selectionId}}" {{#tags}}data-tags="1"{{/tags}}/>
|
||||
<input type="text"{{!
|
||||
}} id="{{inputId}}"{{!
|
||||
}} class="form-control"{{!
|
||||
}} placeholder="{{placeholder}}"{{!
|
||||
}} role="textbox"{{!
|
||||
}} aria-owns="{{selectionId}}"{{!
|
||||
}} {{#tags}}data-tags="1"{{/tags}}{{!
|
||||
}} {{#multiple}}data-multiple="multiple"{{/multiple}}{{!
|
||||
}}>
|
||||
</div>
|
||||
{{/showSuggestions}}
|
||||
|
||||
|
||||
@@ -693,18 +693,21 @@ class behat_forms extends behat_base {
|
||||
$xpathtarget = "//ul[@class='form-autocomplete-suggestions']//*[contains(concat('|', string(.), '|'),'|" . $item . "|')]";
|
||||
|
||||
$this->execute('behat_general::i_click_on', [$xpathtarget, 'xpath_element']);
|
||||
|
||||
$this->execute('behat_general::i_press_key_in_element', ['13', 'body', 'xpath_element']);
|
||||
}
|
||||
|
||||
/**
|
||||
* Open the auto-complete suggestions list (Assuming there is only one on the page.).
|
||||
*
|
||||
* @Given /^I open the autocomplete suggestions list$/
|
||||
* @Given I open the autocomplete suggestions list
|
||||
* @Given I open the autocomplete suggestions list in the :container :containertype
|
||||
*/
|
||||
public function i_open_the_autocomplete_suggestions_list() {
|
||||
public function i_open_the_autocomplete_suggestions_list($container = null, $containertype = null) {
|
||||
$csstarget = ".form-autocomplete-downarrow";
|
||||
$this->execute('behat_general::i_click_on', [$csstarget, 'css_element']);
|
||||
if ($container && $containertype) {
|
||||
$this->execute('behat_general::i_click_on', [$csstarget, 'css_element', $container, $containertype]);
|
||||
} else {
|
||||
$this->execute('behat_general::i_click_on', [$csstarget, 'css_element']);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -94,7 +94,6 @@ Feature: Users can view and search database entries
|
||||
| Test field name | Student original entry tagged |
|
||||
| Test field 2 name | Student original entry tagged 2 |
|
||||
And I set the field with xpath "//div[@class='datatagcontrol']//input[@type='text']" to "Tag1"
|
||||
And I click on "[data-value='Tag1']" "css_element"
|
||||
And I press "Save and view"
|
||||
And I should see "Student original entry"
|
||||
And I should see "Tag1" in the "div.tag_list" "css_element"
|
||||
|
||||
@@ -136,8 +136,7 @@ Feature: Mapping courses in a feedback
|
||||
And I am on site homepage
|
||||
And I follow "Course feedback"
|
||||
And I follow "Map feedback to courses"
|
||||
And I set the field "Courses" to "Course 2"
|
||||
And I set the field "Courses" to "Course 3"
|
||||
And I set the field "Courses" to "Course 2, Course 3"
|
||||
And I press "Save changes"
|
||||
And I should see "Course mapping has been changed"
|
||||
And I log out
|
||||
@@ -224,7 +223,6 @@ Feature: Mapping courses in a feedback
|
||||
And I should see "1 (33.33 %)" in the "option d" "table_row"
|
||||
And I should see "2 (66.67 %)" in the "option e" "table_row"
|
||||
And I should see "0" in the "option f" "table_row"
|
||||
And I log out
|
||||
|
||||
Scenario: Site feedback deletion hides feedback block completely
|
||||
When I log in as "manager"
|
||||
@@ -239,4 +237,3 @@ Feature: Mapping courses in a feedback
|
||||
Then "Feedback" "block" should not exist
|
||||
And I am on "Course 1" course homepage
|
||||
And "Feedback" "block" should not exist
|
||||
And I log out
|
||||
|
||||
@@ -130,7 +130,6 @@ Feature: The forum search allows users to perform advanced searches for forum po
|
||||
And I press "Search forums"
|
||||
And I should see "Advanced search"
|
||||
And I set the field "Is tagged with" to "SearchedTag"
|
||||
And I press the enter key
|
||||
When I press "Search forums"
|
||||
Then I should see "My subject"
|
||||
And I should not see "Your subjective"
|
||||
|
||||
@@ -47,7 +47,6 @@ Feature: See the competencies for an activity
|
||||
Scenario: Go to the competency breakdown report
|
||||
When I navigate to "Reports > Competency breakdown" in current page administration
|
||||
And I set the field "Filter competencies by resource or activity" to "PageName1"
|
||||
And I press the enter key
|
||||
Then I should see "Test-Comp1"
|
||||
And I should not see "Test-Comp2"
|
||||
And I click on "Not rated" "link"
|
||||
@@ -55,7 +54,6 @@ Feature: See the competencies for an activity
|
||||
And I set the field "Rating" to "A"
|
||||
And I click on "Rate" "button" in the ".competency-grader" "css_element"
|
||||
And I click on "Close" "button"
|
||||
And I set the field "Filter competencies by resource or activity" to "No filters applied"
|
||||
And I press the enter key
|
||||
And I click on "PageName1" "autocomplete_selection"
|
||||
And I should see "Test-Comp1"
|
||||
And I should see "Test-Comp2"
|
||||
|
||||
@@ -25,9 +25,8 @@ Feature: Edit user roles
|
||||
And I am on "Course 1" course homepage
|
||||
And I navigate to course participants
|
||||
And I click on "Student 1's role assignments" "link"
|
||||
And I click on ".form-autocomplete-downarrow" "css_element" in the "student1" "table_row"
|
||||
And I click on "Non-editing teacher" item in the autocomplete list
|
||||
And I press the escape key
|
||||
And I type "Non-editing teacher"
|
||||
And I press the enter key
|
||||
When I click on "Save changes" "link"
|
||||
Then I should see "Student, Non-editing teacher" in the "Student 1" "table_row"
|
||||
|
||||
@@ -37,7 +36,6 @@ Feature: Edit user roles
|
||||
And I am on "Course 1" course homepage
|
||||
And I navigate to course participants
|
||||
And I click on "Student 1's role assignments" "link"
|
||||
And I click on ".form-autocomplete-selection [aria-selected=true]" "css_element"
|
||||
And I press the escape key
|
||||
And I click on "Student" "autocomplete_selection"
|
||||
When I click on "Save changes" "link"
|
||||
Then I should see "No roles" in the "Student 1" "table_row"
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -76,8 +76,7 @@ Feature: Course participants can be filtered to display all the users
|
||||
And I navigate to course participants
|
||||
And I set the field "Match" in the "Filter 1" "fieldset" to "All"
|
||||
And I set the field "type" in the "Filter 1" "fieldset" to "Roles"
|
||||
And I click on ".form-autocomplete-downarrow" "css_element" in the "Filter 1" "fieldset"
|
||||
And I click on "Student" "list_item"
|
||||
And I set the field "Type or select..." in the "Filter 1" "fieldset" to "Student"
|
||||
When I click on "Apply filters" "button"
|
||||
Then I should see "24 participants found"
|
||||
And I should see "Show all 24"
|
||||
@@ -94,15 +93,14 @@ Feature: Course participants can be filtered to display all the users
|
||||
And I navigate to course participants
|
||||
And I set the field "Match" in the "Filter 1" "fieldset" to "All"
|
||||
And I set the field "type" in the "Filter 1" "fieldset" to "Roles"
|
||||
And I click on ".form-autocomplete-downarrow" "css_element" in the "Filter 1" "fieldset"
|
||||
And I click on "Student" "list_item"
|
||||
And I set the field "Type or select..." in the "Filter 1" "fieldset" to "Student"
|
||||
When I click on "Apply filters" "button"
|
||||
Then I should see "24 participants found"
|
||||
And I should see "Show all 24"
|
||||
Then I should see "23 participants found"
|
||||
And I should see "Show all 23"
|
||||
And I should not see "Show 20 per page"
|
||||
And I click on "Show all 24" "link"
|
||||
And I click on "Show all 23" "link"
|
||||
And I should see "Show 20 per page"
|
||||
And I should not see "Show all 24"
|
||||
And I should not see "Show all 23"
|
||||
|
||||
@javascript
|
||||
Scenario: Apply one value for more than one filter and show all matching users
|
||||
@@ -113,12 +111,10 @@ Feature: Course participants can be filtered to display all the users
|
||||
And I set the field "Match" to "All"
|
||||
And I set the field "Match" in the "Filter 1" "fieldset" to "Any"
|
||||
And I set the field "type" in the "Filter 1" "fieldset" to "Roles"
|
||||
And I click on ".form-autocomplete-downarrow" "css_element" in the "Filter 1" "fieldset"
|
||||
And I click on "Student" "list_item"
|
||||
And I set the field "Type or select..." in the "Filter 1" "fieldset" to "Student"
|
||||
And I set the field "Match" in the "Filter 2" "fieldset" to "Any"
|
||||
And I set the field "type" in the "Filter 2" "fieldset" to "Status"
|
||||
And I click on ".form-autocomplete-downarrow" "css_element" in the "Filter 2" "fieldset"
|
||||
And I click on "Active" "list_item"
|
||||
And I set the field "Type or select..." in the "Filter 2" "fieldset" to "Active"
|
||||
When I click on "Apply filters" "button"
|
||||
And I click on "Show all 23" "link"
|
||||
Then I should see "23 participants found"
|
||||
|
||||
@@ -79,6 +79,6 @@ Feature: Users' names are displayed across the site according to the user policy
|
||||
And I am on "Course 1" course homepage
|
||||
When I navigate to course participants
|
||||
And I press "Enrol users"
|
||||
And I set the field "Select users" to "three@example.com"
|
||||
And I click on ".form-autocomplete-downarrow" "css_element" in the "Select users" "form_row"
|
||||
And I click on "Select users" "field"
|
||||
And I type "three@example.com"
|
||||
Then I should see "Sarah, Sev, Siobhan, Desforges"
|
||||
|
||||
@@ -60,8 +60,7 @@ Feature: View course participants groups
|
||||
And I should see "Student 1x"
|
||||
And I should see "Student 2x"
|
||||
And I set the field "type" in the "Filter 1" "fieldset" to "Groups"
|
||||
And I click on ".form-autocomplete-downarrow" "css_element" in the "Filter 1" "fieldset"
|
||||
And I click on "Group B" "list_item"
|
||||
And I set the field "Type or select..." in the "Filter 1" "fieldset" to "Group B"
|
||||
And I click on "Apply filters" "button"
|
||||
And I should see "Student 3x"
|
||||
And I should see "Student 4x"
|
||||
|
||||
Reference in New Issue
Block a user