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')); }
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());