public function testInvalidDriverInit() { // Non existing connection name TestUtils::clearDatabase(); try { Database::connection('nonexisting'); $this->assertTrue(false); } catch (ConfigurationException $ce) { $this->assertTrue(true); } // No valid configuration, incomplete! TestUtils::clearDatabase(); try { Database::connection('incomplete'); $this->assertTrue(false); } catch (DatabaseDriverException $dde) { $this->assertTrue(true); } // No driver defined. TestUtils::clearDatabase(); try { Database::connection('nodriver'); $this->assertTrue(false); } catch (ConfigurationException $ce) { $this->assertTrue(true); } }
public function testInit() { TestUtils::clearDatabase(); $conn = Database::connection(); $query = $conn->build(); $this->assertInstanceOf(QueryBuilder::class, $query); }
public static function resetDatabase($connection = 'default') { self::clearDatabase(); /** @var Connection $connection */ $connection = Database::connection($connection); $connection->truncate('posts'); // Add test posts $posts = [['id' => 1, 'title' => 'First Post', 'author' => 1, 'content' => 'Content', 'publishdate' => null], ['id' => 2, 'title' => 'Second Post', 'author' => 1, 'content' => 'Content', 'publishdate' => null], ['id' => 3, 'title' => 'Hello Post', 'author' => 1, 'content' => 'Content', 'publishdate' => null], ['id' => 4, 'title' => 'Mister Post', 'author' => 1, 'content' => 'Content', 'publishdate' => null], ['id' => 5, 'title' => 'Test Post', 'author' => 1, 'content' => 'Content', 'publishdate' => null], ['id' => 6, 'title' => 'Is Post', 'author' => 1, 'content' => 'Content', 'publishdate' => null], ['id' => 7, 'title' => 'Here Post', 'author' => 1, 'content' => 'Content', 'publishdate' => date('c', time() - 5000)]]; foreach ($posts as $post) { $connection->insert('posts', $post); } self::clearDatabase(); }
public function testFetchClass() { $connection = Database::connection(); $all = $connection->select("SELECT * FROM posts", array(), Database::FETCH_CLASS, FetchTestPosts::class); foreach ($all as $post) { $this->assertInstanceOf(FetchTestPosts::class, $post); $this->assertNotNull($post->id); } $all = $connection->raw("SELECT * FROM posts", true, Database::FETCH_CLASS, FetchTestPosts::class); foreach ($all as $post) { $this->assertInstanceOf(FetchTestPosts::class, $post); $this->assertNotNull($post->id); } }
/** * Get connection. * * @param string $connectionName * * @return Connection * * @codeCoverageIgnore */ protected function database($connectionName = 'default') { return Database::connection($connectionName); }