diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 71b3341..5bfa109 100755 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -121,28 +121,6 @@ jobs: uses: actions/checkout@main with: fetch-depth: 1 - - name: Checkout Build Repository - uses: actions/checkout@main - with: - fetch-depth: 1 - ref: develop - repository: Karaka-Management/Build - path: Build - - name: Checkout Resource Repository - uses: actions/checkout@main - with: - fetch-depth: 1 - ref: develop - repository: Karaka-Management/Resources - path: Resources - - name: Checkout phpOMS Repository - uses: actions/checkout@main - with: - fetch-depth: 1 - ref: develop - repository: Karaka-Management/phpOMS - path: phpOMS - token: ${{ secrets.GH_PAT }} - name: Checkout Karaka Repository uses: actions/checkout@main with: @@ -219,7 +197,7 @@ jobs: - name: Setup Composer run: composer install - name: phpstan - run: vendor/bin/phpstan analyse -a phpOMS/Autoloader.php --no-progress -l 9 -c Build/Config/phpstan.neon ./ + run: vendor/bin/phpstan analyse -a tests/Autoloader.php --no-progress -l 9 -c Build/Config/phpstan.neon ./ codestyle-tests: runs-on: ubuntu-latest if: "!contains(github.event.head_commit.message, 'NO_CI')" @@ -263,14 +241,14 @@ jobs: run: vendor/bin/phpcs --severity=1 ./ --standard="Build/Config/phpcs.xml" -s --report=full - name: rector run: vendor/bin/rector process --dry-run --config Build/Config/rector.php ./ - - name: Install NPM - uses: actions/setup-node@v3 - with: - node-version: '14' - cache: 'npm' - - run: npm install - - name: eslint - run: npx eslint ./ -c Build/Config/.eslintrc.json + # - name: Install NPM + # uses: actions/setup-node@v3 + # with: + # node-version: '14' + # cache: 'npm' + # - run: npm install + # - name: eslint + # run: npx eslint ./ -c Build/Config/.eslintrc.json # linting: # runs-on: ubuntu-latest # if: "!contains(github.event.head_commit.message, 'NO_CI')" diff --git a/tests/Bootstrap.php b/tests/Bootstrap.php index 44438e2..587816b 100755 --- a/tests/Bootstrap.php +++ b/tests/Bootstrap.php @@ -1,8 +1,6 @@ [ 'core' => [ 'masters' => [ 'admin' => [ - 'db' => 'mysql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '3306', /* db host port */ - 'login' => 'root', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'mysql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '3306', /* db host port */ + 'login' => 'root', /* db login name */ + 'password' => 'root', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'insert' => [ - 'db' => 'mysql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '3306', /* db host port */ - 'login' => 'root', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'mysql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '3306', /* db host port */ + 'login' => 'root', /* db login name */ + 'password' => 'root', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'select' => [ - 'db' => 'mysql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '3306', /* db host port */ - 'login' => 'root', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'mysql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '3306', /* db host port */ + 'login' => 'root', /* db login name */ + 'password' => 'root', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'update' => [ - 'db' => 'mysql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '3306', /* db host port */ - 'login' => 'root', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'mysql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '3306', /* db host port */ + 'login' => 'root', /* db login name */ + 'password' => 'root', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'delete' => [ - 'db' => 'mysql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '3306', /* db host port */ - 'login' => 'root', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'mysql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '3306', /* db host port */ + 'login' => 'root', /* db login name */ + 'password' => 'root', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'schema' => [ - 'db' => 'mysql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '3306', /* db host port */ - 'login' => 'root', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'mysql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '3306', /* db host port */ + 'login' => 'root', /* db login name */ + 'password' => 'root', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], ], 'postgresql' => [ 'admin' => [ - 'db' => 'pgsql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '5432', /* db host port */ - 'login' => 'postgres', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'pgsql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '5432', /* db host port */ + 'login' => 'postgres', /* db login name */ + 'password' => 'root', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'insert' => [ - 'db' => 'pgsql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '5432', /* db host port */ - 'login' => 'postgres', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'pgsql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '5432', /* db host port */ + 'login' => 'postgres', /* db login name */ + 'password' => 'root', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'select' => [ - 'db' => 'pgsql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '5432', /* db host port */ - 'login' => 'postgres', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'pgsql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '5432', /* db host port */ + 'login' => 'postgres', /* db login name */ + 'password' => 'root', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'update' => [ - 'db' => 'pgsql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '5432', /* db host port */ - 'login' => 'postgres', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'pgsql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '5432', /* db host port */ + 'login' => 'postgres', /* db login name */ + 'password' => 'root', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'delete' => [ - 'db' => 'pgsql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '5432', /* db host port */ - 'login' => 'postgres', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'pgsql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '5432', /* db host port */ + 'login' => 'postgres', /* db login name */ + 'password' => 'root', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'schema' => [ - 'db' => 'pgsql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '5432', /* db host port */ - 'login' => 'postgres', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'pgsql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '5432', /* db host port */ + 'login' => 'postgres', /* db login name */ + 'password' => 'root', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], ], 'sqlite' => [ 'admin' => [ - 'db' => 'sqlite', /* db type */ - 'database' => __DIR__ . '/test.sqlite', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'sqlite', /* db type */ + 'database' => __DIR__ . '/../Karaka/phpOMS/Localization/Defaults/localization.sqlite', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'insert' => [ - 'db' => 'sqlite', /* db type */ - 'database' => __DIR__ . '/test.sqlite', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'sqlite', /* db type */ + 'database' => __DIR__ . '/../Karaka/phpOMS/Localization/Defaults/localization.sqlite', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'select' => [ - 'db' => 'sqlite', /* db type */ - 'database' => __DIR__ . '/test.sqlite', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'sqlite', /* db type */ + 'database' => __DIR__ . '/../Karaka/phpOMS/Localization/Defaults/localization.sqlite', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'update' => [ - 'db' => 'sqlite', /* db type */ - 'database' => __DIR__ . '/test.sqlite', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'sqlite', /* db type */ + 'database' => __DIR__ . '/../Karaka/phpOMS/Localization/Defaults/localization.sqlite', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'delete' => [ - 'db' => 'sqlite', /* db type */ - 'database' => __DIR__ . '/test.sqlite', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'sqlite', /* db type */ + 'database' => __DIR__ . '/../Karaka/phpOMS/Localization/Defaults/localization.sqlite', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'schema' => [ - 'db' => 'sqlite', /* db type */ - 'database' => __DIR__ . '/test.sqlite', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'sqlite', /* db type */ + 'database' => __DIR__ . '/../Karaka/phpOMS/Localization/Defaults/localization.sqlite', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], ], 'mssql' => [ 'admin' => [ - 'db' => 'mssql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '1433', /* db host port */ - 'login' => 'sa', /* db login name */ - 'password' => 'R00troot', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'mssql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '1433', /* db host port */ + 'login' => 'sa', /* db login name */ + 'password' => 'c0MplicatedP@ssword', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'insert' => [ - 'db' => 'mssql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '1433', /* db host port */ - 'login' => 'sa', /* db login name */ - 'password' => 'R00troot', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'mssql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '1433', /* db host port */ + 'login' => 'sa', /* db login name */ + 'password' => 'c0MplicatedP@ssword', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'select' => [ - 'db' => 'mssql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '1433', /* db host port */ - 'login' => 'sa', /* db login name */ - 'password' => 'R00troot', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'mssql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '1433', /* db host port */ + 'login' => 'sa', /* db login name */ + 'password' => 'c0MplicatedP@ssword', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'update' => [ - 'db' => 'mssql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '1433', /* db host port */ - 'login' => 'sa', /* db login name */ - 'password' => 'R00troot', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'mssql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '1433', /* db host port */ + 'login' => 'sa', /* db login name */ + 'password' => 'c0MplicatedP@ssword', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'delete' => [ - 'db' => 'mssql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '1433', /* db host port */ - 'login' => 'sa', /* db login name */ - 'password' => 'R00troot', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'mssql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '1433', /* db host port */ + 'login' => 'sa', /* db login name */ + 'password' => 'c0MplicatedP@ssword', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'schema' => [ - 'db' => 'mssql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '1433', /* db host port */ - 'login' => 'sa', /* db login name */ - 'password' => 'R00troot', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'mssql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '1433', /* db host port */ + 'login' => 'sa', /* db login name */ + 'password' => 'c0MplicatedP@ssword', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], ], ], @@ -381,7 +452,7 @@ function phpServe() : void // Execute the command and store the process ID $output = []; - echo 'Starting server...' . \PHP_EOL; + echo \sprintf('Starting server...') . \PHP_EOL; echo \sprintf(' Current directory: %s', \getcwd()) . \PHP_EOL; echo \sprintf(' %s', $command); \exec($command, $output); @@ -406,10 +477,14 @@ function phpServe() : void // Kill the web server when the process ends \register_shutdown_function(function() use ($killCommand, $pid) : void { - echo \PHP_EOL . 'Stopping server...' . \PHP_EOL; + echo \PHP_EOL . \sprintf('Stopping server...') . \PHP_EOL; echo \sprintf(' %s - Killing process with ID %d', \date('r'), $pid) . \PHP_EOL; \exec($killCommand . $pid); }); } -\phpServe(); +try { + \phpServe(); +} catch(\Throwable $t) { + echo $t->getMessage(); +} diff --git a/tests/phpunit_default.xml b/tests/phpunit_default.xml index f5cc76f..1ddff9f 100755 --- a/tests/phpunit_default.xml +++ b/tests/phpunit_default.xml @@ -47,7 +47,7 @@ - +