MDL-48675 mod_lesson: behat tests for pages edition

This commit is contained in:
Jean-Michel Vedrine 2015-01-08 20:59:59 +01:00
parent a748983aa2
commit 2d586d1d85
2 changed files with 242 additions and 0 deletions

View File

@ -0,0 +1,113 @@
@mod @mod_lesson
Feature: In a lesson activity, teacher can edit a cluster page
In order to modify an existing lesson and change navigation
As a teacher
I need to edit cluster pages in the lesson
Background:
Given the following "users" exist:
| username | firstname | lastname | email |
| teacher1 | Teacher | 1 | teacher1@asd.com |
| student1 | Student | 1 | student1@asd.com |
And the following "courses" exist:
| fullname | shortname | category |
| Course 1 | C1 | 0 |
And the following "course enrolments" exist:
| user | course | role |
| teacher1 | C1 | editingteacher |
| student1 | C1 | student |
And I log in as "teacher1"
And I follow "Course 1"
And I turn editing mode on
And I add a "Lesson" to section "1" and I fill the form with:
| Name | Lesson with cluster |
| Description | Test lesson description |
And I follow "Lesson with cluster"
And I follow "Add a content page"
And I set the following fields to these values:
| Page title | First page name |
| Page contents | First page contents |
| id_answer_editor_0 | Next page |
| id_jumpto_0 | Next page |
And I press "Save page"
And I follow "Expanded"
And I click on "Add a cluster" "link" in the "//div[contains(concat(' ', normalize-space(@class), ' '), ' addlinks ')][2]" "xpath_element"
And I click on "Add a question page here" "link" in the "//div[contains(concat(' ', normalize-space(@class), ' '), ' addlinks ')][3]" "xpath_element"
And I set the field "Select a question type" to "Multichoice"
And I press "Add a question page"
And I set the following fields to these values:
| Page title | question 1 |
| Page contents | Question from cluster |
| id_answer_editor_0 | Correct answer |
| id_response_editor_0 | Good |
| id_jumpto_0 | Cluster |
| id_score_0 | 1 |
| id_answer_editor_1 | Incorrect answer |
| id_response_editor_1 | Bad |
| id_jumpto_1 | This page |
| id_score_1 | 0 |
And I press "Save page"
And I click on "Add a question page here" "link" in the "//div[contains(concat(' ', normalize-space(@class), ' '), ' addlinks ')][4]" "xpath_element"
And I set the field "Select a question type" to "Multichoice"
And I press "Add a question page"
And I set the following fields to these values:
| Page title | question 2 |
| Page contents | Question from cluster |
| id_answer_editor_0 | Correct answer |
| id_response_editor_0 | Good |
| id_jumpto_0 | Cluster |
| id_score_0 | 1 |
| id_answer_editor_1 | Incorrect answer |
| id_response_editor_1 | Bad |
| id_jumpto_1 | This page |
| id_score_1 | 0 |
And I press "Save page"
And I click on "Add an end of cluster" "link" in the "//div[contains(concat(' ', normalize-space(@class), ' '), ' addlinks ')][5]" "xpath_element"
And I click on "Add a content page" "link" in the "//div[contains(concat(' ', normalize-space(@class), ' '), ' addlinks ')][6]" "xpath_element"
And I set the following fields to these values:
| Page title | Second page name |
| Page contents | Content page after cluster |
| id_answer_editor_0 | Next page |
| id_jumpto_0 | Next page |
And I press "Save page"
@javascript
Scenario: Edit lesson cluster page
Given I click on "//th[normalize-space(.)='Cluster']/descendant::a[2]" "xpath_element"
When I set the following fields to these values:
| Page title | Modified name |
| Page contents | Modified contents |
And I press "Save page"
Then I should see "Modified name"
And I click on "//th[normalize-space(.)='Modified name']/descendant::a[2]" "xpath_element"
And I should see "Unseen question within a cluster"
And I press "Cancel"
And I click on "//th[normalize-space(.)='End of cluster']/descendant::a[2]" "xpath_element"
And I set the following fields to these values:
| Page title | Modified end |
| Page contents | Modified end contents |
| id_jumpto_0 | Second page name |
And I press "Save page"
And I should see "Modified end"
And I log out
And I log in as "student1"
And I follow "Course 1"
And I follow "Lesson with cluster"
And I should see "First page contents"
And I press "Next page"
And I should see "Question from cluster"
And I set the following fields to these values:
| Correct answer | 1 |
And I press "Submit"
And I should see "Good"
And I press "Continue"
And I should see "Question from cluster"
And I set the following fields to these values:
| Correct answer | 1 |
And I press "Submit"
And I should see "Good"
And I press "Continue"
And I should see "Content page after cluster"
And I press "Next page"
And I should see "Congratulations - end of lesson reached"
And I should see "Your score is 2 (out of 2)."

