Issue #1006714 by Steven Jones, chx, mr.baileys, xjm, carlos8f: Fixed Test broken: drupal_get_path() doesn't work for profiles.
parent
578e5ff5c4
commit
a77ed6e2ca
|
@ -867,6 +867,11 @@ function drupal_get_filename($type, $name, $filename = NULL) {
|
|||
// drupal_static().
|
||||
static $files = array(), $dirs = array();
|
||||
|
||||
// Profiles are a special case: they have a fixed location and naming.
|
||||
if ($type == 'profile') {
|
||||
$profile_filename = "profiles/$name/$name.profile";
|
||||
$files[$type][$name] = file_exists($profile_filename) ? $profile_filename : FALSE;
|
||||
}
|
||||
if (!isset($files[$type])) {
|
||||
$files[$type] = array();
|
||||
}
|
||||
|
|
|
@ -350,11 +350,18 @@ class BootstrapGetFilenameTestCase extends DrupalUnitTestCase {
|
|||
// Retrieving the location of a theme engine.
|
||||
$this->assertIdentical(drupal_get_filename('theme_engine', 'phptemplate'), 'core/themes/engines/phptemplate/phptemplate.engine', t('Retrieve theme engine location.'));
|
||||
|
||||
// @todo: This test is broken because drupal_get_filename() does not work
|
||||
// with profiles at all. See this core issue: http://drupal.org/node/1006714
|
||||
// Retrieving the location of a profile. Profiles are a special case with
|
||||
// a fixed location and naming.
|
||||
$this->assertIdentical(drupal_get_filename('profile', 'standard'), 'profiles/standard/standard.profile', t('Retrieve install profile location.'));
|
||||
|
||||
// Retrieving a file that is definitely not stored in the database.
|
||||
//$this->assertIdentical(drupal_get_filename('profile', 'standard'), 'profiles/standard/standard.profile', t('Retrieve install profile location.'));
|
||||
// When a file is not found in the database cache, drupal_get_filename()
|
||||
// searches several locations on the filesystem, including the core/
|
||||
// directory. We use the '.script' extension below because this is a
|
||||
// non-existent filetype that will definitely not exist in the database.
|
||||
// Since there is already a core/scripts directory, drupal_get_filename()
|
||||
// will automatically check there for 'script' files, just as it does
|
||||
// for (e.g.) 'module' files in core/modules.
|
||||
$this->assertIdentical(drupal_get_filename('script', 'test'), 'core/scripts/test.script', t('Retrieve test script location.'));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
This file is for testing purposes only.
|
||||
|
||||
It is used to test the functionality of drupal_get_filename(). See
|
||||
BootstrapGetFilenameTestCase::testDrupalGetFilename() for more information.
|
Loading…
Reference in New Issue