From a306fd7a18ca8ab778773e99f016f0771d6d5b21 Mon Sep 17 00:00:00 2001 From: Sara Arjona Date: Tue, 16 Feb 2021 10:45:25 +0100 Subject: [PATCH] MDL-70911 core_badges: Move "External backpack" to badges settings Setting "External backpack connection" has been moved from "Backpack settings" to "Badges settings" in order to make easier to find and configure it. Some extra tests have been added to cover existing behaviour and confirm is still working as expected. --- admin/settings/badges.php | 8 ++++---- badges/tests/behat/backpack.feature | 28 ++++++++++++++++++++++++++-- 2 files changed, 30 insertions(+), 6 deletions(-) diff --git a/admin/settings/badges.php b/admin/settings/badges.php index a97097fea3b..6e4ca98be78 100644 --- a/admin/settings/badges.php +++ b/admin/settings/badges.php @@ -71,6 +71,10 @@ if (($hassiteconfig || has_any_capability(array( new lang_string('allowcoursebadges', 'badges'), new lang_string('allowcoursebadges_desc', 'badges'), 1)); + $globalsettings->add(new admin_setting_configcheckbox('badges_allowexternalbackpack', + new lang_string('allowexternalbackpack', 'badges'), + new lang_string('allowexternalbackpack_desc', 'badges'), 1)); + $ADMIN->add('badges', $globalsettings); $ADMIN->add('badges', @@ -100,10 +104,6 @@ if (($hassiteconfig || has_any_capability(array( $backpacksettings = new admin_settingpage('backpacksettings', new lang_string('backpacksettings', 'badges'), array('moodle/badges:manageglobalsettings'), empty($CFG->enablebadges)); - $backpacksettings->add(new admin_setting_configcheckbox('badges_allowexternalbackpack', - new lang_string('allowexternalbackpack', 'badges'), - new lang_string('allowexternalbackpack_desc', 'badges'), 1)); - $backpacksettings->add(new admin_setting_configselect('badges_site_backpack', new lang_string('sitebackpack', 'badges'), new lang_string('sitebackpack_help', 'badges'), diff --git a/badges/tests/behat/backpack.feature b/badges/tests/behat/backpack.feature index 3a979f6def0..1462fe9d1cd 100644 --- a/badges/tests/behat/backpack.feature +++ b/badges/tests/behat/backpack.feature @@ -17,13 +17,34 @@ Feature: Backpack badges And I set the field "Badge issuer email address" to "testuser@example.com" And I log out + @javascript + Scenario: If external backpack connection is disabled, backpack settings should not be displayed + Given I am on homepage + And I log in as "admin" + And I navigate to "Badges > Badges settings" in site administration + And I set the following fields to these values: + | External backpack connection | 0 | + And I press "Save changes" + When I navigate to "Badges" in site administration + Then I should not see "Manage backpacks" + And I navigate to "Badges > Badges settings" in site administration + And I set the following fields to these values: + | External backpack connection | 1 | + And I press "Save changes" + And I am on homepage + And I navigate to "Badges" in site administration + And I should see "Manage backpacks" + @javascript Scenario: Verify backback settings Given I am on homepage And I log in as "admin" - And I navigate to "Badges > Backpack settings" in site administration + And I navigate to "Badges > Badges settings" in site administration And I set the following fields to these values: | External backpack connection | 1 | + And I press "Save changes" + And I navigate to "Badges > Backpack settings" in site administration + And I set the following fields to these values: | Active external backpack | https://dc.imsglobal.org | And I press "Save changes" And I navigate to "Badges > Add a new badge" in site administration @@ -57,9 +78,12 @@ Feature: Backpack badges Scenario: User has been connected backpack Given I am on homepage And I log in as "admin" - And I navigate to "Badges > Backpack settings" in site administration + And I navigate to "Badges > Badges settings" in site administration And I set the following fields to these values: | External backpack connection | 1 | + And I press "Save changes" + And I navigate to "Badges > Backpack settings" in site administration + And I set the following fields to these values: | Active external backpack | https://dc.imsglobal.org | And I press "Save changes" And I navigate to "Badges > Add a new badge" in site administration