boot.test

File

modules/simpletest/tests/boot.test

View source
<?php


/**
 * Perform early bootstrap tests.
 */
class EarlyBootstrapTestCase extends DrupalWebTestCase {
    public static function getInfo() {
        return array(
            'name' => 'Early bootstrap test',
            'description' => 'Confirm that calling module_implements() during early bootstrap does not pollute the module_implements() cache.',
            'group' => 'System',
        );
    }
    function setUp() {
        parent::setUp('boot_test_1', 'boot_test_2');
    }
    
    /**
     * Test hook_boot() on both regular and "early exit" pages.
     */
    public function testHookBoot() {
        $paths = array(
            '',
            'early_exit',
        );
        foreach ($paths as $path) {
            // Empty the module_implements() caches.
            module_implements(NULL, FALSE, TRUE);
            // Do a request to the front page, which will call module_implements()
            // during hook_boot().
            $this->drupalGet($path);
            // Reset the static cache so we get implementation data from the persistent
            // cache.
            drupal_static_reset();
            // Make sure we get a full list of all modules implementing hook_help().
            $modules = module_implements('help');
            $this->assertTrue(in_array('boot_test_2', $modules));
        }
    }

}

Classes

Title Deprecated Summary
EarlyBootstrapTestCase Perform early bootstrap tests.

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.