AutorÃa | Ultima modificación | Ver Log |
@mod @mod_forumFeature: A user can control their own subscription preferences for a discussionIn order to receive notifications for things I am interested inAs a userI need to choose my discussion subscriptionsBackground:Given the following "users" exist:| username | firstname | lastname | email || student1 | Student | One | student.one@example.com |And the following "courses" exist:| fullname | shortname | category || Course 1 | C1 | 0 |And the following "course enrolments" exist:| user | course | role || student1 | C1 | student |@javascriptScenario: An optional forum can have discussions subscribed toGiven the following "activity" exists:| activity | forum || course | C1 || idnumber | forum1 || name | Test forum name || type | general || forcesubscribe | 0 |And the following "mod_forum > discussions" exist:| user | forum | name | message || admin | forum1 | Test post subject one | Test post message one || admin | forum1 | Test post subject two | Test post message two |When I am on the "Test forum name" "forum activity" page logged in as student1Then I can subscribe to this forumAnd "Subscribe to this discussion" "checkbox" should exist in the "Test post subject one" "table_row"And "Subscribe to this discussion" "checkbox" should exist in the "Test post subject two" "table_row"And I click on "input[id^=subscription-toggle]" "css_element" in the "Test post subject one" "table_row"And I can subscribe to this forumAnd "Unsubscribe from this discussion" "checkbox" should exist in the "Test post subject one" "table_row"And "Subscribe to this discussion" "checkbox" should exist in the "Test post subject two" "table_row"And I click on "input[id^=subscription-toggle]" "css_element" in the "Test post subject one" "table_row"And I can subscribe to this forumAnd "Subscribe to this discussion" "checkbox" should exist in the "Test post subject one" "table_row"And "Subscribe to this discussion" "checkbox" should exist in the "Test post subject two" "table_row"And I click on "input[id^=subscription-toggle]" "css_element" in the "Test post subject one" "table_row"And I can subscribe to this forumAnd "Unsubscribe from this discussion" "checkbox" should exist in the "Test post subject one" "table_row"And "Subscribe to this discussion" "checkbox" should exist in the "Test post subject two" "table_row"And I follow "Subscribe to forum"And I should see "You will be notified of new posts in the forum 'Test forum name'"And I can unsubscribe from this forumAnd "Unsubscribe from this discussion" "checkbox" should exist in the "Test post subject one" "table_row"And "Unsubscribe from this discussion" "checkbox" should exist in the "Test post subject two" "table_row"And I unsubscribe from this forumAnd I should see "Student One will NOT be notified of new posts in 'Test forum name'"And I can subscribe to this forumAnd "Subscribe to this discussion" "checkbox" should exist in the "Test post subject one" "table_row"And "Subscribe to this discussion" "checkbox" should exist in the "Test post subject two" "table_row"@javascriptScenario: An automatic subscription forum can have discussions unsubscribed fromGiven the following "activity" exists:| activity | forum || course | C1 || idnumber | forum1 || name | Test forum name || type | general || forcesubscribe | 2 |And the following "mod_forum > discussions" exist:| user | forum | name | message || admin | forum1 | Test post subject one | Test post message one || admin | forum1 | Test post subject two | Test post message two |When I am on the "Test forum name" "forum activity" page logged in as student1Then I can unsubscribe from this forumAnd "Unsubscribe from this discussion" "checkbox" should exist in the "Test post subject one" "table_row"And "Unsubscribe from this discussion" "checkbox" should exist in the "Test post subject two" "table_row"And I click on "input[id^=subscription-toggle]" "css_element" in the "Test post subject one" "table_row"And I can unsubscribe from this forumAnd "Subscribe to this discussion" "checkbox" should exist in the "Test post subject one" "table_row"And "Unsubscribe from this discussion" "checkbox" should exist in the "Test post subject two" "table_row"And I click on "input[id^=subscription-toggle]" "css_element" in the "Test post subject one" "table_row"And I can unsubscribe from this forumAnd "Unsubscribe from this discussion" "checkbox" should exist in the "Test post subject one" "table_row"And "Unsubscribe from this discussion" "checkbox" should exist in the "Test post subject two" "table_row"And I click on "input[id^=subscription-toggle]" "css_element" in the "Test post subject one" "table_row"And I can unsubscribe from this forumAnd "Subscribe to this discussion" "checkbox" should exist in the "Test post subject one" "table_row"And "Unsubscribe from this discussion" "checkbox" should exist in the "Test post subject two" "table_row"And I unsubscribe from this forumAnd I should see "Student One will NOT be notified of new posts in 'Test forum name'"And I can subscribe to this forumAnd "Subscribe to this discussion" "checkbox" should exist in the "Test post subject one" "table_row"And "Subscribe to this discussion" "checkbox" should exist in the "Test post subject two" "table_row"And I subscribe to this forumAnd I should see "You will be notified of new posts in the forum 'Test forum name'"And I can unsubscribe from this forumAnd "Unsubscribe from this discussion" "checkbox" should exist in the "Test post subject one" "table_row"And "Unsubscribe from this discussion" "checkbox" should exist in the "Test post subject two" "table_row"@javascriptScenario: A user does not lose their preferences when a forum is switch from optional to automaticGiven the following "activity" exists:| activity | forum || course | C1 || idnumber | forum1 || name | Test forum name || type | general || forcesubscribe | 0 |And the following "mod_forum > discussions" exist:| user | forum | name | message || admin | forum1 | Test post subject one | Test post message one || admin | forum1 | Test post subject two | Test post message two |And I am on the "Test forum name" "forum activity" page logged in as student1And I can subscribe to this forumAnd "Subscribe to this discussion" "checkbox" should exist in the "Test post subject one" "table_row"And "Subscribe to this discussion" "checkbox" should exist in the "Test post subject two" "table_row"And I click on "input[id^=subscription-toggle]" "css_element" in the "Test post subject one" "table_row"And I can subscribe to this forumAnd "Unsubscribe from this discussion" "checkbox" should exist in the "Test post subject one" "table_row"And "Subscribe to this discussion" "checkbox" should exist in the "Test post subject two" "table_row"And I am on the "Test forum name" "forum activity editing" page logged in as adminAnd I set the following fields to these values:| Subscription mode | Auto subscription |And I press "Save and return to course"And I am on the "Test forum name" "forum activity" page logged in as student1And I can unsubscribe from this forumAnd "Unsubscribe from this discussion" "checkbox" should exist in the "Test post subject one" "table_row"And "Unsubscribe from this discussion" "checkbox" should exist in the "Test post subject two" "table_row"When I unsubscribe from this forumThen I should see "Student One will NOT be notified of new posts in 'Test forum name'"And I can subscribe to this forumAnd "Unsubscribe from this discussion" "checkbox" should exist in the "Test post subject one" "table_row"And "Subscribe to this discussion" "checkbox" should exist in the "Test post subject two" "table_row"Scenario: An optional forum prompts a user to subscribe to a discussion when posting unless they have already chosen not to subscribeGiven the following "activity" exists:| activity | forum || course | C1 || idnumber | forum1 || name | Test forum name || type | general || forcesubscribe | 0 |And the following "mod_forum > discussions" exist:| user | forum | name | message || admin | forum1 | Test post subject one | Test post message one || admin | forum1 | Test post subject two | Test post message two |When I am on the "Test forum name" "forum activity" page logged in as student1And I should see "Subscribe to forum"And I reply "Test post subject one" post from "Test forum name" forum with:| Subject | Reply 1 to discussion 1 || Message | Discussion contents 1, second message || Discussion subscription | 1 |And I reply "Test post subject two" post from "Test forum name" forum with:| Subject | Reply 1 to discussion 1 || Message | Discussion contents 1, second message || Discussion subscription | 0 |And I am on the "Test forum name" "forum activity" pageThen "Unsubscribe from this discussion" "checkbox" should exist in the "Test post subject one" "table_row"And "Subscribe to this discussion" "checkbox" should exist in the "Test post subject two" "table_row"And I follow "Test post subject one"And I follow "Reply"And the field "Discussion subscription" matches value "Send me notifications of new posts in this discussion"And I follow "Test forum name"And I follow "Test post subject two"And I follow "Reply"And the field "Discussion subscription" matches value "I don't want to be notified of new posts in this discussion"Scenario: An automatic forum prompts a user to subscribe to a discussion when posting unless they have already chosen not to subscribeGiven the following "activity" exists:| activity | forum || course | C1 || idnumber | forum1 || name | Test forum name || type | general || forcesubscribe | 2 |And the following "mod_forum > discussions" exist:| user | forum | name | message || admin | forum1 | Test post subject one | Test post message one || admin | forum1 | Test post subject two | Test post message two |# added for this scenarioAnd the following "users" exist:| username | firstname | lastname | email || student2 | Student | Two | student.two@example.com |And the following "course enrolments" exist:| user | course | role || student2 | C1 | student |When I am on the "Test forum name" "forum activity" page logged in as student2And I should see "Unsubscribe from forum"And I reply "Test post subject one" post from "Test forum name" forum with:| Subject | Reply 1 to discussion 1 || Message | Discussion contents 1, second message || Discussion subscription | 1 |And I reply "Test post subject two" post from "Test forum name" forum with:| Subject | Reply 1 to discussion 1 || Message | Discussion contents 1, second message || Discussion subscription | 0 |And I am on the "Test forum name" "forum activity" pageThen "Unsubscribe from this discussion" "checkbox" should exist in the "Test post subject one" "table_row"And "Subscribe to this discussion" "checkbox" should exist in the "Test post subject two" "table_row"And I follow "Test post subject one"And I follow "Reply"And the field "Discussion subscription" matches value "Send me notifications of new posts in this discussion"And I am on the "Test forum name" "forum activity" pageAnd I follow "Test post subject two"And I follow "Reply"And the field "Discussion subscription" matches value "I don't want to be notified of new posts in this discussion"Scenario: A guest should not be able to subscribe to a discussionGiven the following "activities" exist:| activity | name | course | section | idnumber | type || forum | Test forum name | Acceptance test site | 1 | forum1 | general |And the following "mod_forum > discussions" exist:| user | forum | name | message || admin | forum1 | Test post subject one | Test post message one |When I am on the "Test forum name" "forum activity" page logged in as guestThen "Subscribe to this discussion" "checkbox" should not exist in the "Test post subject one" "table_row"And "Unsubscribe from this discussion" "checkbox" should not exist in the "Test post subject one" "table_row"And I follow "Test post subject one"And "Subscribe to this discussion" "checkbox" should not existAnd "Unsubscribe from this discussion" "checkbox" should not existScenario: A user who is not logged in should not be able to subscribe to a discussionGiven the following "activities" exist:| activity | name | course | section | idnumber | type || forum | Test forum name | Acceptance test site | 1 | forum1 | general |And the following "mod_forum > discussions" exist:| user | forum | name | message || admin | forum1 | Test post subject one | Test post message one |When I am on site homepageAnd I follow "Test forum name"Then "Subscribe to this discussion" "checkbox" should not exist in the "Test post subject one" "table_row"And "Unsubscribe from this discussion" "checkbox" should not exist in the "Test post subject one" "table_row"And I follow "Test post subject one"And "Subscribe to this discussion" "checkbox" should not existAnd "Unsubscribe from this discussion" "checkbox" should not existScenario: A user can toggle their subscription preferences when viewing a discussionGiven the following "activity" exists:| activity | forum || course | C1 || idnumber | forum1 || name | Test forum name || type | general || forcesubscribe | 0 |And the following "mod_forum > discussions" exist:| user | forum | name | message || admin | forum1 | Test post subject one | Test post message one |When I am on the "Test forum name" "forum activity" page logged in as student1Then "Subscribe to forum" "link" should existAnd I follow "Test post subject one"And "You are not subscribed to this discussion. Click to subscribe" "link" should existAnd I follow "Test forum name"And I follow "Subscribe to forum"And I should see "You will be notified of new posts in the forum 'Test forum name'"And "Unsubscribe from forum" "link" should existAnd I follow "Test post subject one"And "You are subscribed to this discussion. Click to unsubscribe" "link" should existAnd I follow "You are subscribed to this discussion. Click to unsubscribe"And I should see "Student One will NOT be notified of new posts in 'Test post subject one' of 'Test forum name'"And I follow "Test post subject one"And "You are not subscribed to this discussion. Click to subscribe" "link" should existAnd I follow "Test forum name"And I follow "Unsubscribe from forum"And I should see "Student One will NOT be notified of new posts in 'Test forum name'"And "Subscribe to forum" "link" should existAnd I follow "Test post subject one"And "You are not subscribed to this discussion. Click to subscribe" "link" should existAnd I follow "You are not subscribed to this discussion. Click to subscribe"And I should see "You will be notified of new posts in 'Test post subject one' in the forum 'Test forum name'."And "Unsubscribe from this discussion" "checkbox" should exist in the "Test post subject one" "table_row"And I follow "Subscribe to forum"And I should see "You will be notified of new posts in the forum 'Test forum name'"And "Unsubscribe from forum" "link" should existAnd I follow "Test post subject one"And "You are subscribed to this discussion. Click to unsubscribe" "link" should existAnd I follow "Test forum name"And I follow "Unsubscribe from forum"And I should see "Student One will NOT be notified of new posts in 'Test forum name'"And "Subscribe to forum" "link" should existAnd I follow "Test post subject one"And "You are not subscribed to this discussion. Click to subscribe" "link" should exist