84 lines
4.0 KiB
Gherkin
84 lines
4.0 KiB
Gherkin
@mod @mod_data
|
|
Feature: Users can edit approved entries in database activities
|
|
In order to control whether approved database entries can be changed
|
|
As a teacher
|
|
I need to be able to enable or disable management of approved entries
|
|
|
|
Background:
|
|
Given the following "users" exist:
|
|
| username | firstname | lastname | email |
|
|
| student1 | Student | 1 | student1@example.com |
|
|
| teacher1 | Teacher | 1 | teacher1@example.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 |
|
|
|
|
@javascript
|
|
Scenario: Students can manage their approved entries to a database
|
|
Given the following "activity" exists:
|
|
| activity | data |
|
|
| course | C1 |
|
|
| idnumber | Test database name |
|
|
| name | Test database name |
|
|
| approval | 1 |
|
|
| manageapproved | 1 |
|
|
And the following "mod_data > fields" exist:
|
|
| database | type | name | description |
|
|
| Test database name | text | Test field name | Test field description |
|
|
And the following "mod_data > templates" exist:
|
|
| database | name |
|
|
| Test database name | singletemplate |
|
|
| Test database name | listtemplate |
|
|
| Test database name | addtemplate |
|
|
| Test database name | asearchtemplate |
|
|
| Test database name | rsstemplate |
|
|
And the following "mod_data > entries" exist:
|
|
| database | user | Test field name |
|
|
| Test database name | student1 | Student entry |
|
|
# Approve the student's entry as a teacher.
|
|
And I am on the "Test database name" "data activity" page logged in as teacher1
|
|
And I open the action menu in ".defaulttemplate-listentry" "css_element"
|
|
And I choose "Approve" in the open action menu
|
|
And I log out
|
|
# Make sure the student can still edit their entry after it's approved.
|
|
When I am on the "Test database name" "data activity" page logged in as student1
|
|
Then I should see "Student entry"
|
|
And "Edit" "link" should exist
|
|
|
|
@javascript
|
|
Scenario: Students can not manage their approved entries to a database
|
|
# Create database activity and don't allow editing of approved entries.
|
|
Given the following "activity" exists:
|
|
| activity | data |
|
|
| course | C1 |
|
|
| idnumber | Test database name |
|
|
| name | Test database name |
|
|
| approval | 1 |
|
|
| manageapproved | 0 |
|
|
And the following "mod_data > fields" exist:
|
|
| database | type | name | description |
|
|
| Test database name | text | Test field name | Test field description |
|
|
And the following "mod_data > templates" exist:
|
|
| database | name |
|
|
| Test database name | singletemplate |
|
|
| Test database name | listtemplate |
|
|
| Test database name | addtemplate |
|
|
| Test database name | asearchtemplate |
|
|
| Test database name | rsstemplate |
|
|
And the following "mod_data > entries" exist:
|
|
| database | user | Test field name |
|
|
| Test database name | student1 | Student entry |
|
|
# Approve the student's entry as a teacher.
|
|
And I am on the "Test database name" "data activity" page logged in as teacher1
|
|
And I open the action menu in ".defaulttemplate-listentry" "css_element"
|
|
And I choose "Approve" in the open action menu
|
|
And I log out
|
|
# Make sure the student isn't able to edit their entry after it's approved.
|
|
When I am on the "Test database name" "data activity" page logged in as student1
|
|
Then "Edit" "link" should not exist
|
|
And I should see "Student entry"
|