function SimplifiedModulesTestCase::testEnableDisableHiddenSubModule in Simplified Modules 7
Test enabling and disabling a hidden submodules in various combinations.
File
- ./
simplified_modules.test, line 26
Class
- SimplifiedModulesTestCase
- Tests for auto-enabling and disabling hidden submodules and dependencies.
Code
function testEnableDisableHiddenSubModule() {
// Trigger the submodules we want to be hidden for this test.
variable_set('simplified_modules_test_submodules', TRUE);
// Make sure that the two modules which the submodule depends on are both
// disabled at the beginning. The submodule should also start off as
// disabled.
$this
->setModuleStatus(array(
'forum' => FALSE,
'poll' => FALSE,
));
$this
->assertFalse(module_exists('simplified_modules_test_submodule'), t('The submodule starts off as disabled.'));
// Enable both modules at the same time. The submodule should automatically
// be enabled.
$this
->setModuleStatus(array(
'forum' => TRUE,
'poll' => TRUE,
));
$this
->assertTrue(module_exists('simplified_modules_test_submodule'), t('The submodule was automatically enabled.'));
// Disable one of the them. The submodule should be automatically disabled.
$this
->setModuleStatus(array(
'forum' => FALSE,
));
$this
->assertFalse(module_exists('simplified_modules_test_submodule'), t('The submodule was automatically disabled.'));
// Disable the other while enabling the first. The submodule should remain
// disabled.
$this
->setModuleStatus(array(
'forum' => TRUE,
'poll' => FALSE,
));
$this
->assertFalse(module_exists('simplified_modules_test_submodule'), t('The submodule remained disabled since its dependencies were not both enabled.'));
// Enabling the second module should now result in the submodule being
// enabled again.
$this
->setModuleStatus(array(
'poll' => TRUE,
));
$this
->assertTrue(module_exists('simplified_modules_test_submodule'), t('The submodule was automatically enabled.'));
}