--TEST-- MongoDB\Driver\WriteConcern serialization (__serialize and __unserialize) --FILE-- 1 new MongoDB\Driver\WriteConcern(-2, 1000), // 64-bit wtimeout is always encoded as as string MongoDB\Driver\WriteConcern::__set_state(['w' => 2, 'wtimeout' => '2147483648']), ]; foreach ($tests as $test) { var_dump($test); echo $s = serialize($test), "\n"; var_dump(unserialize($s)); echo "\n"; } ?> ===DONE=== --EXPECTF-- object(MongoDB\Driver\WriteConcern)#%d (%d) { ["w"]=> string(8) "majority" } O:27:"MongoDB\Driver\WriteConcern":1:{s:1:"w";s:8:"majority";} object(MongoDB\Driver\WriteConcern)#%d (%d) { ["w"]=> string(8) "majority" } object(MongoDB\Driver\WriteConcern)#%d (%d) { } O:27:"MongoDB\Driver\WriteConcern":0:{} object(MongoDB\Driver\WriteConcern)#%d (%d) { } object(MongoDB\Driver\WriteConcern)#%d (%d) { ["w"]=> int(-1) } O:27:"MongoDB\Driver\WriteConcern":1:{s:1:"w";i:-1;} object(MongoDB\Driver\WriteConcern)#%d (%d) { ["w"]=> int(-1) } object(MongoDB\Driver\WriteConcern)#%d (%d) { ["w"]=> int(0) } O:27:"MongoDB\Driver\WriteConcern":1:{s:1:"w";i:0;} object(MongoDB\Driver\WriteConcern)#%d (%d) { ["w"]=> int(0) } object(MongoDB\Driver\WriteConcern)#%d (%d) { ["w"]=> int(1) } O:27:"MongoDB\Driver\WriteConcern":1:{s:1:"w";i:1;} object(MongoDB\Driver\WriteConcern)#%d (%d) { ["w"]=> int(1) } object(MongoDB\Driver\WriteConcern)#%d (%d) { ["w"]=> string(8) "majority" } O:27:"MongoDB\Driver\WriteConcern":1:{s:1:"w";s:8:"majority";} object(MongoDB\Driver\WriteConcern)#%d (%d) { ["w"]=> string(8) "majority" } object(MongoDB\Driver\WriteConcern)#%d (%d) { ["w"]=> string(3) "tag" } O:27:"MongoDB\Driver\WriteConcern":1:{s:1:"w";s:3:"tag";} object(MongoDB\Driver\WriteConcern)#%d (%d) { ["w"]=> string(3) "tag" } object(MongoDB\Driver\WriteConcern)#%d (%d) { ["w"]=> int(1) } O:27:"MongoDB\Driver\WriteConcern":1:{s:1:"w";i:1;} object(MongoDB\Driver\WriteConcern)#%d (%d) { ["w"]=> int(1) } object(MongoDB\Driver\WriteConcern)#%d (%d) { ["w"]=> int(1) ["j"]=> bool(false) } O:27:"MongoDB\Driver\WriteConcern":2:{s:1:"w";i:1;s:1:"j";b:0;} object(MongoDB\Driver\WriteConcern)#%d (%d) { ["w"]=> int(1) ["j"]=> bool(false) } object(MongoDB\Driver\WriteConcern)#%d (%d) { ["w"]=> int(1) ["wtimeout"]=> int(1000) } O:27:"MongoDB\Driver\WriteConcern":2:{s:1:"w";i:1;s:8:"wtimeout";i:1000;} object(MongoDB\Driver\WriteConcern)#%d (%d) { ["w"]=> int(1) ["wtimeout"]=> int(1000) } object(MongoDB\Driver\WriteConcern)#%d (%d) { ["w"]=> int(1) ["j"]=> bool(true) ["wtimeout"]=> int(1000) } O:27:"MongoDB\Driver\WriteConcern":3:{s:1:"w";i:1;s:1:"j";b:1;s:8:"wtimeout";i:1000;} object(MongoDB\Driver\WriteConcern)#%d (%d) { ["w"]=> int(1) ["j"]=> bool(true) ["wtimeout"]=> int(1000) } object(MongoDB\Driver\WriteConcern)#%d (%d) { ["j"]=> bool(true) } O:27:"MongoDB\Driver\WriteConcern":1:{s:1:"j";b:1;} object(MongoDB\Driver\WriteConcern)#%d (%d) { ["j"]=> bool(true) } object(MongoDB\Driver\WriteConcern)#%d (%d) { ["wtimeout"]=> int(1000) } O:27:"MongoDB\Driver\WriteConcern":1:{s:8:"wtimeout";i:1000;} object(MongoDB\Driver\WriteConcern)#%d (%d) { ["wtimeout"]=> int(1000) } object(MongoDB\Driver\WriteConcern)#%d (%d) { ["w"]=> int(2) ["wtimeout"]=> %rint\(2147483648\)|string\(10\) "2147483648"%r } O:27:"MongoDB\Driver\WriteConcern":2:{s:1:"w";i:2;s:8:"wtimeout";s:10:"2147483648";} object(MongoDB\Driver\WriteConcern)#%d (%d) { ["w"]=> int(2) ["wtimeout"]=> %rint\(2147483648\)|string\(10\) "2147483648"%r } ===DONE===