MDL-70148 behat: Update steps for keyboard
authorAndrew Nicols <andrew@nicols.co.uk>
Mon, 22 Jun 2020 02:39:57 +0000 (10:39 +0800)
committerAndrew Nicols <andrew@nicols.co.uk>
Tue, 17 Nov 2020 07:14:43 +0000 (15:14 +0800)
28 files changed:
admin/tool/dataprivacy/tests/behat/manage_data_requests.feature
admin/tool/dataprivacy/tests/behat/manage_purposes.feature
admin/tool/lp/tests/behat/course_competencies.feature
admin/tool/lp/tests/behat/plan_crud.feature
blocks/site_main_menu/tests/behat/edit_activities.feature
blocks/social_activities/tests/behat/edit_activities.feature
cohort/tests/behat/add_cohort.feature
course/format/topics/tests/behat/edit_delete_sections.feature
course/format/weeks/tests/behat/edit_delete_sections.feature
course/tests/behat/activities_edit_name.feature
customfield/tests/behat/edit_categories.feature
enrol/tests/behat/add_to_group.feature
grade/report/grader/tests/behat/ajax_grader.feature
lib/behat/form_field/behat_form_autocomplete.php
lib/tests/behat/action_menu.feature
lib/tests/behat/behat_general.php
message/tests/behat/message_manage_preferences.feature
mod/forum/tests/behat/advanced_search.feature
mod/lti/tests/behat/renametool.feature
mod/quiz/tests/behat/editing_add_from_question_bank.feature
mod/quiz/tests/behat/editing_set_marks_no_attempts.feature
mod/quiz/tests/behat/editing_set_marks_with_attempts.feature
question/tests/behat/filter_questions_by_tag.feature
report/competency/tests/behat/breakdown_by_activity.feature
tag/tests/behat/collections.feature
tag/tests/behat/edit_tag.feature
user/tests/behat/edit_user_roles.feature
user/tests/behat/filter_participants.feature

index bf839ed..0c0d943 100644 (file)
@@ -46,7 +46,7 @@ Feature: Manage data requests
     And I open the action menu in "John Doe" "table_row"
     And I should see "View the request"
     But I should not see "Mark as complete"
-    And I press key "27" in ".moodle-actionmenu" "css_element"
+    And I press the escape key
     And I open the action menu in "Jane Doe" "table_row"
     And I choose "Mark as complete" in the open action menu
     And I should see "Do you really want to mark this user enquiry as complete?"
index dcd0c2a..6619bda 100644 (file)
@@ -15,10 +15,10 @@ Feature: Manage data storage purposes
     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 key "27" in the field "Lawful bases"
+    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 key "27" in the field "Sensitive personal data processing reasons"
+    And I press the escape key
     And I set the field "retentionperiodnumber" to "2"
     When I press "Save"
     Then I should see "Purpose 1" in the "List of data purposes" "table"
@@ -36,7 +36,7 @@ Feature: Manage data storage purposes
     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 key "27" in the field "Lawful bases"
+    And I press the escape key
     And I set the field "retentionperiodnumber" to "3"
     And I click on "protected" "checkbox"
     When I press "Save changes"
index bb57d22..b3caddc 100644 (file)
@@ -53,11 +53,11 @@ Feature: See the competencies for an activity on the course competencies page.
     Then I should see "Test-Comp1"
     And I should see "Test-Comp2"
     And I set the field "Filter competencies by resource or activity" to "PageName1"
-    And I press key "13" in the field "Filter competencies by resource or activity"
+    And I press the enter key
     And I should see "Test-Comp1"
     And I should not see "Test-Comp2"
     And I set the field "Filter competencies by resource or activity" to "PageName2"
-    And I press key "13" in the field "Filter competencies by resource or activity"
+    And I press the enter key
     And I should not see "Test-Comp1"
     And I should not see "Test-Comp2"
     And I should see "No competencies have been linked to this activity or resource."
index 0fbbfd1..55c085a 100644 (file)
@@ -30,7 +30,7 @@ Feature: Manage plearning plan
     And I click on ".template-userplans" "css_element" in the "Science template" "table_row"
     And I open the autocomplete suggestions list
     And I click on "Admin User" item in the autocomplete list
