Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -146,9 +146,9 @@ jobs:
postgres:
image: postgres:${{ matrix.db_version }}-alpine
env:
POSTGRES_USER: root
POSTGRES_USER: joomla_ut
POSTGRES_PASSWORD: joomla_ut
POSTGRES_DB: test_joomla
POSTGRES_DB: joomla_ut

tests-unit-sqlsrv:
name: Run Unit tests on SQLsrv
Expand Down
30 changes: 29 additions & 1 deletion Tests/Pgsql/PgsqlDriverTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@

namespace Joomla\Database\Tests\Pgsql;

use Joomla\Database\DatabaseDriver;
use Joomla\Database\Exception\ExecutionFailureException;
use Joomla\Database\ParameterType;
use Joomla\Database\Pgsql\PgsqlDriver;
use Joomla\Database\Pgsql\PgsqlExporter;
Expand Down Expand Up @@ -36,6 +38,32 @@ public static function setUpBeforeClass(): void
}
}

/**
* Sets up the fixture.
*
* This method is called before a test is executed.
*
* @return void
*/
protected function setUp(): void
{
parent::setUp();

try {
foreach (DatabaseDriver::splitSql(file_get_contents(dirname(__DIR__) . '/Stubs/Schema/pgsql.sql')) as $query) {
static::$connection->setQuery($query)
->execute();
}
} catch (ExecutionFailureException $exception) {
$this->markTestSkipped(
\sprintf(
'Could not load PostgreSQL database: %s',
$exception->getMessage()
)
);
}
}

/**
* Tears down the fixture.
*
Expand All @@ -44,7 +72,7 @@ public static function setUpBeforeClass(): void
protected function tearDown(): void
{
foreach (static::$connection->getTableList() as $table) {
static::$connection->truncateTable($table);
static::$connection->dropTable($table);
}
}

Expand Down
3 changes: 1 addition & 2 deletions Tests/Stubs/Schema/pgsql.sql
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
-- Purposefully do not add the table prefix to this file as it is mainly processed by the psql CLI or an application like pgAdmin
CREATE TABLE "dbtest" (
CREATE TABLE "#__dbtest" (
"id" serial NOT NULL,
"title" character varying(50) NOT NULL,
"start_date" timestamp without time zone NOT NULL,
Expand Down
8 changes: 4 additions & 4 deletions phpunit.pgsql.xml.dist
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@
<phpunit bootstrap="Tests/bootstrap.php" colors="false">
<php>
<env name="JOOMLA_TEST_DB_DRIVER" value="pgsql" />
<env name="JOOMLA_TEST_DB_HOST" value="pgsql" />
<env name="JOOMLA_TEST_DB_PORT" value="5433" />
<env name="JOOMLA_TEST_DB_USER" value="postgres" />
<env name="JOOMLA_TEST_DB_PASSWORD" value="" />
<env name="JOOMLA_TEST_DB_HOST" value="postgres" />
<env name="JOOMLA_TEST_DB_PORT" value="5432" />
<env name="JOOMLA_TEST_DB_USER" value="joomla_ut" />
<env name="JOOMLA_TEST_DB_PASSWORD" value="joomla_ut" />
<env name="JOOMLA_TEST_DB_DATABASE" value="joomla_ut" />
<env name="JOOMLA_TEST_DB_PREFIX" value="" />
<env name="JOOMLA_TEST_DB_SELECT" value="yes" />
Expand Down
Loading