diff options
Diffstat (limited to 'modules/simpletest/tests/module_test.module')
-rw-r--r-- | modules/simpletest/tests/module_test.module | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/modules/simpletest/tests/module_test.module b/modules/simpletest/tests/module_test.module index d10a2935f..498865ff4 100644 --- a/modules/simpletest/tests/module_test.module +++ b/modules/simpletest/tests/module_test.module @@ -9,3 +9,31 @@ function module_test_permission() { 'module_test perm' => t('example perm for module_test module'), ); } + +/** + * Implements hook_system_info_alter(). + * + * Manipulate module dependencies to test dependency chains. + */ +function module_test_system_info_alter(&$info, $file, $type) { + if (variable_get('dependency_test', FALSE) == 'missing dependency') { + if ($file->name == 'forum') { + // Make forum module depend on poll. + $info['dependencies'][] = 'poll'; + } + elseif ($file->name == 'poll') { + // Make poll depend on a made-up module. + $info['dependencies'][] = 'foo'; + } + } + elseif (variable_get('dependency_test', FALSE) == 'dependency') { + if ($file->name == 'forum') { + // Make the forum module depend on poll. + $info['dependencies'][] = 'poll'; + } + elseif ($file->name == 'poll') { + // Make poll depend on php module. + $info['dependencies'][] = 'php'; + } + } +}
\ No newline at end of file |