Skip to content
This repository has been archived by the owner on Aug 20, 2018. It is now read-only.

Commit

Permalink
Use Tester\Environment::THREAD instead of PID
Browse files Browse the repository at this point in the history
  • Loading branch information
mrtnzlml committed Oct 9, 2016
1 parent 7a546e1 commit e42fefb
Show file tree
Hide file tree
Showing 7 changed files with 16 additions and 15 deletions.
5 changes: 2 additions & 3 deletions src/Mocks/DoctrineConnectionMock.php
Original file line number Diff line number Diff line change
Expand Up @@ -47,13 +47,12 @@ public function __construct(
/** @internal */
public function __testbench_database_setup($connection, \Nette\DI\Container $container)
{
$this->__testbench_databaseName = 'db_tests_' . getmypid();
$config = $container->parameters['testbench'];
$this->__testbench_databaseName = $config['dbprefix'] . getenv(\Tester\Environment::THREAD);

$this->__testbench_database_drop($connection, $container);
$this->__testbench_database_create($connection, $container);

$config = $container->parameters['testbench'];

foreach ($config['sqls'] as $file) {
\Kdyby\Doctrine\Dbal\BatchImport\Helpers::loadFromFile($connection, $file);
}
Expand Down
5 changes: 3 additions & 2 deletions src/Mocks/NetteDatabaseConnectionMock.php
Original file line number Diff line number Diff line change
Expand Up @@ -32,12 +32,13 @@ public function __construct($dsn, $user = NULL, $password = NULL, array $options
/** @internal */
public function __testbench_database_setup($connection, \Nette\DI\Container $container)
{
$this->__testbench_databaseName = 'db_tests_' . getmypid();
$config = $container->parameters['testbench'];
$this->__testbench_databaseName = $config['dbprefix'] . getenv(\Tester\Environment::THREAD);

$this->__testbench_database_drop($connection, $container);
$this->__testbench_database_create($connection, $container);

foreach ($container->parameters['testbench']['sqls'] as $file) {
foreach ($config['sqls'] as $file) {
\Nette\Database\Helpers::loadFromFile($connection, $file);
}

Expand Down
1 change: 1 addition & 0 deletions src/TestbenchExtension.php
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ class TestbenchExtension extends \Nette\DI\CompilerExtension

private $defaults = [
'dbname' => NULL, // custom test database name
'dbprefix' => '_testbench_', // database prefix for created tests databases
'migrations' => FALSE, // set TRUE if you want to use Doctrine migrations
'sqls' => [], // sqls you want to import during new test database creation
'url' => 'http://test.bench/', // fake URL for HTTP request mock
Expand Down
6 changes: 3 additions & 3 deletions tests/Traits/TDoctrineTest.phpt
Original file line number Diff line number Diff line change
Expand Up @@ -37,9 +37,9 @@ class TDoctrineTest extends \Tester\TestCase
$connection = $this->getEntityManager()->getConnection();
if ($connection->getDatabasePlatform() instanceof MySqlPlatform) {
Assert::match('testbench_initial', $connection->getDatabase());
Assert::match('db_tests_' . getmypid(), $connection->query('SELECT DATABASE();')->fetchColumn());
Assert::match('_testbench_' . getenv(\Tester\Environment::THREAD), $connection->query('SELECT DATABASE();')->fetchColumn());
} else {
Assert::same('db_tests_' . getmypid(), $connection->getDatabase());
Assert::same('_testbench_' . getenv(\Tester\Environment::THREAD), $connection->getDatabase());
}
}

Expand All @@ -66,7 +66,7 @@ class TDoctrineTest extends \Tester\TestCase
['id' => 2, 'column_1' => 'value_1', 'column_2' => 'value_2'],
['id' => 3, 'column_1' => 'value_1', 'column_2' => 'value_2'],
], $result);
Assert::same('db_tests_' . getmypid(), $connection->getDatabase());
Assert::same('_testbench_' . getenv(\Tester\Environment::THREAD), $connection->getDatabase());
}
}

Expand Down
6 changes: 3 additions & 3 deletions tests/Traits/TNetteDatabaseTest.phpt
Original file line number Diff line number Diff line change
Expand Up @@ -41,9 +41,9 @@ class TNetteDatabaseTest extends \Tester\TestCase
};
if ($connection->getSupplementalDriver() instanceof MySqlDriver) {
Assert::match('testbench_initial', $returnActualDatabaseName());
Assert::match('db_tests_' . getmypid(), $connection->query('SELECT DATABASE();')->fetchPairs()[0]);
Assert::match('_testbench_' . getenv(\Tester\Environment::THREAD), $connection->query('SELECT DATABASE();')->fetchPairs()[0]);
} else {
Assert::same('db_tests_' . getmypid(), $returnActualDatabaseName());
Assert::same('_testbench_' . getenv(\Tester\Environment::THREAD), $returnActualDatabaseName());
}
}

Expand All @@ -63,7 +63,7 @@ class TNetteDatabaseTest extends \Tester\TestCase
if ($connection->getSupplementalDriver() instanceof MySqlDriver) {
Assert::match('testbench_initial', $matches[1]);
} else {
Assert::same('db_tests_' . getmypid(), $matches[1]);
Assert::same('_testbench_' . getenv(\Tester\Environment::THREAD), $matches[1]);
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,9 @@ public function __construct(\Kdyby\Doctrine\EntityManager $entityManager)
Assert::count(1, $connection->onConnect);
if ($connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySqlPlatform) {
Assert::match('testbench_initial', $connection->getDatabase());
Assert::match('db_tests_' . getmypid(), $connection->query('SELECT DATABASE();')->fetchColumn());
Assert::match('_testbench_' . getenv(\Tester\Environment::THREAD), $connection->query('SELECT DATABASE();')->fetchColumn());
} else {
Assert::same('db_tests_' . getmypid(), $connection->getDatabase());
Assert::same('_testbench_' . getenv(\Tester\Environment::THREAD), $connection->getDatabase());
}
}

Expand Down
4 changes: 2 additions & 2 deletions tests/_helpers/components/NdbComponentWithDatabaseAccess.php
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,9 @@ public function __construct(\Nette\Database\Context $context)
};
if ($connection->getSupplementalDriver() instanceof \Nette\Database\Drivers\MySqlDriver) {
Assert::match('testbench_initial', $returnActualDatabaseName());
Assert::match('db_tests_' . getmypid(), $connection->query('SELECT DATABASE();')->fetchPairs()[0]);
Assert::match('_testbench_' . getenv(\Tester\Environment::THREAD), $connection->query('SELECT DATABASE();')->fetchPairs()[0]);
} else {
Assert::same('db_tests_' . getmypid(), $returnActualDatabaseName());
Assert::same('_testbench_' . getenv(\Tester\Environment::THREAD), $returnActualDatabaseName());
}
}

Expand Down

0 comments on commit e42fefb

Please sign in to comment.