Modules

abstract Unittest_Database_TestCase
extends Kohana_Unittest_Database_TestCase
extends PHPUnit_Extensions_Database_TestCase
extends Kodoc_Missing
extends Kohana_Kodoc_Missing

Transparent extension for Kohana_Unittest_Database_TestCase

Provides some unittest helpers and allows a kohana database connection to be used to connect to the database[!!] This class, or a class parent, could not be found or loaded. This could be caused by a missing module or other dependancy. The documentation for class may not be complete!

package
Kohana/UnitTest
author
Kohana Team
copyright
© 2008-2009 Kohana Team
license
https://kohana.top/license

Class declared in MODPATH/unittest/classes/Unittest/Database/TestCase.php on line 14.

Properties

protected string $_database_connection

The kohana database connection that PHPUnit should use for this test

Default value:
string(7) "default"

protected Kohana_Unittest_Helpers $_helpers

A set of unittest helpers that are shared between normal / database testcases

Default value:
NULL

protected boolean $backupGlobals

Make sure PHPUnit backs up globals

Default value:
bool FALSE

protected array $environmentDefault

A default set of environment to be applied before each test

Default value:
array(0) 

Methods

public cleanCacheDir( ) (defined in Kohana_Unittest_Database_TestCase)

Removes all kohana related cache files in the cache directory

Source Code

public function cleanCacheDir()
{
    return Kohana_Unittest_Helpers::clean_cache_dir();
}

public dirSeparator( string $path ) (defined in Kohana_Unittest_Database_TestCase)

Helper function that replaces all occurences of '/' with the OS-specific directory separator

Parameters

  • string $path required - The path to act on

Return Values

  • string

Source Code

public function dirSeparator($path)
{
    return Kohana_Unittest_Helpers::dir_separator($path);
}

public getConnection( ) (defined in Kohana_Unittest_Database_TestCase)

Creates a connection to the unittesting database

Return Values

  • PDO

Source Code

public function getConnection()
{
    // Get the unittesting db connection
    $config = Kohana::$config->load('database.' . $this->_database_connection);

    if (strtolower($config['type']) !== 'pdo') {
        $config['connection']['dsn'] = strtolower($config['type']) . ':' .
            'host=' . $config['connection']['hostname'] . ';' .
            'dbname=' . $config['connection']['database'];
    }

    $pdo = new PDO(
        $config['connection']['dsn'], $config['connection']['username'], $config['connection']['password']
    );

    return $this->createDefaultDBConnection($pdo, $config['connection']['database']);
}

public getKohanaConnection( ) (defined in Kohana_Unittest_Database_TestCase)

Gets a connection to the unittest database

Return Values

  • Kohana_Database - The database connection

Source Code

public function getKohanaConnection()
{
    return Database::instance(Kohana::$config->load('unittest')->db_connection);
}

public hasInternet( ) (defined in Kohana_Unittest_Database_TestCase)

Check for internet connectivity

Return Values

  • boolean - Whether an internet connection is available

Source Code

public function hasInternet()
{
    return Kohana_Unittest_Helpers::has_internet();
}

public setEnvironment( array $environment ) (defined in Kohana_Unittest_Database_TestCase)

Allows easy setting & backing up of enviroment config

Option types are checked in the following order:

  • Server Var
  • Static Variable
  • Config option

Parameters

  • array $environment required - List of environment to set

Source Code

public function setEnvironment(array $environment)
{
    return $this->_helpers->set_environment($environment);
}

public setUp( ) (defined in Kohana_Unittest_Database_TestCase)

Creates a predefined environment using the default environment

Extending classes that have their own setUp() should call parent::setUp()

Source Code

public function setUp()
{
    $this->_helpers = new Kohana_Unittest_Helpers;

    $this->setEnvironment($this->environmentDefault);

    return parent::setUp();
}

public tearDown( ) (defined in Kohana_Unittest_Database_TestCase)

Restores the original environment overriden with setEnvironment()

Extending classes that have their own tearDown() should call parent::tearDown()

Source Code

public function tearDown()
{
    $this->_helpers->restore_environment();

    return parent::tearDown();
}

public static create_class( string $class ) (defined in Kohana_Kodoc_Missing)

Creates classes when they are otherwise not found.

Kodoc::create_class('ThisClassDoesNotExist');

All classes created will extend Kodoc_Missing.

Parameters

  • string $class required - Class name

Tags

  • Since - 3.0.7

Return Values

  • boolean

Source Code

public static function create_class($class)
{
    if (!class_exists($class)) {
        // Create a new missing class
        eval("class {$class} extends Kodoc_Missing {}");
    }

    return true;
}