-    And I press key "27" in the field "Select users to create learning plans for"
+    And I press the escape key
     When I click on "Create learning plans" "button"
     Then I should see "A learning plan was created"
     And I should see "Admin User" in the "Science template" "table_row"
@@ -55,7 +55,7 @@ Feature: Manage plearning plan
     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 key "27" in the field "Select cohorts to sync"
+    And I press the escape key
     When I click on "Add cohorts" "button"
     Then I should see "2 learning plans were created."
     And I follow "Learning plan templates"
index 3b5d632..0f6d8c2 100644 (file)
@@ -14,7 +14,7 @@ Feature: Edit activities in main menu block
       | Forum name | My forum name |
     And I click on "Edit title" "link" in the "My forum name" activity in site main menu block
     And I set the field "New name for activity My forum name" to "New forum name"
-    And I press key "13" in the field "New name for activity My forum name"
+    And I press the enter key
     Then I should not see "My forum name"
     And I should see "New forum name"
     And I follow "New forum name"
index 2cf87a5..984b731 100644 (file)
@@ -27,7 +27,7 @@ Feature: Edit activities in social activities block
     And I press "Save and return to course"
     And I click on "Edit title" "link" in the "My forum name" activity in social activities block
     And I set the field "New name for activity My forum name" to "New forum name"
-    And I press key "13" in the field "New name for activity My forum name"
+    And I press the enter key
     Then I should not see "My forum name" in the "Social activities" "block"
     And I should see "New forum name"
     And I follow "New forum name"
index b93d41f..9bc5469 100644 (file)
@@ -64,7 +64,7 @@ Feature: Add cohorts of users
     When I follow "Cohorts"
     And I click on "Edit cohort name" "link" in the "Test cohort name" "table_row"
     And I set the field "New name for cohort Test cohort name" to "Students cohort"
-    And I press key "13" in the field "New name for cohort Test cohort name"
+    And I press the enter key
     Then I should not see "Test cohort name"
     And I should see "Students cohort"
     And I follow "Cohorts"
index e55b58d..a1e205b 100644 (file)
@@ -55,7 +55,7 @@ Feature: Sections can be edited and deleted in topics format
   Scenario: Inline edit section name in topics format
     When I click on "Edit topic name" "link" in the "li#section-1" "css_element"
     And I set the field "New name for topic Topic 1" to "Midterm evaluation"
-    And I press key "13" in the field "New name for topic Topic 1"
+    And I press the enter key
     Then I should not see "Topic 1" in the "region-main" "region"
     And "New name for topic" "field" should not exist
     And I should see "Midterm evaluation" in the "li#section-1" "css_element"
index a51a803..5d8ff89 100644 (file)
@@ -56,7 +56,7 @@ Feature: Sections can be edited and deleted in weeks format
   Scenario: Inline edit section name in weeks format
     When I click on "Edit week name" "link" in the "li#section-1" "css_element"
     And I set the field "New name for week 1 May - 7 May" to "Midterm evaluation"
-    And I press key "13" in the field "New name for week 1 May - 7 May"
+    And I press the enter key
     Then I should not see "1 May - 7 May" in the "region-main" "region"
     And "New name for week" "field" should not exist
     And I should see "Midterm evaluation" in the "li#section-1" "css_element"
index 29e8911..7372c17 100644 (file)
@@ -23,7 +23,7 @@ Feature: Edit activity name in-place
     # Rename activity
     And I click on "Edit title" "link" in the "//div[contains(@class,'activityinstance') and contains(.,'Test forum name')]" "xpath_element"
     And I set the field "New name for activity Test forum name" to "Good news"
-    And I press key "13" in the field "New name for activity Test forum name"
+    And I press the enter key
     Then I should not see "Test forum name" in the ".course-content" "css_element"
     And "New name for activity Test forum name" "field" should not exist
     And I should see "Good news"
@@ -33,11 +33,10 @@ Feature: Edit activity name in-place
     # Cancel renaming
     And I click on "Edit title" "link" in the "//div[contains(@class,'activityinstance') and contains(.,'Good news')]" "xpath_element"
     And I set the field "New name for activity Good news" to "Terrible news"
-    And I press key "27" in the field "New name for activity Good news"
+    And I press the escape key
     And "New name for activity Good news" "field" should not exist
     And I should see "Good news"
     And I should not see "Terrible news"
     And I am on "Course 1" course homepage
     And I should see "Good news"
     And I should not see "Terrible news"
