Esempio n. 1
0
 public function testDecode()
 {
     $db = $this->getDb();
     $adapter = new SqliteTypeAdapter($db);
     $this->assertNull($adapter->decode(DataType::integer(), null));
     $this->assertSame(15, $adapter->decode(DataType::integer(), '15'));
     $this->assertSame(33.0, $adapter->decode(DataType::float(), 33));
     $this->assertSame(true, $adapter->decode(DataType::boolean(), 1));
     $this->assertSame(false, $adapter->decode(DataType::boolean(), 0));
     $this->assertSame(4242, $adapter->decode(DataType::date(), 4242));
     $this->assertSame(4242, $adapter->decode(DataType::dateTime(), 4242));
     $this->assertSame('foo bar baz', $adapter->decode(DataType::string(), 'foo bar baz'));
     $this->assertSame([], $adapter->decode(DataType::object(), '[]'));
 }
Esempio n. 2
0
 public function testDecode()
 {
     $db = $this->getDb();
     $adapter = new PostgresqlTypeAdapter($db);
     $this->assertNull($adapter->decode(DataType::integer(), null));
     $this->assertSame(15, $adapter->decode(DataType::integer(), '15'));
     $this->assertSame(33.0, $adapter->decode(DataType::float(), 33));
     $this->assertSame(true, $adapter->decode(DataType::boolean(), 1));
     $this->assertSame(false, $adapter->decode(DataType::boolean(), 0));
     $time = time();
     $encoded = $adapter->encode(DataType::dateTime(), $time);
     $this->assertTrue(preg_match('/^"(\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2})"$/', $encoded, $matches) === 1);
     $this->assertEquals($time, $adapter->decode(DataType::dateTime(), $matches[1]));
     $this->assertSame('foo bar baz', $adapter->decode(DataType::string(), 'foo bar baz'));
     $this->assertSame([], $adapter->decode(DataType::object(), '[]'));
 }