Skip to content

Commit

Permalink
Merge pull request #23 from yuki777/embed-dbdb-v1.2.12
Browse files Browse the repository at this point in the history
Embed dbdb v1.2.12
  • Loading branch information
yuki777 committed May 6, 2023
2 parents 30cbd12 + 8196797 commit b3014ff
Show file tree
Hide file tree
Showing 9 changed files with 194 additions and 50 deletions.
3 changes: 2 additions & 1 deletion .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@ jobs:
test: [
tests/MongodbTest.php,
tests/MysqlTest.php,
tests/PostgresqlTest.php,
tests/Postgresql12Test.php,
tests/Postgresql13Test.php,
tests/RedisTest.php
]
steps:
Expand Down
44 changes: 5 additions & 39 deletions dbdb/.github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,49 +3,15 @@ name: Test
on: push

jobs:
test-macos:
test:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [macos-latest]
os: [macos-latest, ubuntu-latest]
test_script: [mongodb-test.sh, mysql-test.sh, postgresql-12-test.sh, postgresql-13-test.sh, redis-test.sh]
steps:
- uses: actions/checkout@v3
- name: Run mongodb test
- name: Run test
run: |
cd tests
/bin/bash mongodb-test.sh
- name: Run mysql test
run: |
cd tests
/bin/bash mysql-test.sh
- name: Run postgresql test
run: |
cd tests
/bin/bash postgresql-test.sh
- name: Run redis test
run: |
cd tests
/bin/bash redis-test.sh
test-ubuntu:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest]
steps:
- uses: actions/checkout@v3
- name: Run mongodb test
run: |
cd tests
/bin/bash mongodb-test.sh
- name: Run mysql test
run: |
cd tests
/bin/bash mysql-test.sh
- name: Run postgresql test
run: |
cd tests
/bin/bash postgresql-test.sh
- name: Run redis test
run: |
cd tests
/bin/bash redis-test.sh
/bin/bash ${{ matrix.test_script }}
2 changes: 1 addition & 1 deletion dbdb/VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v1.2.11
v1.2.12
6 changes: 3 additions & 3 deletions dbdb/postgresql/create.sh
Original file line number Diff line number Diff line change
Expand Up @@ -59,9 +59,9 @@ if [ ! -d $dir/basedir/bin ]; then
if [ $os = "linux" ]; then
echo "Installing..." 1>&2
cd $dir/basedir
./configure --prefix=$(pwd) 1>&2
make 1>&2
make install 1>&2
./configure --prefix=$(pwd) > /dev/null 2>&1
make > /dev/null 2>&1
make install > /dev/null 2>&1
rm -fr config contrib doc src
fi
fi
Expand Down
3 changes: 2 additions & 1 deletion dbdb/redis/create.sh
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,8 @@ extractFile $dir $optFileName

if [ ! -e $dir/basedir/src/redis-server ]; then
cd $dir/basedir
make 1>&2
echo "Installing..." 1>&2
make > /dev/null 2>&1
fi

# create redis.conf
Expand Down
51 changes: 51 additions & 0 deletions dbdb/tests/postgresql-12-test.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
#!/usr/bin/env bash
set -aeuvx

. ../lib/functions.sh

type=postgresql
version=12.4

cd ../$type
rm -fr $type-*.tar.gz
cd ..

date=$(date +%Y%m%d%H%M%S)
md5="md5"
[ "$(getOS)" = "linux" ] && md5="md5sum"
hash=$(echo "dbdb-$date" | $md5 | cut -d ' ' -f 1)

echo "Test create"
./$type/create.sh dbdb-test-$hash $version random
echo "Test port"
./$type/port.sh dbdb-test-$hash
echo "Test start"
./$type/start.sh dbdb-test-$hash
echo "Test status"
./$type/status.sh dbdb-test-$hash
echo "Test restart"
./$type/restart.sh dbdb-test-$hash
echo "Test stop"
./$type/stop.sh dbdb-test-$hash
echo "Test delete"
./$type/delete.sh dbdb-test-$hash

echo "Test create"
./$type/create.sh -f json dbdb-test-$hash $version random | jq
echo "Test port"
./$type/port.sh -f json dbdb-test-$hash | jq
echo "Test start"
./$type/start.sh -f json dbdb-test-$hash | jq
echo "Test status"
./$type/status.sh -f json dbdb-test-$hash | jq
echo "Test restart"
./$type/restart.sh -f json dbdb-test-$hash | jq
echo "Test stop"
./$type/stop.sh -f json dbdb-test-$hash | jq
echo "Test delete"
./$type/delete.sh -f json dbdb-test-$hash | jq

./dbdb.sh
./$type/create-start.sh -f json dbdb-test-$hash $version random | jq
./dbdb.sh -f json | jq
./$type/delete.sh dbdb-test-$hash
51 changes: 51 additions & 0 deletions dbdb/tests/postgresql-13-test.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
#!/usr/bin/env bash
set -aeuvx

. ../lib/functions.sh

type=postgresql
version=13.2

cd ../$type
rm -fr $type-*.tar.gz
cd ..

date=$(date +%Y%m%d%H%M%S)
md5="md5"
[ "$(getOS)" = "linux" ] && md5="md5sum"
hash=$(echo "dbdb-$date" | $md5 | cut -d ' ' -f 1)

echo "Test create"
./$type/create.sh dbdb-test-$hash $version random
echo "Test port"
./$type/port.sh dbdb-test-$hash
echo "Test start"
./$type/start.sh dbdb-test-$hash
echo "Test status"
./$type/status.sh dbdb-test-$hash
echo "Test restart"
./$type/restart.sh dbdb-test-$hash
echo "Test stop"
./$type/stop.sh dbdb-test-$hash
echo "Test delete"
./$type/delete.sh dbdb-test-$hash