-    And I log out
index 5fb4802..2b88046 100644 (file)
@@ -22,7 +22,7 @@ Feature: Managers can manage categories for course custom fields
     And I navigate to "Courses > Course custom fields" in site administration
     And I click on "Edit category name" "link" in the "//div[contains(@class,'categoryinstance') and contains(.,'Category for test')]" "xpath_element"
     And I set the field "New value for Category for test" to "Good fields"
-    And I press key "13" in the field "New value for Category for test"
+    And I press the enter key
     Then I should not see "Category for test" in the "#customfield_catlist" "css_element"
     And "New value for Category for test" "field" should not exist
     And I should see "Good fields" in the "#customfield_catlist" "css_element"
index 0a7aab9..e44f9c2 100644 (file)
@@ -32,6 +32,6 @@ Feature: Users can be added to multiple groups at once
     And I click on "Group 1" item in the autocomplete list
     And I click on ".form-autocomplete-downarrow" "css_element" in the "student1" "table_row"
     And I click on "Group 2" item in the autocomplete list
-    And I press key "27" in the field "Edit groups for \"Student 1\""
+    And I press the escape key
     And I click on "Save changes" "link" in the "student1" "table_row"
     Then I should see "Group 1, Group 2"
index 358f9a5..072c5f0 100644 (file)
@@ -59,18 +59,18 @@ Feature: Using the AJAX grading feature of Grader report to update grades and fe
     Then I should see a grade field for "Student 2" and grade item "Item VU"
     And I should not see a feedback field for "Student 2" and grade item "Item VU"
     And I set the field "ajaxgrade" to "33"
-    And I press key "13" in the field "ajaxgrade"
+    And I press the enter key
     And I should not see a grade field for "Student 2" and grade item "Item VU"
     And I should not see a feedback field for "Student 2" and grade item "Item VU"
     And I click on student "Student 3" for grade item "Item VU"
     And I set the field "ajaxgrade" to "50"
-    And I press key "13" in the field "ajaxgrade"
+    And I press the enter key
     And I click on student "Student 3" for grade item "Item 1"
     And I set the field "ajaxgrade" to "80"
-    And I press key "13" in the field "ajaxgrade"
+    And I press the enter key
     And I click on student "Student 3" for grade item "Item SU"
     And I set the field "ajaxgrade" to "Very good"
-    And I press key "13" in the field "ajaxgrade"
+    And I press the enter key
     And the following should exist in the "user-grades" table:
       | -1-                | -6-      | -7-      | -13-      | -16-         |
       | Student 2          | -        | 33.00    | -         | 33.00        |
@@ -88,7 +88,7 @@ Feature: Using the AJAX grading feature of Grader report to update grades and fe
     And I should see a grade field for "Student 1" and grade item "Course total"
     And I should not see a feedback field for "Student 1" and grade item "Course total"
     And I set the field "ajaxgrade" to "90"
-    And I press key "13" in the field "ajaxgrade"
+    And I press the enter key
     And the following should exist in the "user-grades" table:
       | -1-                | -16-      |
       | Student 1          | 90.00     |
@@ -112,7 +112,7 @@ Feature: Using the AJAX grading feature of Grader report to update grades and fe
     And I should see a feedback field for "Student 2" and grade item "Item VU"
     And I set the field "ajaxgrade" to "33"
     And I set the field "ajaxfeedback" to "Student 2 VU feedback"
-    And I press key "13" in the field "ajaxfeedback"
+    And I press the enter key
     And I click on student "Student 3" for grade item "Item VL"
     And I should not see a grade field for "Student 3" and grade item "Item VL"
     And I should not see a feedback field for "Student 3" and grade item "Item VL"
@@ -120,11 +120,11 @@ Feature: Using the AJAX grading feature of Grader report to update grades and fe
     And I should not see a grade field for "Student 3" and grade item "Item TU"
     And I should see a feedback field for "Student 3" and grade item "Item TU"
     And I set the field "ajaxfeedback" to "Student 3 TU feedback"
-    And I press key "13" in the field "ajaxfeedback"
+    And I press the enter key
     And I click on student "Student 2" for grade item "Item SU"
     And I set the field "ajaxgrade" to "Very good"
     And I set the field "ajaxfeedback" to "Student 2 SU feedback"
