mirror of
https://github.com/moodle/moodle.git
synced 2025-04-11 11:23:52 +02:00
MDL-78597 mod_lti: Add test for manually configured instance editing
This adds a single scenario covering all the expected behavior for those existing, manually configured tools. It also removes any tests dealing with creation of manually configured instances, which is not supported any more.
This commit is contained in:
parent
9914870b7d
commit
5c737525d8
mod/lti/tests
@ -58,3 +58,85 @@ Feature: Add tools
|
||||
And the "Tool URL" "field" should be disabled
|
||||
And I click on "Preconfigured tool" "select"
|
||||
And I should not see "Automatic, based on tool URL"
|
||||
|
||||
@javascript
|
||||
Scenario: Editing a (deprecated) manually configured activity instance, confirming that config changes aren't possible
|
||||
Given the following "activities" exist:
|
||||
| activity | name | course | toolurl |
|
||||
| lti | A manual tool | C1 | /mod/lti/tests/fixtures/ims_cartridge_basic_lti_link.xml |
|
||||
# Add a course tool with the same URL as that of the manually configured instance (the tool URL found in the above cartridge).
|
||||
# This would normally be domain-matched during edit, resulting in the assignment of a preconfigured tool to the instance.
|
||||
# In this case, because config changes and domain matching are disabled, the test confirms this doesn't take place.
|
||||
And the following "mod_lti > course tools" exist:
|
||||
| name | baseurl | course | lti_sendname | lti_sendemailaddr | lti_acceptgrades |
|
||||
| Course tool 2 | http://www.example.com/lti/provider.php | C1 | 0 | 1 | 2 |
|
||||
When I am on the "A manual tool" "lti activity editing" page logged in as teacher1
|
||||
Then I should see "Manually configured External tool activities are no longer supported"
|
||||
And I follow "Show more..."
|
||||
And I expand all fieldsets
|
||||
# The privacy values below represent the existing values of the privacy settings, before saving and inheriting from the
|
||||
# domain-matched tool values.
|
||||
And the following fields match these values:
|
||||
| Activity name | A manual tool |
|
||||
| id_showdescription | 0 |
|
||||
| Consumer key | 12345 |
|
||||
| Icon URL | http://download.moodle.org/unittest/test.jpg |
|
||||
| Secure icon URL | https://download.moodle.org/unittest/test.jpg |
|
||||
| Tool URL | http://www.example.com/lti/provider.php |
|
||||
| id_instructorchoicesendname | 1 |
|
||||
| id_instructorchoicesendemailaddr | 1 |
|
||||
| id_instructorchoiceacceptgrades | 1 |
|
||||
And the "Activity name" "field" should be enabled
|
||||
And the "Activity description" "field" should be enabled
|
||||
And the "id_showdescription" "checkbox" should be enabled
|
||||
And the "id_showtitlelaunch" "checkbox" should be enabled
|
||||
And the "id_showdescriptionlaunch" "checkbox" should be enabled
|
||||
And the "Secure tool URL" "field" should be disabled
|
||||
And the "Consumer key" "field" should be disabled
|
||||
And I click on "Reveal" "icon"
|
||||
And I should see "secret"
|
||||
And the "Custom parameters" "field" should be disabled
|
||||
And the "Icon URL" "field" should be disabled
|
||||
And the "Secure icon URL" "field" should be disabled
|
||||
And I should see "Automatic, based on tool URL"
|
||||
And the "Select content" "button" should be disabled
|
||||
And the "Tool URL" "field" should be disabled
|
||||
And the "id_instructorchoicesendname" "checkbox" should be disabled
|
||||
And the "id_instructorchoicesendemailaddr" "checkbox" should be disabled
|
||||
And the "id_instructorchoiceacceptgrades" "checkbox" should be disabled
|
||||
And I set the following fields to these values:
|
||||
| Activity name | A manual tool name edited |
|
||||
| id_showdescription | 1 |
|
||||
And I press "Save and return to course"
|
||||
And I am on the "A manual tool" "lti activity editing" page logged in as teacher1
|
||||
And I follow "Show more..."
|
||||
# This confirms that the instance config, while locked to user edits, still inherits privacy settings from the tool which
|
||||
# it was domain-matched to.
|
||||
And the following fields match these values:
|
||||
| Activity name | A manual tool name edited |
|
||||
| id_showdescription | 1 |
|
||||
| Consumer key | 12345 |
|
||||
| Icon URL | http://download.moodle.org/unittest/test.jpg |
|
||||
| Secure icon URL | https://download.moodle.org/unittest/test.jpg |
|
||||
| Tool URL | http://www.example.com/lti/provider.php |
|
||||
| id_instructorchoicesendname | 0 |
|
||||
| id_instructorchoicesendemailaddr | 1 |
|
||||
| id_instructorchoiceacceptgrades | 2 |
|
||||
And the "Activity name" "field" should be enabled
|
||||
And the "Activity description" "field" should be enabled
|
||||
And the "id_showdescription" "checkbox" should be enabled
|
||||
And the "id_showtitlelaunch" "checkbox" should be enabled
|
||||
And the "id_showdescriptionlaunch" "checkbox" should be enabled
|
||||
And the "Secure tool URL" "field" should be disabled
|
||||
And the "Consumer key" "field" should be disabled
|
||||
And I click on "Reveal" "icon"
|
||||
And I should see "secret"
|
||||
And the "Custom parameters" "field" should be disabled
|
||||
And the "Icon URL" "field" should be disabled
|
||||
And the "Secure icon URL" "field" should be disabled
|
||||
And I should see "Automatic, based on tool URL"
|
||||
And the "Select content" "button" should be disabled
|
||||
And the "Tool URL" "field" should be disabled
|
||||
And the "id_instructorchoicesendname" "checkbox" should be disabled
|
||||
And the "id_instructorchoicesendemailaddr" "checkbox" should be disabled
|
||||
And the "id_instructorchoiceacceptgrades" "checkbox" should be disabled
|
||||
|
@ -1,35 +0,0 @@
|
||||
@mod @mod_lti
|
||||
Feature: Add preconfigured tools via teacher interface
|
||||
In order to provide reusable activities for teachers
|
||||
As a teacher
|
||||
I need to be able to add preconfigured tools
|
||||
|
||||
Background:
|
||||
Given the following "users" exist:
|
||||
| username | firstname | lastname | email |
|
||||
| teacher1 | Terry1 | Teacher1 | 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 |
|
||||
And the following "activities" exist:
|
||||
| activity | course | name | typeid | toolurl |
|
||||
| lti | C1 | Test tool | 0 | /mod/lti/tests/fixtures/ims_cartridge_basic_lti_link.xml |
|
||||
|
||||
Scenario: Add a tool activity instance from a cartridge
|
||||
Given I am on the "Test tool" "lti activity editing" page logged in as teacher1
|
||||
And I expand all fieldsets
|
||||
Then the field "Tool URL" matches value "http://www.example.com/lti/provider.php"
|
||||
And the field "Secure tool URL" matches value "https://www.example.com/lti/provider.php"
|
||||
And the field "Icon URL" matches value "http://download.moodle.org/unittest/test.jpg"
|
||||
And the field "Secure icon URL" matches value "https://download.moodle.org/unittest/test.jpg"
|
||||
|
||||
@javascript @_switch_window
|
||||
Scenario: Add and use a preconfigured tool
|
||||
Given I am on the "Test tool" "lti activity editing" page logged in as teacher1
|
||||
And I set the field "Tool URL" to local url "/mod/lti/tests/fixtures/tool_provider.php"
|
||||
And I press "Save and display"
|
||||
When I switch to "contentframe" iframe
|
||||
Then I should see "This represents a tool provider"
|
@ -39,43 +39,3 @@ Feature: Content-Item support
|
||||
And I choose "Edit settings" in the open action menu
|
||||
Then the field "Preconfigured tool" matches value "Teaching Tool 1"
|
||||
And the "Select content" "button" should be enabled
|
||||
|
||||
@javascript
|
||||
Scenario: Changing preconfigured tool selection
|
||||
Given the following "mod_lti > tool types" exist:
|
||||
| name | description | baseurl | coursevisible | state |
|
||||
| Teaching Tool 2 | Another description | /mod/lti/tests/fixtures/tool_provider.php | 2 | 1 |
|
||||
# Create a manually configured instance using the generator (this isn't possible via the UI any more).
|
||||
And the following "activities" exist:
|
||||
| activity | course | name | typeid | toolurl |
|
||||
| lti | C1 | Test tool activity 1 | 0 | /mod/lti/tests/fixtures/tool_provider.php |
|
||||
When I am on the "Test tool activity 1" "lti activity editing" page logged in as teacher1
|
||||
# On load with no preconfigured tool selected: Select content button - disabled, Tool URL - enabled.
|
||||
And the field "Preconfigured tool" matches value "Automatic, based on tool URL"
|
||||
And I set the field "Activity name" to "Test tool activity 1"
|
||||
And the "Select content" "button" should be disabled
|
||||
And the "Tool URL" "field" should be enabled
|
||||
# Selecting a tool that supports deep linking: Select content button - enabled, Tool URL - enabled.
|
||||
And I set the field "Preconfigured tool" to "Teaching Tool 1"
|
||||
And I set the field "Activity name" to "Test tool activity 1"
|
||||
Then the "Select content" "button" should be enabled
|
||||
And the "Tool URL" "field" should be enabled
|
||||
# Selecting a tool that does not support deep linking: Select content button - disabled, Tool URL - disabled.
|
||||
And I set the field "Preconfigured tool" to "Teaching Tool 2"
|
||||
And I set the field "Activity name" to "Test tool activity 1"
|
||||
And the "Select content" "button" should be disabled
|
||||
And the "Tool URL" "field" should be disabled
|
||||
# Not selecting any tool: Select content button - disabled, Tool URL - enabled.
|
||||
And I set the field "Preconfigured tool" to "Automatic, based on tool URL"
|
||||
And I set the field "Activity name" to "Test tool activity 1"
|
||||
And the "Select content" "button" should be disabled
|
||||
And the "Tool URL" "field" should be enabled
|
||||
|
||||
@javascript
|
||||
Scenario: Editing a manually configured external tool
|
||||
Given the following "activities" exist:
|
||||
| activity | course | name | typeid | toolurl |
|
||||
| lti | C1 | Test tool | 0 | /mod/lti/tests/fixtures/tool_provider.php |
|
||||
And I am on the "Test tool" "lti activity editing" page logged in as teacher1
|
||||
Then the field "Preconfigured tool" matches value "Automatic, based on tool URL"
|
||||
And the "Select content" "button" should be disabled
|
||||
|
@ -68,7 +68,7 @@ class mod_lti_generator extends testing_module_generator {
|
||||
$record->instructorchoiceacceptgrades = 1;
|
||||
}
|
||||
if (!isset($record->typeid)) {
|
||||
$record->typeid = null;
|
||||
$record->typeid = 0;
|
||||
}
|
||||
return parent::create_instance($record, (array)$options);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user