echo "Test create"
./$type/create.sh -f json dbdb-test-$hash $version random | jq
echo "Test port"
./$type/port.sh -f json dbdb-test-$hash | jq
echo "Test start"
./$type/start.sh -f json dbdb-test-$hash | jq
echo "Test status"
./$type/status.sh -f json dbdb-test-$hash | jq
echo "Test restart"
./$type/restart.sh -f json dbdb-test-$hash | jq
echo "Test stop"
./$type/stop.sh -f json dbdb-test-$hash | jq
echo "Test delete"
./$type/delete.sh -f json dbdb-test-$hash | jq

./dbdb.sh
./$type/create-start.sh -f json dbdb-test-$hash $version random | jq
./dbdb.sh -f json | jq
./$type/delete.sh dbdb-test-$hash
9 changes: 4 additions & 5 deletions tests/PostgresqlTest.php → tests/Postgresql12Test.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,12 @@
use DbDbPhp\Composer\Commands\DbDbList;
use DbDbPhp\Composer\Commands\DbDbVersion;

class PostgresqlTest extends TestCase
class Postgresql12Test extends TestCase
{
public function testBasic()
{
$type = 'postgresql';
// $oldVersion = '12.4'; // Run only one version of the test because of slow execution in CI
$newVersion = '13.2';
$version = '12.4';

$application = new Application();
$application->add(new Postgresql());
Expand Down Expand Up @@ -43,7 +42,7 @@ public function testBasic()

// Create
fwrite(STDERR, "Create database $dbName" . PHP_EOL);
$this->assertEquals(0, $dbTester->execute(["action" => "create", "--db-name" => $dbName, "--db-version" => $newVersion, "--db-port" => "random"]));
$this->assertEquals(0, $dbTester->execute(["action" => "create", "--db-name" => $dbName, "--db-version" => $version, "--db-port" => "random"]));

// Start
fwrite(STDERR, "Start database $dbName" . PHP_EOL);
Expand All @@ -67,7 +66,7 @@ public function testBasic()

// Create and start
fwrite(STDERR, "Create and start database $dbName" . PHP_EOL);
$this->assertEquals(0, $dbTester->execute(["action" => "create-start", "--db-name" => $dbName, "--db-version" => $newVersion, "--db-port" => "random"]));
$this->assertEquals(0, $dbTester->execute(["action" => "create-start", "--db-name" => $dbName, "--db-version" => $version, "--db-port" => "random"]));

// Delete
fwrite(STDERR, "Delete database $dbName" . PHP_EOL);
Expand Down
75 changes: 75 additions & 0 deletions tests/Postgresql13Test.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
<?php

namespace DbDbPhp\Composer;

use PHPUnit\Framework\TestCase;
use Composer\Console\Application;
use Symfony\Component\Console\Tester\CommandTester;
use DbDbPhp\Composer\Commands\Postgresql;
use DbDbPhp\Composer\Commands\DbDbList;
use DbDbPhp\Composer\Commands\DbDbVersion;

class Postgresql13Test extends TestCase
{
public function testBasic()
{
$type = 'postgresql';
$version = '13.2';

$application = new Application();
$application->add(new Postgresql());
$application->add(new DbDbList());
$application->add(new DbDbVersion());
$application->setAutoExit(false);

$listTester = new CommandTester($application->find("dbdb:list"));
$versionTester = new CommandTester($application->find("dbdb:version"));
$dbTester = new CommandTester($application->find("dbdb:$type"));

// Generate random name
$dbName = "dbdb-php-test-$type-" . md5(microtime(true));

// Version
fwrite(STDERR, "Show version of dbdb" . PHP_EOL);
$this->assertEquals(0, $versionTester->execute([]));
$this->assertStringContainsString('"dbdb-php"', $versionTester->getDisplay());
$this->assertStringContainsString('"dbdb"', $versionTester->getDisplay());

// List
fwrite(STDERR, "Show databases" . PHP_EOL);
$this->assertEquals(0, $listTester->execute([]));
$this->assertStringContainsString('[]', $listTester->getDisplay());

// Create
fwrite(STDERR, "Create database $dbName" . PHP_EOL);
$this->assertEquals(0, $dbTester->execute(["action" => "create", "--db-name" => $dbName, "--db-version" => $version, "--db-port" => "random"]));

// Start
fwrite(STDERR, "Start database $dbName" . PHP_EOL);
$this->assertEquals(0, $dbTester->execute(["action" => "start", "--db-name" => $dbName]));

// Restart
fwrite(STDERR, "Restart database $dbName" . PHP_EOL);
$this->assertEquals(0, $dbTester->execute(["action" => "restart", "--db-name" => $dbName]));

// Port
fwrite(STDERR, "Show port of database $dbName" . PHP_EOL);
$this->assertEquals(0, $dbTester->execute(["action" => "port", "--db-name" => $dbName]));

// Stop
fwrite(STDERR, "Stop database $dbName" . PHP_EOL);
$this->assertEquals(0, $dbTester->execute(["action" => "stop", "--db-name" => $dbName]));

// Delete
fwrite(STDERR, "Delete database $dbName" . PHP_EOL);
$this->assertEquals(0, $dbTester->execute(["action" => "delete", "--db-name" => $dbName]));

// Create and start
fwrite(STDERR, "Create and start database $dbName" . PHP_EOL);
$this->assertEquals(0, $dbTester->execute(["action" => "create-start", "--db-name" => $dbName, "--db-version" => $version, "--db-port" => "random"]));

// Delete
fwrite(STDERR, "Delete database $dbName" . PHP_EOL);
$this->assertEquals(0, $dbTester->execute(["action" => "delete", "--db-name" => $dbName]));
}
}

0 comments on commit b3014ff

Please sign in to comment.