| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 | <?php
use Luticate\Utils\Controller\LuticateApplication;
use Luticate\Utils\Dbo\LuDboDeserializeException;
use Luticate\Utils\Dbo\LuBoolDboArray;
/**
 * Created by PhpStorm.
 * User: robin
 * Date: 5/29/16
 * Time: 2:57 PM
 */
class LuApplicationTest extends \PHPUnit_Framework_TestCase
{
    public function testGetDatabases1()
    {
        $db1 = ["name" => "mydb", "other_info" => 42];
        $dbs = [$db1];
        $this->assertSame($db1, LuticateApplication::getDatabase($db1["name"], $dbs));
    }
    
    public function testGetDatabases2()
    {
        $db1 = ["name" => "mydb", "other_info" => 42];
        $dbs = [$db1];
        $this->assertNull(LuticateApplication::getDatabase("db", $dbs));
    }
    public function testGetDatabases3()
    {
        $db1 = ["name" => "mydb", "other_info" => 42];
        $db2 = ["name" => "myotherdb", "other_info" => 42];
        $dbs = [$db1, $db2];
        $this->assertSame($db2, LuticateApplication::getDatabase($db2["name"], $dbs));
    }
    public function testGetDatabases4()
    {
        $db1 = ["name" => "mydb", "other_info" => 42];
        $db2 = ["name" => "myotherdb", "other_info" => 42];
        $dbs = [$db1, $db2];
        $this->assertNull(LuticateApplication::getDatabase("anotherdb", $dbs));
    }
    public function testResolveDatabases1()
    {
        $db1 = ["name" => "mydb", "other_info" => 42];
        $dbs = [$db1, "mydb"];
        $this->assertSame([$db1, $db1], LuticateApplication::resolveDatabases($dbs));
    }
    public function testResolveDatabases2()
    {
        $db1 = ["name" => "mydb", "other_info" => 42];
        $dbs = [$db1, "mydb2"];
        $this->assertSame([$db1], LuticateApplication::resolveDatabases($dbs));
    }
    public function testResolveDatabases3()
    {
        $db1 = ["name" => "mydb", "other_info" => 42];
        $dbs = ["mydb2", $db1];
        $this->assertSame([$db1], LuticateApplication::resolveDatabases($dbs));
    }
    public function testResolveDatabases4()
    {
        $db1 = ["name" => "mydb", "other_info" => 42];
        $dbs = ["mydb", $db1];
        $this->assertSame([$db1, $db1], LuticateApplication::resolveDatabases($dbs));
    }
    public function testSettings1()
    {
        $this->assertSame(42, LuticateApplication::getInstance()->getSetting("test"));
    }
    public function testSettings2()
    {
        $this->assertNull(LuticateApplication::getInstance()->getSetting("not-a-setting"));
    }
    public function testSettings3()
    {
        putenv("lu_setting_test=24");
        $this->assertSame("24", LuticateApplication::getInstance()->getSetting("test"));
    }
}
 |