Implement Result and Connection::query()

[MAILPOET-6142]
This commit is contained in:
Jan Jakes
2024-07-13 13:57:28 +02:00
committed by Aschepikov
parent 2047f0b694
commit dc66a6a349
5 changed files with 339 additions and 10 deletions

View File

@@ -3,6 +3,7 @@
namespace MailPoet\Test\Doctrine\WPDB;
use MailPoet\Doctrine\WPDB\Connection;
use MailPoet\Doctrine\WPDB\Result;
use MailPoetTest;
use mysqli;
@@ -24,6 +25,30 @@ class ConnectionTest extends MailPoetTest {
$this->pdo->setAttribute(\PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION);
}
public function testQuery(): void {
$connection = new Connection();
// select
$result = $connection->query('SELECT 123');
$this->assertInstanceOf(Result::class, $result);
$this->assertSame('123', $result->fetchOne());
// insert
$result = $connection->query(sprintf("INSERT INTO %s (value) VALUES ('test')", self::TEST_TABLE_NAME));
$this->assertInstanceOf(Result::class, $result);
$this->assertFalse($result->fetchOne());
// update
$result = $connection->query(sprintf("UPDATE %s SET value = 'updated' WHERE id = %d", self::TEST_TABLE_NAME, $connection->lastInsertId()));
$this->assertInstanceOf(Result::class, $result);
$this->assertFalse($result->fetchOne());
// delete
$result = $connection->query(sprintf("DELETE FROM %s WHERE id = %d", self::TEST_TABLE_NAME, $connection->lastInsertId()));
$this->assertInstanceOf(Result::class, $result);
$this->assertFalse($result->fetchOne());
}
public function testExec(): void {
$connection = new Connection();