관리-도구
편집 파일: server-executeCommand-008.phpt
--TEST-- MongoDB\Driver\Server::executeCommand() does not send read preference to standalone --SKIPIF-- <?php require __DIR__ . "/../utils/basic-skipif.inc"; ?> <?php skip_if_not_live(); ?> <?php skip_if_not_standalone(); ?> <?php skip_if_not_clean(); ?> --FILE-- <?php require_once __DIR__ . "/../utils/basic.inc"; require_once __DIR__ . "/../utils/observer.php"; $manager = create_test_manager(); $server = $manager->selectServer(new MongoDB\Driver\ReadPreference(MongoDB\Driver\ReadPreference::RP_PRIMARY)); (new CommandObserver)->observe( function() use ($server) { $command = new MongoDB\Driver\Command([ 'ping' => true, ]); try { $server->executeCommand( DATABASE_NAME, $command, [ 'readPreference' => new \MongoDB\Driver\ReadPreference(\MongoDB\Driver\ReadPreference::RP_SECONDARY), 'readConcern' => new \MongoDB\Driver\ReadConcern(\MongoDB\Driver\ReadConcern::LOCAL), 'writeConcern' => new \MongoDB\Driver\WriteConcern(\MongoDB\Driver\WriteConcern::MAJORITY), ] ); } catch ( Exception $e ) { // Ignore exception that ping doesn't support writeConcern } }, function(stdClass $command) { echo isset($command->{'$readPreference'}) ? 'Read preference set' : 'No read preference set', "\n"; echo "Read Concern: ", $command->readConcern->level, "\n"; echo "Write Concern: ", $command->writeConcern->w, "\n"; } ); ?> ===DONE=== <?php exit(0); ?> --EXPECTF-- No read preference set Read Concern: local Write Concern: majority ===DONE===