-    And I press key "13" in the field "ajaxfeedback"
+    And I press the enter key
     # Reload grader report:
     And I navigate to "View > User report" in the course gradebook
     And I navigate to "View > Grader report" in the course gradebook
@@ -148,7 +148,7 @@ Feature: Using the AJAX grading feature of Grader report to update grades and fe
     Then I should see a grade field for "Student 2" and grade item "Item VU"
     And I should see a feedback field for "Student 2" and grade item "Item VU"
     And I set the field "ajaxgrade" to "33"
-    And I press key "13" in the field "ajaxgrade"
+    And I press the enter key
     And I click on student "Student 2" for grade item "Course total"
     And I should not see a grade field for "Student 3" and grade item "Course total"
     And I should not see a feedback field for "Student 3" and grade item "Course total"
index 8b1d390..238bbee 100644 (file)
@@ -78,14 +78,12 @@ class behat_form_autocomplete extends behat_form_text {
                 $suggestion->click();
             } else {
                 // Press the return key to create a new tag.
-                // Note: We cannot use $this->key_press() because the keyPress action, in combination with the keyDown
-                // submits the form.
-                $this->field->keyDown(13);
-                $this->field->keyUp(13);
+                behat_base::type_keys($this->session, [behat_keys::ENTER]);
             }
-
             $this->wait_for_pending_js();
-            $this->key_press(27);
+
+            // Press the escape to close the autocomplete suggestions list.
+            behat_base::type_keys($this->session, [behat_keys::ESCAPE]);
             $this->wait_for_pending_js();
         }
     }
index 9946041..06458e2 100644 (file)
@@ -12,7 +12,7 @@ Feature: Navigate action menu
     # The menu should now be visible.
     Then ".usermenu [role='menu']" "css_element" should be visible
     # Press down arrow.
-    And I press key "40" in "#actionmenuaction-1" "css_element"
+    And I press the down key
     # The menu should still be visible.
     And ".usermenu [role='menu']" "css_element" should be visible
 
index 469fe0d..dacbabc 100644 (file)
@@ -1898,12 +1898,8 @@ EOF;
         }
         // Gets the node based on the requested selector type and locator.
         $node = $this->get_selected_node($selectortype, $element);
