Fix tests

This commit is contained in:
Franz Liedke 2019-02-01 10:33:21 +01:00
parent d4cdd11533
commit 4baf5d5008
2 changed files with 22 additions and 26 deletions

View File

@ -11,6 +11,7 @@
namespace Flarum\Tests\Install; namespace Flarum\Tests\Install;
use Flarum\Install\AdminUser;
use Flarum\Install\Installation; use Flarum\Install\Installation;
use Flarum\Tests\Test\TestCase; use Flarum\Tests\Test\TestCase;
use Illuminate\Database\Connectors\ConnectionFactory; use Illuminate\Database\Connectors\ConnectionFactory;
@ -41,11 +42,9 @@ class DefaultInstallationTest extends TestCase
$this->assertFileExists(base_path('config.php')); $this->assertFileExists(base_path('config.php'));
$admin = $this->getAdmin();
$this->assertEquals( $this->assertEquals(
$this->getDatabase()->table('users')->find(1)->username, $this->getDatabase()->table('users')->find(1)->username,
$admin['username'] 'admin'
); );
} }
@ -53,17 +52,16 @@ class DefaultInstallationTest extends TestCase
{ {
$factory = new ConnectionFactory(app()); $factory = new ConnectionFactory(app());
return $factory->make($this->getDatabaseConfiguration()); return $factory->make($this->getDatabaseConfiguration()->getConfig());
} }
private function getAdmin() private function getAdmin(): AdminUser
{ {
return [ return new AdminUser(
'username' => 'admin', 'admin',
'password' => 'password', 'password',
'password_confirmation' => 'password', 'admin@example.com'
'email' => 'admin@example.com', );
];
} }
private function getSettings() private function getSettings()

View File

@ -19,6 +19,7 @@ use Flarum\Foundation\SiteInterface;
use Flarum\Foundation\UninstalledSite; use Flarum\Foundation\UninstalledSite;
use Flarum\Http\Server; use Flarum\Http\Server;
use Flarum\Install\Console\DataProviderInterface; use Flarum\Install\Console\DataProviderInterface;
use Flarum\Install\DatabaseConfig;
use Illuminate\Database\ConnectionInterface; use Illuminate\Database\ConnectionInterface;
use Illuminate\Database\Connectors\MySqlConnector; use Illuminate\Database\Connectors\MySqlConnector;
use Illuminate\Database\MySqlConnection; use Illuminate\Database\MySqlConnection;
@ -73,20 +74,17 @@ trait CreatesForum
$this->app = $this->site->bootApp(); $this->app = $this->site->bootApp();
} }
protected function getDatabaseConfiguration() protected function getDatabaseConfiguration(): DatabaseConfig
{ {
return [ return new DatabaseConfig(
'driver' => 'mysql', 'mysql',
'host' => env('DB_HOST', 'localhost'), env('DB_HOST', 'localhost'),
'database' => env('DB_DATABASE', 'flarum'), 3306,
'username' => env('DB_USERNAME', 'root'), env('DB_DATABASE', 'flarum'),
'password' => env('DB_PASSWORD', ''), env('DB_USERNAME', 'root'),
'charset' => 'utf8mb4', env('DB_PASSWORD', ''),
'collation' => 'utf8mb4_unicode_ci', env('DB_PREFIX', '')
'prefix' => env('DB_PREFIX', ''), );
'port' => '3306',
'strict' => false,
];
} }
protected function refreshApplication() protected function refreshApplication()
@ -109,7 +107,7 @@ trait CreatesForum
{ {
return [ return [
'debug' => true, 'debug' => true,
'database' => $this->getDatabaseConfiguration(), 'database' => $this->getDatabaseConfiguration()->getConfig(),
'url' => 'http://flarum.local', 'url' => 'http://flarum.local',
'paths' => [ 'paths' => [
'api' => 'api', 'api' => 'api',
@ -124,7 +122,7 @@ trait CreatesForum
return; return;
} }
$dbConfig = $this->getDatabaseConfiguration(); $dbConfig = $this->getDatabaseConfiguration()->getConfig();
$pdo = (new MySqlConnector)->connect($dbConfig); $pdo = (new MySqlConnector)->connect($dbConfig);
$db = new MySqlConnection($pdo, $dbConfig['database'], $dbConfig['prefix'], $dbConfig); $db = new MySqlConnection($pdo, $dbConfig['database'], $dbConfig['prefix'], $dbConfig);