--TEST-- MongoDB\Driver\Server::executeQuery() takes a read preference as legacy option --SKIPIF-- --FILE-- insert(['_id' => 1, 'x' => 2, 'y' => 3]); $manager->executeBulkWrite(NS, $bulk); $primaryRp = new MongoDB\Driver\ReadPreference(MongoDB\Driver\ReadPreference::PRIMARY); $secondaryRp = new MongoDB\Driver\ReadPreference(MongoDB\Driver\ReadPreference::SECONDARY); $primary = $manager->selectServer($primaryRp); $secondary = $manager->selectServer($secondaryRp); echo "Testing primary:\n"; $query = new MongoDB\Driver\Query(['x' => 3], ['projection' => ['y' => 1]]); $cursor = $manager->executeQuery(NS, $query, $primaryRp); echo "is_primary: ", $cursor->getServer()->isPrimary() ? 'true' : 'false', "\n"; echo "is_secondary: ", $cursor->getServer()->isSecondary() ? 'true' : 'false', "\n\n"; echo "Testing secondary:\n"; $query = new MongoDB\Driver\Query(['x' => 3], ['projection' => ['y' => 1]]); $cursor = $manager->executeQuery(NS, $query, $secondaryRp); echo "is_primary: ", $cursor->getServer()->isPrimary() ? 'true' : 'false', "\n"; echo "is_secondary: ", $cursor->getServer()->isSecondary() ? 'true' : 'false', "\n\n"; ?> ===DONE=== --EXPECTF-- Testing primary: is_primary: true is_secondary: false Testing secondary: is_primary: false is_secondary: true ===DONE===