|
| 1 | +--TEST-- |
| 2 | +MongoDB\Driver\ReadPreference equality comparison |
| 3 | +--FILE-- |
| 4 | +<?php |
| 5 | + |
| 6 | +// True: same mode |
| 7 | +var_dump(new MongoDB\Driver\ReadPreference(MongoDB\Driver\ReadPreference::PRIMARY) == new MongoDB\Driver\ReadPreference(MongoDB\Driver\ReadPreference::PRIMARY)); |
| 8 | +// True: same mode and tag sets |
| 9 | +var_dump(new MongoDB\Driver\ReadPreference(MongoDB\Driver\ReadPreference::SECONDARY, [['dc' => 'east']]) == new MongoDB\Driver\ReadPreference(MongoDB\Driver\ReadPreference::SECONDARY, [['dc' => 'east']])); |
| 10 | +// True: same mode and maxStalenessSeconds |
| 11 | +var_dump(new MongoDB\Driver\ReadPreference(MongoDB\Driver\ReadPreference::SECONDARY, null, ['maxStalenessSeconds' => 120]) == new MongoDB\Driver\ReadPreference(MongoDB\Driver\ReadPreference::SECONDARY, null, ['maxStalenessSeconds' => 120])); |
| 12 | + |
| 13 | +// False for different modes |
| 14 | +var_dump(new MongoDB\Driver\ReadPreference(MongoDB\Driver\ReadPreference::PRIMARY) == new MongoDB\Driver\ReadPreference(MongoDB\Driver\ReadPreference::SECONDARY)); |
| 15 | +// False for different tag sets |
| 16 | +var_dump(new MongoDB\Driver\ReadPreference(MongoDB\Driver\ReadPreference::SECONDARY, [['dc' => 'east']]) == new MongoDB\Driver\ReadPreference(MongoDB\Driver\ReadPreference::SECONDARY, [['dc' => 'west']])); |
| 17 | +// False for different maxStalenessSeconds |
| 18 | +var_dump(new MongoDB\Driver\ReadPreference(MongoDB\Driver\ReadPreference::SECONDARY, null, ['maxStalenessSeconds' => 120]) == new MongoDB\Driver\ReadPreference(MongoDB\Driver\ReadPreference::SECONDARY, null, ['maxStalenessSeconds' => 180])); |
| 19 | +// False if one has tag sets and the other does not |
| 20 | +var_dump(new MongoDB\Driver\ReadPreference(MongoDB\Driver\ReadPreference::SECONDARY, [['dc' => 'east']]) == new MongoDB\Driver\ReadPreference(MongoDB\Driver\ReadPreference::SECONDARY)); |
| 21 | +// False if one has maxStalenessSeconds and the other does not |
| 22 | +var_dump(new MongoDB\Driver\ReadPreference(MongoDB\Driver\ReadPreference::SECONDARY, null, ['maxStalenessSeconds' => 120]) == new MongoDB\Driver\ReadPreference(MongoDB\Driver\ReadPreference::SECONDARY)); |
| 23 | +// False for different hedges |
| 24 | +var_dump(new MongoDB\Driver\ReadPreference(MongoDB\Driver\ReadPreference::SECONDARY, null, ['hedge' => ['enabled' => false]]) == new MongoDB\Driver\ReadPreference(MongoDB\Driver\ReadPreference::SECONDARY, null, ['hedge' => ['enabled' => true]])); |
| 25 | +// False if one has hedges sets and the other does not |
| 26 | +var_dump(new MongoDB\Driver\ReadPreference(MongoDB\Driver\ReadPreference::SECONDARY, null, ['hedge' => ['enabled' => true]]) == new MongoDB\Driver\ReadPreference(MongoDB\Driver\ReadPreference::SECONDARY)); |
| 27 | + |
| 28 | +// Object comparison fallback if one value is not a ReadPreference |
| 29 | +var_dump(new MongoDB\Driver\ReadPreference(MongoDB\Driver\ReadPreference::PRIMARY) == new MongoDB\BSON\Int64('1')); |
| 30 | + |
| 31 | +?> |
| 32 | +===DONE=== |
| 33 | +<?php exit(0); ?> |
| 34 | +--EXPECTF-- |
| 35 | +bool(true) |
| 36 | +bool(true) |
| 37 | +bool(true) |
| 38 | +bool(false) |
| 39 | +bool(false) |
| 40 | +bool(false) |
| 41 | +bool(false) |
| 42 | +bool(false) |
| 43 | +%A |
| 44 | +bool(false) |
| 45 | +%A |
| 46 | +bool(false) |
| 47 | +bool(false) |
| 48 | +===DONE=== |
0 commit comments