1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
|
--TEST--
MongoDB\Driver\WriteConcern::isDefault()
--FILE--
<?php
$tests = [
new MongoDB\Driver\WriteConcern(-3), // MONGOC_WRITE_CONCERN_W_MAJORITY
new MongoDB\Driver\WriteConcern(-2), // MONGOC_WRITE_CONCERN_W_DEFAULT
new MongoDB\Driver\WriteConcern(-1), // MONGOC_WRITE_CONCERN_W_ERRORS_IGNORED
new MongoDB\Driver\WriteConcern(0), // MONGOC_WRITE_CONCERN_W_UNACKNOWLEDGED
new MongoDB\Driver\WriteConcern(1),
new MongoDB\Driver\WriteConcern(2),
new MongoDB\Driver\WriteConcern('tag'),
new MongoDB\Driver\WriteConcern(MongoDB\Driver\WriteConcern::MAJORITY),
// mongoc_uri_parse_option() ignores empty string for w
(new MongoDB\Driver\Manager('mongodb://127.0.0.1/?w='))->getWriteConcern(),
// Cannot test "w=-3" since libmongoc URI parsing expects integers >= -1
// Cannot test "w=-2" since libmongoc URI parsing expects integers >= -1, and throws an error otherwise
(new MongoDB\Driver\Manager('mongodb://127.0.0.1/?w=-1'))->getWriteConcern(),
(new MongoDB\Driver\Manager('mongodb://127.0.0.1/?w=0'))->getWriteConcern(),
(new MongoDB\Driver\Manager('mongodb://127.0.0.1/?w=1'))->getWriteConcern(),
(new MongoDB\Driver\Manager('mongodb://127.0.0.1/?w=2'))->getWriteConcern(),
(new MongoDB\Driver\Manager('mongodb://127.0.0.1/?w=tag'))->getWriteConcern(),
(new MongoDB\Driver\Manager('mongodb://127.0.0.1/?w=majority'))->getWriteConcern(),
// Cannot test ['w' => null] since an integer or string type is expected (PHPC-887)
// Cannot test ['w' => -3] or ['w' => -2] since php_phongo_apply_wc_options_to_uri() expects integers >= -1
(new MongoDB\Driver\Manager(null, ['w' => -1]))->getWriteConcern(),
(new MongoDB\Driver\Manager(null, ['w' => 0]))->getWriteConcern(),
(new MongoDB\Driver\Manager(null, ['w' => 1]))->getWriteConcern(),
(new MongoDB\Driver\Manager(null, ['w' => 2]))->getWriteConcern(),
(new MongoDB\Driver\Manager(null, ['w' => 'tag']))->getWriteConcern(),
(new MongoDB\Driver\Manager(null, ['w' => 'majority']))->getWriteConcern(),
(new MongoDB\Driver\Manager)->getWriteConcern(),
];
foreach ($tests as $wc) {
var_dump($wc->isDefault());
}
?>
===DONE===
<?php exit(0); ?>
--EXPECT--
bool(false)
bool(true)
bool(false)
bool(false)
bool(false)
bool(false)
bool(false)
bool(false)
bool(true)
bool(false)
bool(false)
bool(false)
bool(false)
bool(false)
bool(false)
bool(false)
bool(false)
bool(false)
bool(false)
bool(false)
bool(false)
bool(true)
===DONE===
|