pdo = new PDO('sqlite::memory:'); $query = "CREATE TABLE IF NOT EXISTS test_table (id INTEGER PRIMARY KEY, test TEXT)"; $this->pdo->query($query); } protected function tearDown(): void { unset($this->pdo); } public function testConnection() { $host = "memory"; $database = $this->getMockBuilder(Concept\Database::class)->getMock(); $database->method('getHost')->willReturn($host); $database->method('getDsn')->willReturn("sqlite::{$host}"); $database->method('needsUser')->willReturn(false); $connection = new Connection($database); $this->assertEquals($this->pdo, $connection->connect()); } public function testQuery() { $host = "memory"; $database = $this->getMockBuilder(Concept\Database::class)->getMock(); $database->method('getHost')->willReturn($host); $database->method('getDsn')->willReturn("sqlite::{$host}"); $database->method('needsUser')->willReturn(false); $connection = new Connection($database); $query = "CREATE TABLE IF NOT EXISTS test_table (id INTEGER PRIMARY KEY, test TEXT)"; $connection->query($query); $query = "SELECT * FROM test_table"; $result = $connection->query($query); $this->assertInstanceOf(Concept\Database\ResultSet::class, $result); } public function testPrepare() { $host = "memory"; $database = $this->getMockBuilder(Concept\Database::class)->getMock(); $database->method('getHost')->willReturn($host); $database->method('getDsn')->willReturn("sqlite::{$host}"); $database->method('needsUser')->willReturn(false); $connection = new Connection($database); $query = "CREATE TABLE IF NOT EXISTS test_table (id INTEGER PRIMARY KEY, test TEXT)"; $connection->query($query); $query = "SELECT * FROM test_table"; $result = $connection->prepare($query); $this->assertInstanceOf(Concept\Database\ResultSet::class, $result); } }