View File

@ -0,0 +1,129 @@
@mod @mod_lesson
Feature: In a lesson activity, teacher can edit lesson's pages
In order to modify an existing lesson
As a teacher
I need to edit pages in the lesson
Background:
Given the following "users" exist:
| username | firstname | lastname | email |
| teacher1 | Teacher | 1 | teacher1@asd.com |
| student1 | Student | 1 | student1@asd.com |
And the following "courses" exist:
| fullname | shortname | category |
| Course 1 | C1 | 0 |
And the following "course enrolments" exist:
| user | course | role |
| teacher1 | C1 | editingteacher |
| student1 | C1 | student |
And I log in as "teacher1"
And I follow "Course 1"
And I turn editing mode on
And I add a "Lesson" to section "1" and I fill the form with:
| Name | Test lesson name |
| Description | Test lesson description |
And I follow "Test lesson name"
And I follow "Add a content page"
And I set the following fields to these values:
| Page title | First page name |
| Page contents | First page contents |
| id_answer_editor_0 | Next page |
| id_jumpto_0 | Next page |
And I press "Save page"
And I set the field "qtype" to "Add a content page"
And I set the following fields to these values:
| Page title | Second page name |
| Page contents | Second page contents |
| id_answer_editor_0 | Previous page |
| id_jumpto_0 | Previous page |
| id_answer_editor_1 | Next page |
| id_jumpto_1 | Next page |
And I press "Save page"
And I follow "Expanded"
And I click on "Add a question page here" "link" in the "//div[contains(concat(' ', normalize-space(@class), ' '), ' addlinks ')][3]" "xpath_element"
And I set the field "Select a question type" to "Numerical"
And I press "Add a question page"
And I set the following fields to these values:
| Page title | Hardest question ever |
| Page contents | 1 + 1? |
| id_answer_editor_0 | 2 |
| id_response_editor_0 | Correct answer |
| id_jumpto_0 | End of lesson |
| id_score_0 | 1 |
| id_answer_editor_1 | 1 |
| id_response_editor_1 | Incorrect answer |
| id_jumpto_1 | Second page name |
| id_score_1 | 0 |
And I press "Save page"
@javascript
Scenario: Edit lesson content page
Given I click on "//th[normalize-space(.)='Second page name']/descendant::a[2]" "xpath_element"
When I set the following fields to these values:
| Page title | Modified second page |
| Page contents | Modified contents |
| id_answer_editor_0 | Forward |
| id_jumpto_0 |Next page |
| id_answer_editor_1 | Backward |
| id_jumpto_1 | Previous page |
And I press "Save page"
Then I should see "Modified second page"
And I should not see "Second page name"
And I log out
And I log in as "student1"
And I follow "Course 1"
And I follow "Test lesson name"
And I should see "First page contents"
And I press "Next page"
And I should see "Modified contents"
And I should not see "Second page contents"
And I press "Backward"
And I should see "First page contents"
And I press "Next page"
And I should see "Modified contents"
And I press "Forward"
And I should see "1 + 1?"
And I set the following fields to these values:
| Your answer | 2 |
And I press "Submit"
And I should see "Correct answer"
And I should not see "Incorrect answer"
And I press "Continue"
And I should see "Congratulations - end of lesson reached"
And I should see "Your score is 1 (out of 1)."
@javascript
Scenario: Edit lesson question page
Given I click on "//th[normalize-space(.)='Hardest question ever']/descendant::a[2]" "xpath_element"
When I set the following fields to these values:
| Page title | New hardest question |
| Page contents | 1 + 2? |
| id_answer_editor_0 | 2 |
| id_response_editor_0 | Your answer is incorrect |
| id_jumpto_0 | End of lesson |
| id_score_0 | 0 |
| id_answer_editor_1 | 3 |
| id_response_editor_1 | Your answer is correct |
| id_jumpto_1 | End of lesson |
| id_score_1 | 1 |
And I press "Save page"
Then I should see "New hardest question"
And I should not see "Hardest question ever"
And I log out
And I log in as "student1"
And I follow "Course 1"
And I follow "Test lesson name"
And I should see "First page contents"
And I press "Next page"
And I should see "Second page contents"
And I press "Next page"
And I should see "1 + 2?"
And I should not see "1 + 1?"
And I set the following fields to these values:
| Your answer | 3 |
And I press "Submit"
And I should see "Your answer is correct"
And I should not see "Incorrect answer"
And I press "Continue"
And I should see "Congratulations - end of lesson reached"
And I should see "Your score is 1 (out of 1)."