From d2fcf0b0caffc0224ff10a644acfa24519e1433c Mon Sep 17 00:00:00 2001 From: Oskar Stark Date: Mon, 3 Mar 2025 08:17:07 +0100 Subject: [PATCH] Use `getDatabase` and `getCollection` Follows * https://github.com/mongodb/mongo-php-library/releases/tag/1.21.0 --- README.md | 6 +++--- composer.json | 2 +- src/Attribute/AutowireCollection.php | 2 +- src/Attribute/AutowireDatabase.php | 2 +- .../Functional/DataCollector/DriverEventSubscriberTest.php | 2 +- tests/Functional/FunctionalTestCase.php | 6 +++--- .../src/Controller/AbstractMongoDBController.php | 6 +++--- tests/Unit/Attribute/AutowireCollectionTest.php | 6 +++--- tests/Unit/Attribute/AutowireDatabaseTest.php | 6 +++--- 9 files changed, 19 insertions(+), 19 deletions(-) diff --git a/README.md b/README.md index 2cf4295..d451ecc 100644 --- a/README.md +++ b/README.md @@ -131,7 +131,7 @@ class MyService ## Database Usage The client service provides access to databases and collections. You can access a database by calling the -`selectDatabase` method, passing the database name and potential options: +`getDatabase` method, passing the database name and potential options: ```php use MongoDB\Client; @@ -144,7 +144,7 @@ class MyService public function __construct( Client $client, ) { - $this->database = $client->selectDatabase('myDatabase'); + $this->database = $client->getDatabase('myDatabase'); } } ``` @@ -185,7 +185,7 @@ class MyService ## Collection Usage -To inject a collection, you can either call the `selectCollection` method on a `Client` or `Database` instance. +To inject a collection, you can either call the `getCollection` method on a `Client` or `Database` instance. For convenience, the `#[AutowireCollection]` attribute provides a quicker alternative: ```php diff --git a/composer.json b/composer.json index c2f1ffa..80a35b8 100644 --- a/composer.json +++ b/composer.json @@ -13,7 +13,7 @@ ], "require": { "php": ">=8.1", - "mongodb/mongodb": "^1.17", + "mongodb/mongodb": "^1.21", "symfony/config": "^6.3 || ^7.0", "symfony/console": "^6.3 || ^7.0", "symfony/dependency-injection": "^6.3.5 || ^7.0", diff --git a/src/Attribute/AutowireCollection.php b/src/Attribute/AutowireCollection.php index 6f99bb4..a442bd7 100644 --- a/src/Attribute/AutowireCollection.php +++ b/src/Attribute/AutowireCollection.php @@ -61,7 +61,7 @@ public function __construct( : MongoDBExtension::createClientServiceId($client); parent::__construct( - callable: [new Reference($this->serviceId), 'selectCollection'], + callable: [new Reference($this->serviceId), 'getCollection'], lazy: $lazy, ); } diff --git a/src/Attribute/AutowireDatabase.php b/src/Attribute/AutowireDatabase.php index 0b9b56b..422102c 100644 --- a/src/Attribute/AutowireDatabase.php +++ b/src/Attribute/AutowireDatabase.php @@ -59,7 +59,7 @@ public function __construct( : MongoDBExtension::createClientServiceId($client); parent::__construct( - callable: [new Reference($this->serviceId), 'selectDatabase'], + callable: [new Reference($this->serviceId), 'getDatabase'], lazy: $lazy, ); } diff --git a/tests/Functional/DataCollector/DriverEventSubscriberTest.php b/tests/Functional/DataCollector/DriverEventSubscriberTest.php index 03e31ff..b729e89 100644 --- a/tests/Functional/DataCollector/DriverEventSubscriberTest.php +++ b/tests/Functional/DataCollector/DriverEventSubscriberTest.php @@ -36,7 +36,7 @@ public function collectCommandEvent(int $clientId, string $requestId, array $dat public function testCommandSucceeded(): void { - $this->getClient()->selectCollection('database1', 'collection1')->find(); + $this->getClient()->getCollection('database1', 'collection1')->find(); // The 2 events are commandStarted and commandSucceeded $this->assertCount(2, $this->collector->events); diff --git a/tests/Functional/FunctionalTestCase.php b/tests/Functional/FunctionalTestCase.php index 016abbf..598468a 100644 --- a/tests/Functional/FunctionalTestCase.php +++ b/tests/Functional/FunctionalTestCase.php @@ -68,9 +68,9 @@ public function assertNumberOfDocuments(int $expected, string $clientId, string { $client = self::getContainer()->get(MongoDBExtension::createClientServiceId($clientId)); assert($client instanceof Client); - $db = $client->selectDatabase($database); + $db = $client->getDatabase($database); assert($db instanceof Database); - $collection = $db->selectCollection($collection); + $collection = $db->getCollection($collection); assert($collection instanceof Collection); $this->assertSame($expected, $collection->countDocuments()); @@ -80,7 +80,7 @@ private function dropDatabase(string $clientId, string $database): void { $client = self::getContainer()->get(MongoDBExtension::createClientServiceId($clientId)); assert($client instanceof Client); - $db = $client->selectDatabase($database); + $db = $client->getDatabase($database); assert($db instanceof Database); $db->drop(); } diff --git a/tests/TestApplication/src/Controller/AbstractMongoDBController.php b/tests/TestApplication/src/Controller/AbstractMongoDBController.php index 990ac84..5426fb9 100644 --- a/tests/TestApplication/src/Controller/AbstractMongoDBController.php +++ b/tests/TestApplication/src/Controller/AbstractMongoDBController.php @@ -67,11 +67,11 @@ final public function insertDocumentForClient(Client|string $client, ?string $da assert($database !== null); - $db = $client->selectDatabase($database); + $db = $client->getDatabase($database); $db->drop(); if (! $collection instanceof Collection) { - $collection = $db->selectCollection($collection); + $collection = $db->getCollection($collection); } $collection->insertOne(['foo' => 'bar']); @@ -80,7 +80,7 @@ final public function insertDocumentForClient(Client|string $client, ?string $da final public function insertDocumentForDatabase(Database $database, string $collection): void { $database->drop(); - $collection = $database->selectCollection($collection); + $collection = $database->getCollection($collection); $collection->insertOne(['foo' => 'bar']); } diff --git a/tests/Unit/Attribute/AutowireCollectionTest.php b/tests/Unit/Attribute/AutowireCollectionTest.php index 006a73d..4a79d1b 100644 --- a/tests/Unit/Attribute/AutowireCollectionTest.php +++ b/tests/Unit/Attribute/AutowireCollectionTest.php @@ -35,7 +35,7 @@ public function testMinimal(): void { $autowire = new AutowireCollection(); - $this->assertEquals([new Reference($client = Client::class), 'selectCollection'], $autowire->value); + $this->assertEquals([new Reference($client = Client::class), 'getCollection'], $autowire->value); $definition = $autowire->buildDefinition( value: $autowire->value, @@ -62,7 +62,7 @@ public function testCollection(): void client: 'default', ); - $this->assertEquals([new Reference('mongodb.client.default'), 'selectCollection'], $autowire->value); + $this->assertEquals([new Reference('mongodb.client.default'), 'getCollection'], $autowire->value); $definition = $autowire->buildDefinition( value: $autowire->value, @@ -88,7 +88,7 @@ public function testWithoutCollection(): void client: 'default', ); - $this->assertEquals([new Reference('mongodb.client.default'), 'selectCollection'], $autowire->value); + $this->assertEquals([new Reference('mongodb.client.default'), 'getCollection'], $autowire->value); $definition = $autowire->buildDefinition( value: $autowire->value, diff --git a/tests/Unit/Attribute/AutowireDatabaseTest.php b/tests/Unit/Attribute/AutowireDatabaseTest.php index 1958e20..d6bc805 100644 --- a/tests/Unit/Attribute/AutowireDatabaseTest.php +++ b/tests/Unit/Attribute/AutowireDatabaseTest.php @@ -34,7 +34,7 @@ public function testMinimal(): void { $autowire = new AutowireDatabase(); - $this->assertEquals([new Reference(Client::class), 'selectDatabase'], $autowire->value); + $this->assertEquals([new Reference(Client::class), 'getDatabase'], $autowire->value); $definition = $autowire->buildDefinition( value: $autowire->value, @@ -58,7 +58,7 @@ public function testDatabase(): void client: 'default', ); - $this->assertEquals([new Reference('mongodb.client.default'), 'selectDatabase'], $autowire->value); + $this->assertEquals([new Reference('mongodb.client.default'), 'getDatabase'], $autowire->value); $definition = $autowire->buildDefinition( value: $autowire->value, @@ -82,7 +82,7 @@ public function testWithoutDatabase(): void client: 'default', ); - $this->assertEquals([new Reference('mongodb.client.default'), 'selectDatabase'], $autowire->value); + $this->assertEquals([new Reference('mongodb.client.default'), 'getDatabase'], $autowire->value); $definition = $autowire->buildDefinition( value: $autowire->value,