From 75fe99dad0ec9ad581967d40fa75462e4e5d2e25 Mon Sep 17 00:00:00 2001 From: Jun Pataleta Date: Tue, 1 Aug 2017 13:57:40 +0800 Subject: [PATCH] MDL-59658 core: Add login/logout steps for course participants scenario * Add student1 and student2 login/logout steps for the course participants filtering scenario in order to have last access data for students 1 and 2 since the participants table is sorted by last access by default. * Convert the two course participants scenario to a scenario outline. The steps are basically the same. Only the view mode is different. * Remove @javascript tags for the following scenario: - Filter users on assignment submission page - Filter users on view gradebook page - Filter users on course participants page JS is not really necessary in these scenario and we can get faster execution time. --- lib/tests/behat/alpha_chooser.feature | 77 +++++---------------------- 1 file changed, 13 insertions(+), 64 deletions(-) diff --git a/lib/tests/behat/alpha_chooser.feature b/lib/tests/behat/alpha_chooser.feature index 4d1eed684d0..6b700e9a905 100644 --- a/lib/tests/behat/alpha_chooser.feature +++ b/lib/tests/behat/alpha_chooser.feature @@ -64,7 +64,6 @@ Feature: Initials bar | student23 | C1 | student | | student24 | C1 | student | - @javascript Scenario: Filter users on assignment submission page Given the following "activities" exist: | activity | course | idnumber | name | intro | assignsubmission_onlinetext_enabled | assignsubmission_file_enabled | @@ -123,7 +122,6 @@ Feature: Initials bar And I should see "Bstudent Astudent" And I should see "Cstudent Cstudent" - @javascript Scenario: Filter users on view gradebook page Given the following "activities" exist: | activity | course | idnumber | name | intro | assignsubmission_onlinetext_enabled | assignsubmission_file_enabled | @@ -184,15 +182,20 @@ Feature: Initials bar And I should see "Bstudent Astudent" And I should see "Cstudent Cstudent" - @javascript - Scenario: Filter users on course participants page + Scenario Outline: Filter users on course participants page Given the following "activities" exist: | activity | course | idnumber | name | intro | assignsubmission_onlinetext_enabled | assignsubmission_file_enabled | | assign | C1 | assign1 | TestAssignment | Test assignment description | 0 | 0 | + And I log in as "student1" + And I am on "Course 1" course homepage + And I log out + And I log in as "student2" + And I am on "Course 1" course homepage + And I log out And I log in as "teacher" And I am on "Course 1" course homepage And I follow "Participants" - And I select "Brief" from the "mode" singleselect + And I select "" from the "mode" singleselect And ".initialbarall.letter.active" "css_element" should exist in the ".initialbar.firstinitial" "css_element" And ".initialbarall.letter.active" "css_element" should exist in the ".initialbar.lastinitial" "css_element" And ".letter.active.B" "css_element" should not exist in the ".initialbar.firstinitial" "css_element" @@ -218,7 +221,7 @@ Feature: Initials bar And I should not see "Cstudent Cstudent" And I am on "Course 1" course homepage And I follow "Participants" - And I select "Brief" from the "mode" singleselect + And I select "" from the "mode" singleselect And ".initialbarall.letter.active" "css_element" should not exist in the ".initialbar.firstinitial" "css_element" And ".initialbarall.letter.active" "css_element" should not exist in the ".initialbar.lastinitial" "css_element" And ".letter.active.B" "css_element" should exist in the ".initialbar.firstinitial" "css_element" @@ -243,64 +246,10 @@ Feature: Initials bar And I should see "Bstudent Astudent" And I should see "Cstudent Cstudent" - @javascript - Scenario: Filter users on course participants page - Given the following "activities" exist: - | activity | course | idnumber | name | intro | assignsubmission_onlinetext_enabled | assignsubmission_file_enabled | - | assign | C1 | assign1 | TestAssignment | Test assignment description | 0 | 0 | - And I log in as "teacher" - And I am on "Course 1" course homepage - And I follow "Participants" - And I select "User details" from the "mode" singleselect - And ".initialbarall.letter.active" "css_element" should exist in the ".initialbar.firstinitial" "css_element" - And ".initialbarall.letter.active" "css_element" should exist in the ".initialbar.lastinitial" "css_element" - And ".letter.active.B" "css_element" should not exist in the ".initialbar.firstinitial" "css_element" - And ".letter.active.A" "css_element" should not exist in the ".initialbar.lastinitial" "css_element" - And I should see "Astudent Astudent" - And I should see "Bstudent Astudent" - And I should see "Cstudent Cstudent" - And I click on "A" "link" in the ".initialbar.lastinitial" "css_element" - And ".initialbarall.letter.active" "css_element" should exist in the ".initialbar.firstinitial" "css_element" - And ".initialbarall.letter.active" "css_element" should not exist in the ".initialbar.lastinitial" "css_element" - And ".letter.active.B" "css_element" should not exist in the ".initialbar.firstinitial" "css_element" - And ".letter.active.A" "css_element" should exist in the ".initialbar.lastinitial" "css_element" - And I should see "Astudent Astudent" - And I should see "Bstudent Astudent" - And I should not see "Cstudent Cstudent" - And I click on "B" "link" in the ".initialbar.firstinitial" "css_element" - And ".initialbarall.letter.active" "css_element" should not exist in the ".initialbar.firstinitial" "css_element" - And ".initialbarall.letter.active" "css_element" should not exist in the ".initialbar.lastinitial" "css_element" - And ".letter.active.B" "css_element" should exist in the ".initialbar.firstinitial" "css_element" - And ".letter.active.A" "css_element" should exist in the ".initialbar.lastinitial" "css_element" - And I should not see "Astudent Astudent" - And I should see "Bstudent Astudent" - And I should not see "Cstudent Cstudent" - And I am on "Course 1" course homepage - And I follow "Participants" - And I select "User details" from the "mode" singleselect - And ".initialbarall.letter.active" "css_element" should not exist in the ".initialbar.firstinitial" "css_element" - And ".initialbarall.letter.active" "css_element" should not exist in the ".initialbar.lastinitial" "css_element" - And ".letter.active.B" "css_element" should exist in the ".initialbar.firstinitial" "css_element" - And ".letter.active.A" "css_element" should exist in the ".initialbar.lastinitial" "css_element" - And I should not see "Astudent Astudent" - And I should see "Bstudent Astudent" - And I should not see "Cstudent Cstudent" - And I click on "All" "link" in the ".initialbar.firstinitial" "css_element" - And ".initialbarall.letter.active" "css_element" should exist in the ".initialbar.firstinitial" "css_element" - And ".initialbarall.letter.active" "css_element" should not exist in the ".initialbar.lastinitial" "css_element" - And ".letter.active.B" "css_element" should not exist in the ".initialbar.firstinitial" "css_element" - And ".letter.active.A" "css_element" should exist in the ".initialbar.lastinitial" "css_element" - And I should see "Astudent Astudent" - And I should see "Bstudent Astudent" - And I should not see "Cstudent Cstudent" - And I click on "All" "link" in the ".initialbar.lastinitial" "css_element" - And ".initialbarall.letter.active" "css_element" should exist in the ".initialbar.firstinitial" "css_element" - And ".initialbarall.letter.active" "css_element" should exist in the ".initialbar.lastinitial" "css_element" - And ".letter.active.B" "css_element" should not exist in the ".initialbar.firstinitial" "css_element" - And ".letter.active.A" "css_element" should not exist in the ".initialbar.lastinitial" "css_element" - And I should see "Astudent Astudent" - And I should see "Bstudent Astudent" - And I should see "Cstudent Cstudent" + Examples: + | viewmode | + | Brief | + | User details | @javascript Scenario: Filter users on activity completion page