<commit_before>@blocks
Feature: Allowed blocks controls
  In order to prevent the use of some blocks
  As an admin
  I need to restrict some blocks to be used in courses

  Background:
    Given the following "users" exists:
      | username | firstname | lastname | email |
      | teacher1 | Teacher | 1 | <EMAIL> |
    And the following "courses" exists:
      | fullname | shortname | category |
      | Course $NASTYSTRING1 | C1 | 0 |
    And the following "course enrolments" exists:
      | user | course | role |
      | teacher1 | C1 | editingteacher |

  @javascript
  Scenario: Blocks can be added with the default permissions
    Given I log in as "teacher1"
    And I follow "Course $NASTYSTRING1"
    And I turn editing mode on
    When I add the "Course completion status" block
    And I add the "Activities" block
    Then I should see "Activities"
    And I should see "Course completion status"

  @javascript
  Scenario: Blocks can not be added when the admin restricts the permissions
    Given I log in as "admin"
    And I set the following system permissions of "Teacher" role:
      | block/activity_modules:addinstance | Prohibit |
    And I am on homepage
    And I follow "Course $NASTYSTRING1"
    And I expand "Users" node
    And I follow "Permissions"
    And I override the system permissions of "Teacher" role with:
      | block/completionstatus:addinstance | Prohibit |
    And I log out
    When I log in as "teacher1"
    And I follow "Course $NASTYSTRING1"
    And I turn editing mode on
    Then the "Add a block" select box should not contain "Activities"
    And the "Add a block" select box should not contain "Course completion status"<commit_msg>MDL-38346 behat: Quick fix to remove nasty strings<commit_after>@blocks
Feature: Allowed blocks controls
  In order to prevent the use of some blocks
  As an admin
  I need to restrict some blocks to be used in courses

  Background:
    Given the following "users" exists:
      | username | firstname | lastname | email |
      | teacher1 | Teacher | 1 | <EMAIL> |
    And the following "courses" exists:
      | fullname | shortname | category |
      | Course 1 | C1 | 0 |
    And the following "course enrolments" exists:
      | user | course | role |
      | teacher1 | C1 | editingteacher |

  @javascript
  Scenario: Blocks can be added with the default permissions
    Given I log in as "teacher1"
    And I follow "Course 1"
    And I turn editing mode on
    When I add the "Course completion status" block
    And I add the "Activities" block
    Then I should see "Activities"
    And I should see "Course completion status"

  @javascript
  Scenario: Blocks can not be added when the admin restricts the permissions
    Given I log in as "admin"
    And I set the following system permissions of "Teacher" role:
      | block/activity_modules:addinstance | Prohibit |
    And I am on homepage
    And I follow "Course 1"
    And I expand "Users" node
    And I follow "Permissions"
    And I override the system permissions of "Teacher" role with:
      | block/completionstatus:addinstance | Prohibit |
    And I log out
    When I log in as "teacher1"
    And I follow "Course 1"
    And I turn editing mode on
    Then the "Add a block" select box should not contain "Activities"
    And the "Add a block" select box should not contain "Course completion status"
{'fraction_non_alphanumeric': 0.058142984277662416, 'fraction_numerical': 0.008602788490062296, 'mean_word_length': 2.990532544378698, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2008300', 'n_tokens_mistral': 965, 'n_tokens_neox': 921, 'n_words': 458}