public function testQUserType() { $in = array('id' => 62000, 'name' => 'test'); $writer = new Writer(null, null, array('user' => function ($data, Writer $writer) { $writer->writeUShort($data['id']); $writer->writeQString($data['name']); })); $writer->writeQVariant(new QVariant($in, 'user')); $data = (string) $writer; $reader = Reader::fromString($data, null, array('user' => function (Reader $reader) { return array('id' => $reader->readUShort(), 'name' => $reader->readQString()); })); $this->assertEquals($in, $reader->readQVariant()); }