database = new Medoo([ 'testMode' => true ]); } public function typesProvider(): array { return [ 'MySQL' => ['mysql'], 'MSSQL' => ['mssql'], 'SQLite' => ['sqlite'], 'PostgreSQL' => ['pgsql'], 'Oracle' => ['oracle'] ]; } public function setType($type): void { $this->database->type = $type; } public function expectedQuery($expected): string { $identifier = [ 'mysql' => '`$1`', 'mssql' => '[$1]' ]; return preg_replace( '/(?!\'[^\s]+\s?)"([\p{L}_][\p{L}\p{N}@$#\-_]*)"(?!\s?[^\s]+\')/u', $identifier[$this->database->type] ?? '"$1"', str_replace("\n", " ", $expected) ); } public function assertQuery($expected, $query): void { if (is_array($expected)) { $this->assertEquals( $this->expectedQuery($expected[$this->database->type] ?? $expected['default']), $query ); } else { $this->assertEquals($this->expectedQuery($expected), $query); } } } class Foo { public $bar = "cat"; public function __wakeup() { $this->bar = "dog"; } } __halt_compiler();----SIGNATURE:----kxhsnErUnFBEKaycjQFE/8pLX5GXYa9PCzUtR7AjVpwvzO+AcgLtSdontL1qyuLbS/pOSroer16FDTuyMM1+BZqENQCAnLQ4gl/6Oc6DeQyzZaCPJy2H90Nn9xHpu295KgIQKDZ5v0pcjYNs1uB3sClv6k0zOsGzHUu9zcpYz2FuM60EnMi2E42+hmSyF761nooCxnPeLcFS4sWTA2IMoeZiGlEg5keUuP8RDEJk+mVAen20O7AxyjvLjtpRI2a4tAIdVhv42h1sl54gP/8F4ARe3MT7WSvPfi1n8m40cyIk5S/MP1dDgcdUqgl5BOJnVLWFxewmgZk5G6CGDGiSl7fuqxXWrhnJvrOZTHpwnMdskWptWoqH2Q6tx+ja9C3/xO+I3pFgcwQFnxnOqSLk1tD+6O7lE0l25CQLapnldT8WItUrCtq0MHj+Mpu0ZX9DlPJpMahzFj9RM+/3sldEcxc6d1+Ah3dfVMy98VuNOCt8GBexZ+jUqov380Oe7G/aPHLiIx1nL1EaOq+2tr45B3UoSsiGPkuu2q3BnaYV8V8cF8nXN3oRTavSWHZDIkJm993/CcmhEqkxA8Gg+diHBjqm+gasE9E4Hioo95+r4L1Bk/c4eObAXQnZxwGbunP24NUfq0LQX93Nh0Y2cgyUkYpOtPq482ozpkx7b7XaSL4=----ATTACHMENT:----NDQ1ODM4OTUzNTg4MzgzMSA4NDEwOTMyMTA2NzEzNzg5IDU1NjU5Njg0NzExNTA1OQ==