-        $driver = $this->getSession()->getDriver();
-        if ($driver instanceof \Moodle\BehatExtension\Driver\MoodleSelenium2Driver) {
-            $driver->post_key("\xEE\x80\x84", $node->getXpath());
-        } else {
-            $driver->keyDown($node->getXpath(), "\t");
-        }
+        $this->execute('behat_general::i_click_on', [$node, 'NodeElement']);
+        $this->execute('behat_general::i_press_named_key', ['', 'tab']);
     }
 
     /**
@@ -2000,12 +1996,11 @@ EOF;
      * @throws DriverException
      */
     public function i_manually_press_tab($shift = '') {
-        if (!$this->running_javascript()) {
-            throw new DriverException($shift . ' Tab press step is not available with Javascript disabled');
+        if (empty($shift)) {
+            $this->execute('behat_general::i_press_named_key', ['', 'tab']);
+        } else {
+            $this->execute('behat_general::i_press_named_key', ['shift', 'tab']);
         }
-
-        $value = ($shift == ' shift') ? [\WebDriver\Key::SHIFT . \WebDriver\Key::TAB] : [\WebDriver\Key::TAB];
-        $this->getSession()->getDriver()->getWebDriverSession()->activeElement()->postValue(['value' => $value]);
     }
 
     /**
@@ -2067,12 +2062,7 @@ EOF;
      * @throws DriverException
      */
     public function i_manually_press_enter() {
-        if (!$this->running_javascript()) {
-            throw new DriverException('Enter press step is not available with Javascript disabled');
-        }
-
-        $value = [\WebDriver\Key::ENTER];
-        $this->getSession()->getDriver()->getWebDriverSession()->activeElement()->postValue(['value' => $value]);
+        $this->execute('behat_general::i_press_named_key', ['', 'enter']);
     }
 
     /**
index 65c013e..42e6634 100644 (file)
@@ -102,7 +102,7 @@ Feature: Manage preferences
     And I open messaging
     And I select "Student 2" user in messaging
     And I set the field with xpath "//textarea[@data-region='send-message-txt']" to "Hi!"
-    And I press key "13" in "//textarea[@data-region='send-message-txt']" "xpath_element"
+    And I press the enter key
     Then I should see "Hi!" in the "//*[@data-region='message-drawer']//div[@data-region='content-message-container']" "xpath_element"
 
   Scenario: Sending a message after 'Use enter to send' is disabled
@@ -113,7 +113,7 @@ Feature: Manage preferences
     And I go back in "view-settings" message drawer
     Then I select "Student 2" user in messaging
     And I set the field with xpath "//textarea[@data-region='send-message-txt']" to "Hi!"
-    And I press key "13" in "//textarea[@data-region='send-message-txt']" "xpath_element"
+    And I press the enter key
     And I should not see "Hi!" in the "//*[@data-region='message-drawer']//div[@data-region='content-message-container']" "xpath_element"
     And I press "Send message"
     And I should see "Hi!" in the "//*[@data-region='message-drawer']//div[@data-region='content-message-container']" "xpath_element"
index 3fe90ac..90dd162 100644 (file)
@@ -131,7 +131,7 @@ Feature: The forum search allows users to perform advanced searches for forum po
     And I should see "Advanced search"
     And I set the field "Is tagged with" to "SearchedTag"
     And I click on "[data-value='SearchedTag']" "css_element"
-    And I press key "27" in the field "Is tagged with"
+    And I press the escape key
     When I press "Search forums"
     Then I should see "My subject"
     And I should not see "Your subjective"
index 25eefbf..30eed07 100644 (file)
@@ -23,7 +23,7 @@ Feature: Rename external tools via inline editing
       | Activity name | Test tool activity 1 |
     And I click on "Edit title" "link" in the "li#section-1" "css_element"
     And I set the field "New name for activity Test tool activity 1" to "Test tool activity renamed"
-    And I press key "13" in the field "New name for activity Test tool activity 1"
+    And I press the enter key
     And I navigate to "Setup > Gradebook setup" in the course gradebook
     Then I should not see "Test tool activity 1"
     And I should see "Test tool activity renamed"
index 3ff5acd..94b56cf 100644 (file)
@@ -44,7 +44,7 @@ Feature: Adding questions to a quiz from the question bank
     And I should see "bar" in the "question 02 name" "table_row"
     And I should see "qidnum" in the "question 02 name" "table_row"
     And I set the field "Filter by tags..." to "foo"
-    And I press key "13" in the field "Filter by tags..."
+    And I press the enter key
     And I should see "question 01 name" in the "categoryquestions" "table"
     And I should not see "question 02 name" in the "categoryquestions" "table"
 
index 7b4184d..b4bee51 100644 (file)
@@ -36,8 +36,7 @@ Feature: Edit quiz marks with no attempts
     And I should see "Total of marks: 10.00"
 
     When I follow "Edit maximum mark"
-    And I wait until "li input[name=maxmark]" "css_element" exists
-    And I take focus off "li input[name=maxmark]" "css_element"
+    And I press the escape key
     Then I should see "7.00"
     And I should see "3.00"
     And I should see "Total of marks: 10.00"
index a23acfb..36c2edd 100644 (file)
@@ -46,8 +46,7 @@ Feature: Edit quiz marks with attempts
     And I should see "Total of marks: 10.00"
 
     When I follow "Edit maximum mark"
-    And I wait until "li input[name=maxmark]" "css_element" exists
-    And I take focus off "li input[name=maxmark]" "css_element"
+    And I press the escape key
     Then I should see "7.00"
     And I should see "3.00"
     And I should see "Total of marks: 10.00"
index acbefe6..ce9df72 100644 (file)
@@ -36,6 +36,6 @@ Feature: The questions in the question bank can be filtered by tags
   @javascript
   Scenario: The questions can be filtered by tag
     When I set the field "Filter by tags..." to "foo"
-    And I press key "13" in the field "Filter by tags..."
+    And I press the enter key
     Then I should see "question 1 name" in the "categoryquestions" "table"
     And I should not see "question 2 name" in the "categoryquestions" "table"
index dfa0876..62368c9 100644 (file)
@@ -47,7 +47,7 @@ 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 key "13" in the field "Filter competencies by resource or activity"
+    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"
@@ -56,6 +56,6 @@ Feature: See the competencies for an activity
     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 key "13" in the field "Filter competencies by resource or activity"
+    And I press the enter key
     And I should see "Test-Comp1"
     And I should see "Test-Comp2"
index eaad727..6cdb568 100644 (file)
@@ -33,7 +33,7 @@ Feature: Managers can create and manage tag collections
   Scenario: Editing tag collections
     When I click on "Edit tag collection name" "link" in the "//table[contains(@class,'tag-collections-table')]//tr[contains(.,'Hobbies')]" "xpath_element"
     And I set the field "New name for tag collection Hobbies" to "Newname"
-    And I press key "13" in the field "New name for tag collection Hobbies"
+    And I press the enter key
     Then I should not see "Hobbies"
     And I should see "Newname"
     And I log out
index 555facd..4682edb 100644 (file)
@@ -52,7 +52,6 @@ Feature: Users can edit tags to add description or rename
     And I should see "Dog" in the ".tag_list" "css_element"
     And I should see "Turtle" in the ".tag_list" "css_element"
     And I should see "Fish" in the ".tag_list" "css_element"
-    And I log out
 
   @javascript
   Scenario: Manager can change tag description, related tags and rename the tag from tag view page
@@ -87,7 +86,6 @@ Feature: Users can edit tags to add description or rename
     And I should see "Turtle" in the ".tag_list" "css_element"
     And I should see "Fish" in the ".tag_list" "css_element"
     And I should not see "Dog"
-    And I log out
 
   Scenario: Renaming the tag from tag view page
     When I log in as "manager1"
@@ -112,7 +110,6 @@ Feature: Users can edit tags to add description or rename
       | Tag name | KITTEN |
     And I press "Update"
     And "KITTEN" "text" should exist in the ".breadcrumb" "css_element"
-    And I log out
 
   @javascript
   Scenario: Manager can change tag description and rename the tag from tag manage page
@@ -133,7 +130,6 @@ Feature: Users can edit tags to add description or rename
     And I should see "Dog" in the ".tag_list" "css_element"
     And I should see "Turtle" in the ".tag_list" "css_element"
     And I should see "Fish" in the ".tag_list" "css_element"
-    And I log out
 
   Scenario: Renaming the tag in edit tag form from tag manage page
     When I log in as "manager1"
@@ -155,7 +151,6 @@ Feature: Users can edit tags to add description or rename
     And "Default collection" "text" should exist in the ".breadcrumb" "css_element"
     And I should see "KITTEN"
     And I should not see "Kitten"
-    And I log out
 
   @javascript
   Scenario: Renaming the tag using quick edit field on tag manage page
@@ -165,7 +160,7 @@ Feature: Users can edit tags to add description or rename
     # Renaming tag to a valid name
     And I click on "Edit tag name" "link" in the "Cat" "table_row"
     And I set the field "New name for tag Cat" to "Kitten"
-    And I press key "13" in the field "New name for tag Cat"
+    And I press the enter key
     Then I should not see "Cat"
     And "New name for tag" "field" should not exist
     And I wait until "Kitten" "link" exists
@@ -175,7 +170,7 @@ Feature: Users can edit tags to add description or rename
     # Renaming tag to an invalid name
     And I click on "Edit tag name" "link" in the "Turtle" "table_row"
     And I set the field "New name for tag Turtle" to "DOG"
-    And I press key "13" in the field "New name for tag Turtle"
+    And I press the enter key
     And I should see "The tag name is already in use. Do you want to combine these tags?"
     And I click on "Cancel" "button" in the "Confirm" "dialogue"
     And "New name for tag" "field" should not exist
@@ -189,14 +184,13 @@ Feature: Users can edit tags to add description or rename
     # Cancel tag renaming
     And I click on "Edit tag name" "link" in the "Dog" "table_row"
     And I set the field "New name for tag Dog" to "Penguin"
-    And I press key "27" in the field "New name for tag Dog"
+    And I press the escape key
     And "New name for tag" "field" should not exist
     And I should see "Turtle"
     And I should not see "Penguin"
     And I follow "Default collection"
     And I should see "Turtle"
     And I should not see "Penguin"
-    And I log out
 
   @javascript
   Scenario: Combining tags when renaming
@@ -205,13 +199,12 @@ Feature: Users can edit tags to add description or rename
     And I follow "Default collection"
     And I click on "Edit tag name" "link" in the "Turtle" "table_row"
     And I set the field "New name for tag Turtle" to "DOG"
-    And I press key "13" in the field "New name for tag Turtle"
+    And I press the enter key
     And I should see "The tag name is already in use. Do you want to combine these tags?"
     And I press "Yes"
     Then I should not see "Turtle"
     And I should not see "DOG"
     And I should see "Dog"
-    And I log out
 
   @javascript
   Scenario: Combining multiple tags
@@ -232,7 +225,6 @@ Feature: Users can edit tags to add description or rename
     And I should see "Turtle"
     # Even though Turtle was not standard but at least one of combined tags was (Neverusedtag). Now Turtle is also standard.
     And "Remove from standard tags" "link" should exist in the "Turtle" "table_row"
-    And I log out
 
   Scenario: Filtering tags
     When I log in as "manager1"
@@ -249,4 +241,3 @@ Feature: Users can edit tags to add description or rename
     And I should see "Dog"
     And I should see "Cat"
     And I should see "Turtle"
-    And I log out
index 90ff654..dbf1130 100644 (file)
@@ -27,7 +27,7 @@ Feature: Edit user roles
     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 key "27" in the field "Student 1's role assignments"
+    And I press the escape key
     When I click on "Save changes" "link"
     Then I should see "Student, Non-editing teacher" in the "Student 1" "table_row"
 
@@ -38,6 +38,6 @@ Feature: Edit user roles
     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 key "27" in the field "Student 1's role assignments"
+    And I press the escape key
     When I click on "Save changes" "link"
     Then I should see "No roles" in the "Student 1" "table_row"
index 9ebe633..e962dfc 100644 (file)
@@ -238,7 +238,7 @@ Feature: Course participants can be filtered
     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 key "27" in the field "Student 1's role assignments"
+    And I press the escape key
     And I click on "Save changes" "link"
     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"
@@ -350,7 +350,7 @@ Feature: Course participants can be filtered
     And I set the field "Match" in the "Filter 3" "fieldset" to "Any"
     And I set the field "type" in the "Filter 3" "fieldset" to "Keyword"
     And I set the field "Type..." to "teacher1"
-    And I press key "13" in the field "Type..."
+    And I press the enter key
     And I click on "Apply filters" "button"
     And I should see "Student 2" in the "participants" "table"
     And I should see "Student 4" in the "participants" "table"
@@ -396,7 +396,7 @@ Feature: Course participants can be filtered
     And I set the field "Match" in the "Filter 3" "fieldset" to "Any"
     And I set the field "type" in the "Filter 3" "fieldset" to "Keyword"
     And I set the field "Type..." to "3@"
-    And I press key "13" in the field "Type..."
+    And I press the enter key
     And I click on "Apply filters" "button"
     And I should see "Student 1" in the "participants" "table"
     And I should not see "Student 2" in the "participants" "table"
@@ -419,7 +419,7 @@ Feature: Course participants can be filtered
     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 "Keyword"
     And I set the field "Type..." to "1@example"
-    And I press key "13" in the field "Type..."
+    And I press the enter key
     When I click on "Apply filters" "button"
     Then I should see "Student 1" in the "participants" "table"
     And I should see "Teacher 1" in the "participants" "table"
@@ -449,7 +449,7 @@ Feature: Course participants can be filtered
     And I should not see "Teacher 1" in the "participants" "table"
     # Add a second keyword filter value
     And I set the field "Type..." to "moodle"
-    And I press key "13" in the field "Type..."
+    And I press the enter key
     And I click on "Apply filters" "button"
     And I should see "Student 2" in the "participants" "table"
     And I should see "Student 3" in the "participants" "table"
@@ -534,7 +534,7 @@ Feature: Course participants can be filtered
     And I set the field "type" in the "Filter 1" "fieldset" to "Keyword"
     # Search by email (only).
     And I set the field "Type..." to "student1@example.com"
-    And I press key "13" in the field "Type..."
+    And I press the enter key
     When I click on "Apply filters" "button"
     Then I should see "Student 1" in the "participants" "table"
     And I should not see "Student 2" in the "participants" "table"
@@ -542,7 +542,7 @@ Feature: Course participants can be filtered
     # Search by idnumber (only).
     And I click on "student1@example.com" "autocomplete_selection"
     And I set the field "Type..." to "SID"
-    And I press key "13" in the field "Type..."
+    And I press the enter key
     And I click on "Apply filters" "button"
     And I should see "Student 1" in the "participants" "table"
     And I should see "Student 2" in the "participants" "table"
@@ -552,7 +552,7 @@ Feature: Course participants can be filtered
     # Search by city (only).
     And I click on "SID" "autocomplete_selection"
     And I set the field "Type..." to "SCITY"
-    And I press key "13" in the field "Type..."
+    And I press the enter key
     And I click on "Apply filters" "button"
     And I should see "Student 1" in the "participants" "table"
     And I should see "Student 2" in the "participants" "table"
@@ -562,13 +562,13 @@ Feature: Course participants can be filtered
     # Search by country text (only) - should not match.
     And I click on "SCITY" "autocomplete_selection"
     And I set the field "Type..." to "GB"
-    And I press key "13" in the field "Type..."
+    And I press the enter key
     And I click on "Apply filters" "button"
     And I should see "Nothing to display"
     # Check no match.
     And I click on "GB" "autocomplete_selection"
     And I set the field "Type..." to "NOTHING"
-    And I press key "13" in the field "Type..."
+    And I press the enter key
     And I click on "Apply filters" "button"
     And I should see "Nothing to display"
 
@@ -586,7 +586,7 @@ Feature: Course participants can be filtered
     # Search by email (only) - should only see visible email + own.
     And I set the field "type" in the "Filter 1" "fieldset" to "Keyword"
     And I set the field "Type..." to "@example."
-    And I press key "13" in the field "Type..."
+    And I press the enter key
     When I click on "Apply filters" "button"
     Then I should not see "Student 1" in the "participants" "table"
     And I should see "Student 2" in the "participants" "table"
@@ -596,25 +596,25 @@ Feature: Course participants can be filtered
     # Search for other fields - should only see own results.
     And I click on "@example." "autocomplete_selection"
     And I set the field "Type..." to "SID"
-    And I press key "13" in the field "Type..."
+    And I press the enter key
     And I click on "Apply filters" "button"
     And I should see "Nothing to display"
     And I click on "SID" "autocomplete_selection"
     And I set the field "Type..." to "TID"
-    And I press key "13" in the field "Type..."
+    And I press the enter key
     And I click on "Apply filters" "button"
     And I should see "Teacher 1" in the "participants" "table"
     And I should not see "Student 1" in the "participants" "table"
     And I click on "TID" "autocomplete_selection"
     And I set the field "Type..." to "CITY"
-    And I press key "13" in the field "Type..."
+    And I press the enter key
     And I click on "Apply filters" "button"
     And I should see "Teacher 1" in the "participants" "table"
     And I should not see "Student 1" in the "participants" "table"
     # Check no match.
     And I click on "CITY" "autocomplete_selection"
     And I set the field "Type..." to "NOTHING"
-    And I press key "13" in the field "Type..."
+    And I press the enter key
     And I click on "Apply filters" "button"
     And I should see "Nothing to display"
 
@@ -633,7 +633,7 @@ Feature: Course participants can be filtered
     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 "Keyword"
     And I set the field "Type..." to "@example"
-    And I press key "13" in the field "Type..."
+    And I press the enter key
     And I click on "Apply filters" "button"
     And I should see "Student 1" in the "participants" "table"
     And I should see "Student 2" in the "participants" "table"
@@ -662,7 +662,7 @@ Feature: Course participants can be filtered
     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 "Keyword"
     And I set the field "Type..." to "@example"
-    And I press key "13" in the field "Type..."
+    And I press the enter key
     And I click on "Apply filters" "button"
     And I should see "Student 1" in the "participants" "table"
     And I should see "Student 2" in the "participants" "table"
@@ -684,7 +684,7 @@ Feature: Course participants can be filtered
     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 "Keyword"
     And I set the field "Type..." to "@example.com"
-    And I press key "13" in the field "Type..."
+    And I press the enter key
     And I click on "Add condition" "button"
     # Set filterset to match none.
     And I set the field "Match" to "None"