Пример #1
0
 public function testInitialize()
 {
     try {
         EQM::initialize(null, [], 'test0');
     } catch (EQMException $e) {
         $this->assertEquals($e->getMessage(), 'The given paramter is not a valid PDO connection object');
     }
     EQM::initialize(new \PDO('mysql:host=localhost;dbname=orm_test', 'root', 'root'), [], 'test1');
     $this->assertTrue(EQM::isInitialized('test1'));
     EQM::initialize(new \PDO('mysql:host=localhost;dbname=orm_test', 'root', 'root'), [EQM::CONVENTION_HANDLER => new ClassicConventionHandler()], 'test2');
     $this->assertTrue(EQM::isInitialized('test2'));
     EQM::initialize(new \PDO('mysql:host=localhost;dbname=orm_test', 'root', 'root'), [EQM::SQL_BUILDER => new MySqlBuilder()], 'test3');
     $this->assertTrue(EQM::isInitialized('test3'));
 }
Пример #2
0
namespace Bootstrap;

require_once '../vendor/autoload.php';
use Monolog\Logger;
use Monolog\Handler\StreamHandler;
use troba\EQM\EQM;
use troba\EQM\ClassicConventionHandler;
use troba\EQM\EQMException;
// create logger object
$logger = new Logger('troba-test', [new StreamHandler(__DIR__ . '/troba-tests.log', Logger::DEBUG)]);
// Connect to two databases
// default
EQM::initialize(new \PDO('mysql:host=localhost;dbname=orm_test', 'root', 'root', [\PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'UTF8'"]), [EQM::LOGGER => $logger]);
// second_db
EQM::initialize(new \PDO('mysql:host=localhost;dbname=orm_test2', 'root', 'root', [\PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'UTF8'"]), [EQM::CONVENTION_HANDLER => new ClassicConventionHandler(), EQM::LOGGER => $logger], 'second_db');
// Delete all tables from 'default' connection
try {
    EQM::nativeExecute("DROP TABLE Company");
} catch (EQMException $e) {
    $logger->error($e->getMessage());
}
try {
    EQM::nativeExecute("DROP TABLE Project");
} catch (EQMException $e) {
    $logger->error($e->getMessage());
}
try {
    EQM::nativeExecute("DROP TABLE ProjectActivity");
} catch (EQMException $e) {
    $logger->error($e->getMessage());