/** * Sets up the fixture, for example, opens a network connection. * This method is called before a test is executed. * * @access protected */ protected function setUp() { if (\TestHelperMw::getConfig()->get('resource/db/adapter', false) === false) { $this->markTestSkipped('No database configured'); } $this->config = array('siteid' => 1); $this->config['search'] = array('cache.id' => array('label' => 'Cache ID', 'code' => 'cache.id', 'internalcode' => 'id', 'type' => 'string', 'internaltype' => \Aimeos\MW\DB\Statement\Base::PARAM_STR), 'cache.siteid' => array('label' => 'Cache site ID', 'code' => 'cache.siteid', 'internalcode' => 'siteid', 'type' => 'integer', 'internaltype' => \Aimeos\MW\DB\Statement\Base::PARAM_INT), 'cache.value' => array('label' => 'Cached value', 'code' => 'cache.value', 'internalcode' => 'value', 'type' => 'string', 'internaltype' => \Aimeos\MW\DB\Statement\Base::PARAM_STR), 'cache.expire' => array('label' => 'Cache expiration date', 'code' => 'cache.expire', 'internalcode' => 'expire', 'type' => 'datetime', 'internaltype' => \Aimeos\MW\DB\Statement\Base::PARAM_STR), 'cache.tag.name' => array('label' => 'Cache tag name', 'code' => 'cache.tag.name', 'internalcode' => 'tname', 'type' => 'string', 'internaltype' => \Aimeos\MW\DB\Statement\Base::PARAM_STR)); $this->config['sql'] = array('delete' => ' DELETE FROM "mw_cache_test" WHERE "siteid" = ? AND :cond ', 'deletebytag' => ' DELETE FROM "mw_cache_test" WHERE "siteid" = ? AND id IN ( SELECT "tid" FROM "mw_cache_tag_test" WHERE "tsiteid" = ? AND :cond ) ', 'get' => ' SELECT "id", "value", "expire" FROM "mw_cache_test" WHERE "siteid" = ? AND :cond ', 'getbytag' => ' SELECT "id", "value", "expire" FROM "mw_cache_test" JOIN "mw_cache_tag_test" ON "tid" = "id" WHERE siteid = ? AND tsiteid = ? AND :cond ', 'set' => ' INSERT INTO "mw_cache_test" ( "id", "siteid", "expire", "value" ) VALUES ( ?, ?, ?, ? ) ', 'settag' => ' INSERT INTO "mw_cache_tag_test" ( "tid", "tsiteid", "tname" ) VALUES ( ?, ?, ? ) '); $this->dbm = \TestHelperMw::getDBManager(); $conn = $this->dbm->acquire(); $sql = 'DROP TABLE IF EXISTS "mw_cache_tag_test"'; $conn->create($sql)->execute()->finish(); $sql = 'DROP TABLE IF EXISTS "mw_cache_test"'; $conn->create($sql)->execute()->finish(); $sql = ' CREATE TABLE IF NOT EXISTS "mw_cache_test" ( "id" VARCHAR(255) NOT NULL, "siteid" INTEGER NULL, "expire" DATETIME NULL, "value" MEDIUMTEXT NOT NULL, KEY ("expire"), CONSTRAINT UNIQUE KEY ("id", "siteid") ); '; $conn->create($sql)->execute()->finish(); $sql = ' CREATE TABLE IF NOT EXISTS "mw_cache_tag_test" ( "tid" VARCHAR(255) NOT NULL, "tsiteid" INTEGER NULL, "tname" VARCHAR(255) NOT NULL, CONSTRAINT UNIQUE ("tid", "tsiteid", "tname"), CONSTRAINT FOREIGN KEY ("tid") REFERENCES "mw_cache_test" ("id") ON DELETE CASCADE ); '; $conn->create($sql)->execute()->finish(); $sql = 'INSERT INTO "mw_cache_test" ("id", "siteid", "expire", "value") VALUES (\'t:1\', 1, NULL, \'test 1\')'; $conn->create($sql)->execute()->finish(); $sql = 'INSERT INTO "mw_cache_test" ("id", "siteid", "expire", "value") VALUES (\'t:2\', 1, \'2000-01-01 00:00:00\', \'test 2\')'; $conn->create($sql)->execute()->finish(); $sql = 'INSERT INTO "mw_cache_tag_test" ("tid", "tsiteid", "tname") VALUES (\'t:1\', 1, \'tag:1\')'; $conn->create($sql)->execute()->finish(); $this->dbm->release($conn); $this->object = new \Aimeos\MW\Cache\DB($this->config, $this->dbm); }
/** * Sets up the fixture, for example, opens a network connection. * This method is called before a test is executed. * * @access protected */ protected function setUp() { if (\TestHelperMw::getConfig()->get('resource/db/adapter', false) === false) { $this->markTestSkipped('No database configured'); } $dbm = \TestHelperMw::getDBManager(); $this->conn = $dbm->acquire(); }
protected function tearDown() { if (($adapter = \TestHelperMw::getConfig()->get('resource/db/adapter', false)) === 'pgsql') { $this->dbm = \TestHelperMw::getDBManager(); $conn = $this->dbm->acquire(); $conn->create('DROP TABLE "mw_setup_dbschema_test"')->execute()->finish(); $this->dbm->release($conn); } }
/** * Sets up the fixture, for example, opens a network connection. * This method is called before a test is executed. * * @access protected */ protected function setUp() { if (\TestHelperMw::getConfig()->get('resource/db/adapter', false) === false) { $this->markTestSkipped('No database configured'); } $dbm = \TestHelperMw::getDBManager(); $conn = $dbm->acquire(); $this->object = new \Aimeos\MW\Criteria\SQL($conn); $dbm->release($conn); }
/** * Tears down the fixture, for example, closes a network connection. * This method is called after a test is executed. * * @access protected */ protected function tearDown() { if (\TestHelperMw::getConfig()->get('resource/db/adapter', false) === false) { return; } $this->dbm = \TestHelperMw::getDBManager(); $conn = $this->dbm->acquire(); $conn->create('DROP TABLE "mw_log_test"')->execute()->finish(); $this->dbm->release($conn); }
protected function setUp() { $config = \TestHelperMw::getConfig(); if ($config->get('resource/db/adapter', false) === false) { $this->markTestSkipped('No database configured'); } $dbm = \TestHelperMw::getDBManager(); $conn = $dbm->acquire(); $schema = new \Aimeos\MW\Setup\DBSchema\Mysql($conn, $config->get('resource/db/database', 'notfound'), 'mysql'); $this->object = new BaseImpl($schema, $conn); $dbm->release($conn); }
/** * Sets up the fixture, for example, opens a network connection. * This method is called before a test is executed. * * @access protected */ protected function setUp() { $config = \TestHelperMw::getConfig(); if ($config->get('resource/db/adapter', false) === false) { $this->markTestSkipped('No database configured'); } $this->dbm = \TestHelperMw::getDBManager(); $conn = $this->dbm->acquire(); $sql = ' CREATE TABLE IF NOT EXISTS "mw_setup_dbschema_test" ( "integer" INTEGER NOT NULL AUTO_INCREMENT, "varchar16" VARCHAR(16) NOT NULL DEFAULT \'default\', "smallint" SMALLINT NOT NULL, "integernull" INTEGER, CONSTRAINT "unq_mwsdt_integer" UNIQUE ("integer") ); '; $conn->create($sql)->execute()->finish(); $conn->create('CREATE INDEX "idx_msdt_smallint" ON "mw_setup_dbschema_test" ("smallint")')->execute()->finish(); $this->object = new \Aimeos\MW\Setup\DBSchema\Mysql($conn, $config->get('resource/db/database', 'notfound')); $this->dbm->release($conn); }
/** * Sets up the fixture, for example, opens a network connection. * This method is called before a test is executed. * * @access protected */ protected function setUp() { if (\TestHelperMw::getConfig()->get('resource/db/adapter', false) === false) { $this->markTestSkipped('No database configured'); } $this->config = array(); $this->config['search'] = array('id' => array('label' => 'Tree node ID', 'code' => 'tree.id', 'internalcode' => 'id', 'type' => 'integer', 'internaltype' => \Aimeos\MW\DB\Statement\Base::PARAM_INT), 'parentid' => array('label' => 'Tree node parent id', 'code' => 'tree.parentid', 'internalcode' => 'parentid', 'type' => 'integer', 'internaltype' => \Aimeos\MW\DB\Statement\Base::PARAM_INT), 'label' => array('label' => 'Tree node name', 'code' => 'tree.label', 'internalcode' => 'label', 'type' => 'string', 'internaltype' => \Aimeos\MW\DB\Statement\Base::PARAM_STR), 'code' => array('label' => 'Tree node code', 'code' => 'tree.code', 'internalcode' => 'code', 'type' => 'string', 'internaltype' => \Aimeos\MW\DB\Statement\Base::PARAM_STR), 'status' => array('label' => 'Tree node status', 'code' => 'tree.status', 'internalcode' => 'status', 'type' => 'boolean', 'internaltype' => \Aimeos\MW\DB\Statement\Base::PARAM_BOOL), 'level' => array('label' => 'Tree node level', 'code' => 'tree.level', 'internalcode' => 'level', 'type' => 'integer', 'internaltype' => \Aimeos\MW\DB\Statement\Base::PARAM_INT), 'left' => array('label' => 'Tree node left number', 'code' => 'tree.left', 'internalcode' => 'nleft', 'type' => 'integer', 'internaltype' => \Aimeos\MW\DB\Statement\Base::PARAM_INT), 'right' => array('label' => 'Tree node right number', 'code' => 'tree.right', 'internalcode' => 'nright', 'type' => 'integer', 'internaltype' => \Aimeos\MW\DB\Statement\Base::PARAM_INT)); $this->config['sql'] = array('delete' => ' DELETE FROM "mw_tree_test" WHERE nleft >= ? AND nright <= ? ', 'get' => ' SELECT node."id", node."label", node."code", node."status", node."level", node."parentid", node."nleft" AS "left", node."nright" AS "right" FROM "mw_tree_test" AS parent, "mw_tree_test" AS node WHERE node.nleft >= parent.nleft AND node.nleft <= parent.nright AND parent.id = ? AND node.level <= parent.level + ? AND :cond ORDER BY node.nleft ', 'insert' => ' INSERT INTO "mw_tree_test" ( label, code, status, parentid, level, nleft, nright ) VALUES ( ?, ?, ?, ?, ?, ?, ? ) ', 'move-left' => ' UPDATE "mw_tree_test" SET nleft = nleft + ?, level = level + ? WHERE nleft >= ? AND nleft <= ? ', 'move-right' => ' UPDATE "mw_tree_test" SET nright = nright + ? WHERE nright >= ? AND nright <= ? ', 'search' => ' SELECT "id", "label", "code", "status", "level", "nleft" AS "left", "nright" AS "right" FROM "mw_tree_test" AS node WHERE nleft >= ? AND nright <= ? AND :cond ORDER BY :order ', 'update' => ' UPDATE "mw_tree_test" SET label = ?, code = ?, status = ? WHERE id = ? ', 'update-parentid' => ' UPDATE "mw_tree_test" SET parentid = ? WHERE id = ? ', 'newid' => ' SELECT LAST_INSERT_ID() ', 'transstart' => 'BEGIN', 'transcommit' => 'COMMIT', 'transrollback' => 'ROLLBACK'); $this->dbm = \TestHelperMw::getDBManager(); $conn = $this->dbm->acquire(); $sql = 'DROP TABLE IF EXISTS "mw_tree_test"'; $conn->create($sql)->execute()->finish(); $sql = ' CREATE TABLE IF NOT EXISTS "mw_tree_test" ( "id" INTEGER NOT NULL PRIMARY KEY AUTO_INCREMENT, "parentid" INTEGER NOT NULL, "label" VARCHAR(16) NOT NULL, "code" VARCHAR(32) NOT NULL, "level" INTEGER NOT NULL, "nleft" INTEGER NOT NULL, "nright" INTEGER NOT NULL, "status" SMALLINT NOT NULL ); '; $conn->create($sql)->execute()->finish(); $sql = 'INSERT INTO "mw_tree_test" (parentid, status, label, code, level, nleft, nright) VALUES (0, 1, \'root\', \'root\', 0, 1, 18)'; $conn->create($sql)->execute()->finish(); $sql = 'INSERT INTO "mw_tree_test" (status, label, code, level, nleft, nright) VALUES (1, \'l1n1\', \'l1n1\', 1, 2, 7)'; $conn->create($sql)->execute()->finish(); $sql = 'INSERT INTO "mw_tree_test" (status, label, code, level, nleft, nright) VALUES (1, \'l2n1\', \'l2n1\', 2, 3, 6)'; $conn->create($sql)->execute()->finish(); $sql = 'INSERT INTO "mw_tree_test" (status, label, code, level, nleft, nright) VALUES (1, \'l3n1\', \'l3n1\', 3, 4, 5)'; $conn->create($sql)->execute()->finish(); $sql = 'INSERT INTO "mw_tree_test" (status, label, code, level, nleft, nright) VALUES (1, \'l1n2\', \'l1n2\', 1, 8, 15)'; $conn->create($sql)->execute()->finish(); $sql = 'INSERT INTO "mw_tree_test" (status, label, code, level, nleft, nright) VALUES (1, \'l2n2\', \'l2n2\', 2, 9, 14)'; $conn->create($sql)->execute()->finish(); $sql = 'INSERT INTO "mw_tree_test" (status, label, code, level, nleft, nright) VALUES (1, \'l3n2\', \'l3n2\', 3, 10, 11)'; $conn->create($sql)->execute()->finish(); $sql = 'INSERT INTO "mw_tree_test" (status, label, code, level, nleft, nright) VALUES (1, \'l3n3\', \'l3n3\', 3, 12, 13)'; $conn->create($sql)->execute()->finish(); $sql = 'INSERT INTO "mw_tree_test" (status, label, code, level, nleft, nright) VALUES (1, \'l1n3\', \'l1n3\', 1, 16, 17)'; $conn->create($sql)->execute()->finish(); $sql = 'INSERT INTO "mw_tree_test" (status, label, code, level, nleft, nright) VALUES (1, \'root2\', \'root2\', 0, 19, 20)'; $conn->create($sql)->execute()->finish(); $this->dbm->release($conn); }
public function testFactoryFail() { $this->setExpectedException('\\Aimeos\\MW\\DB\\Exception'); \Aimeos\MW\DB\Factory::createManager(\TestHelperMw::getConfig(), 'notDefined'); }
protected function setUp() { $config = array('db' => \TestHelperMw::getConfig()->get('resource/db'), 'sql' => array('insert' => 'INSERT INTO mw_mqueue_test (queue, cname, rtime, message) VALUES (?, ?, ?, ?)', 'reserve' => 'UPDATE mw_mqueue_test SET cname = ?, rtime = ? WHERE id IN ( SELECT * FROM ( SELECT id FROM mw_mqueue_test WHERE queue = ? AND rtime < ? LIMIT 1 ) AS t )', 'get' => 'SELECT * FROM mw_mqueue_test WHERE queue = ? AND cname = ? AND rtime = ? LIMIT 1', 'delete' => 'DELETE FROM mw_mqueue_test WHERE id = ? AND queue = ?')); $mqueue = new \Aimeos\MW\MQueue\Standard($config); $this->object = $mqueue->getQueue('email'); }
/** * Sets up the fixture, for example, opens a network connection. * This method is called before a test is executed. * * @access protected */ protected function setUp() { if (\TestHelperMw::getConfig()->get('resource/db/adapter', false) === false) { $this->markTestSkipped('No database configured'); } }
protected function setUp() { if (!self::$dbm instanceof \Aimeos\MW\DB\Manager\DBAL) { $this->markTestSkipped('No DBAL database manager configured'); } $this->config = array(); $this->config['search'] = array('id' => array('label' => 'Tree node ID', 'code' => 'tree.id', 'internalcode' => 'id', 'type' => 'integer', 'internaltype' => \Aimeos\MW\DB\Statement\Base::PARAM_INT), 'parentid' => array('label' => 'Tree node parent id', 'code' => 'tree.parentid', 'internalcode' => 'parentid', 'type' => 'integer', 'internaltype' => \Aimeos\MW\DB\Statement\Base::PARAM_INT), 'label' => array('label' => 'Tree node name', 'code' => 'tree.label', 'internalcode' => 'label', 'type' => 'string', 'internaltype' => \Aimeos\MW\DB\Statement\Base::PARAM_STR), 'code' => array('label' => 'Tree node code', 'code' => 'tree.code', 'internalcode' => 'code', 'type' => 'string', 'internaltype' => \Aimeos\MW\DB\Statement\Base::PARAM_STR), 'status' => array('label' => 'Tree node status', 'code' => 'tree.status', 'internalcode' => 'status', 'type' => 'boolean', 'internaltype' => \Aimeos\MW\DB\Statement\Base::PARAM_BOOL), 'level' => array('label' => 'Tree node level', 'code' => 'tree.level', 'internalcode' => 'level', 'type' => 'integer', 'internaltype' => \Aimeos\MW\DB\Statement\Base::PARAM_INT), 'left' => array('label' => 'Tree node left number', 'code' => 'tree.left', 'internalcode' => 'nleft', 'type' => 'integer', 'internaltype' => \Aimeos\MW\DB\Statement\Base::PARAM_INT), 'right' => array('label' => 'Tree node right number', 'code' => 'tree.right', 'internalcode' => 'nright', 'type' => 'integer', 'internaltype' => \Aimeos\MW\DB\Statement\Base::PARAM_INT)); $this->config['sql'] = array('delete' => ' DELETE FROM "mw_tree_test" WHERE nleft >= ? AND nright <= ? ', 'get' => ' SELECT node."id", node."label", node."code", node."status", node."level", node."parentid", node."nleft" AS "left", node."nright" AS "right" FROM "mw_tree_test" AS parent, "mw_tree_test" AS node WHERE node.nleft >= parent.nleft AND node.nleft <= parent.nright AND parent.id = ? AND node.level <= parent.level + ? AND :cond ORDER BY node.nleft ', 'insert' => ' INSERT INTO "mw_tree_test" ( label, code, status, parentid, level, nleft, nright ) VALUES ( ?, ?, ?, ?, ?, ?, ? ) ', 'move-left' => ' UPDATE "mw_tree_test" SET nleft = nleft + ?, level = level + ? WHERE nleft >= ? AND nleft <= ? ', 'move-right' => ' UPDATE "mw_tree_test" SET nright = nright + ? WHERE nright >= ? AND nright <= ? ', 'search' => ' SELECT "id", "label", "code", "status", "level", "nleft" AS "left", "nright" AS "right" FROM "mw_tree_test" AS node WHERE nleft >= ? AND nright <= ? AND :cond ORDER BY :order ', 'update' => ' UPDATE "mw_tree_test" SET label = ?, code = ?, status = ? WHERE id = ? ', 'update-parentid' => ' UPDATE "mw_tree_test" SET parentid = ? WHERE id = ? ', 'transstart' => 'BEGIN', 'transcommit' => 'COMMIT', 'transrollback' => 'ROLLBACK'); switch (\TestHelperMw::getConfig()->get('resource/db/adapter')) { case 'mysql': $this->config['sql']['newid'] = 'SELECT LAST_INSERT_ID()'; break; case 'pgsql': $this->config['sql']['newid'] = 'SELECT lastval()'; break; default: $this->markTestSkipped('Only for MySQL and PostgreSQL'); } $conn = self::$dbm->acquire(); $sql = 'INSERT INTO "mw_tree_test" (parentid, status, label, code, level, nleft, nright) VALUES (0, 1, \'root\', \'root\', 0, 1, 18)'; $conn->create($sql)->execute()->finish(); $sql = 'INSERT INTO "mw_tree_test" (status, label, code, level, nleft, nright) VALUES (1, \'l1n1\', \'l1n1\', 1, 2, 7)'; $conn->create($sql)->execute()->finish(); $sql = 'INSERT INTO "mw_tree_test" (status, label, code, level, nleft, nright) VALUES (1, \'l2n1\', \'l2n1\', 2, 3, 6)'; $conn->create($sql)->execute()->finish(); $sql = 'INSERT INTO "mw_tree_test" (status, label, code, level, nleft, nright) VALUES (1, \'l3n1\', \'l3n1\', 3, 4, 5)'; $conn->create($sql)->execute()->finish(); $sql = 'INSERT INTO "mw_tree_test" (status, label, code, level, nleft, nright) VALUES (1, \'l1n2\', \'l1n2\', 1, 8, 15)'; $conn->create($sql)->execute()->finish(); $sql = 'INSERT INTO "mw_tree_test" (status, label, code, level, nleft, nright) VALUES (1, \'l2n2\', \'l2n2\', 2, 9, 14)'; $conn->create($sql)->execute()->finish(); $sql = 'INSERT INTO "mw_tree_test" (status, label, code, level, nleft, nright) VALUES (1, \'l3n2\', \'l3n2\', 3, 10, 11)'; $conn->create($sql)->execute()->finish(); $sql = 'INSERT INTO "mw_tree_test" (status, label, code, level, nleft, nright) VALUES (1, \'l3n3\', \'l3n3\', 3, 12, 13)'; $conn->create($sql)->execute()->finish(); $sql = 'INSERT INTO "mw_tree_test" (status, label, code, level, nleft, nright) VALUES (1, \'l1n3\', \'l1n3\', 1, 16, 17)'; $conn->create($sql)->execute()->finish(); $sql = 'INSERT INTO "mw_tree_test" (status, label, code, level, nleft, nright) VALUES (1, \'root2\', \'root2\', 0, 19, 20)'; $conn->create($sql)->execute()->finish(); self::$dbm->release($conn); }
protected function setUp() { $this->config = \TestHelperMw::getConfig(); $this->object = new \Aimeos\MW\Filesystem\Manager\Standard($this->config); }
public function testFactory() { $dbm = \Aimeos\MW\DB\Factory::createManager(\TestHelperMw::getConfig()); $this->setExpectedException('\\Aimeos\\MW\\Tree\\Exception'); \Aimeos\MW\Tree\Factory::createManager('DBNestedSet', array(), $dbm); }
protected function setUp() { $config = array('db' => \TestHelperMw::getConfig()->get('resource/db')); $this->object = new \Aimeos\MW\MQueue\Standard($config); }