public function testSelect_QueryHandleError() { $isHandleError = false; $line = 0; $this->db->setErrorHandler(function ($message, $error) use(&$isHandleError, &$line) { $isHandleError = true; $context = __DIR__ . '/DatabaseTest.php line ' . $line; $this->assertEquals('no such column: ERROR_NO_VALUE at ' . $context, $message); $this->assertEquals(['code' => 1, 'message' => 'no such column: ERROR_NO_VALUE', 'query' => 'SELECT 2 + ERROR_NO_VALUE', 'context' => $context], $error); }); $line = __LINE__ + 1; $this->db->select("SELECT ?f + ?f", 2); $this->assertTrue($isHandleError); }