44 */
55package com .kapeta .spring .mongo ;
66
7- import com .kapeta .spring .config .providers .TestConfigProvider ;
87import com .kapeta .spring .config .providers .types .ResourceInfo ;
98import org .junit .jupiter .api .Test ;
109import org .springframework .boot .autoconfigure .mongo .MongoProperties ;
1110
12-
1311import java .util .HashMap ;
1412import java .util .Map ;
1513
@@ -36,7 +34,7 @@ public void testCreateMongoUriProperties() {
3634
3735 MongoProperties properties = mongoDBConfig .createMongoUriProperties ("testDB" , "admin" , resourceInfo );
3836
39- assertEquals ("mongodb+srv://testUser:testPass@testHost/testDB?ssl=true& authSource=admin" , properties .getUri ());
37+ assertEquals ("mongodb+srv://testUser:testPass@testHost/testDB?authSource=admin&ssl=true " , properties .getUri ());
4038 }
4139
4240
@@ -58,7 +56,7 @@ public void testSSLFalse() {
5856
5957 MongoProperties properties = mongoDBConfig .createMongoUriProperties ("testDB" , "admin" , resourceInfo );
6058
61- assertEquals ("mongodb+srv://testUser:testPass@testHost/testDB?ssl=false& authSource=admin" , properties .getUri ());
59+ assertEquals ("mongodb+srv://testUser:testPass@testHost/testDB?authSource=admin&ssl=false " , properties .getUri ());
6260 }
6361
6462 @ Test
@@ -78,7 +76,7 @@ public void testEmptySSLConfig() {
7876
7977 MongoProperties properties = mongoDBConfig .createMongoUriProperties ("testDB" , "admin" , resourceInfo );
8078
81- assertEquals ("mongodb+srv://testUser:testPass@testHost/testDB?ssl=false& authSource=admin" , properties .getUri ());
79+ assertEquals ("mongodb+srv://testUser:testPass@testHost/testDB?authSource=admin" , properties .getUri ());
8280 }
8381
8482 @ Test
@@ -102,6 +100,28 @@ public void testEmptyAuthSource() {
102100 assertEquals ("mongodb+srv://testUser:testPass@testHost/testDB?ssl=true" , properties .getUri ());
103101 }
104102
103+ @ Test
104+ public void testMoreParameters () {
105+ Map <String , String > credentials = new HashMap <>();
106+ credentials .put ("username" , "testUser" );
107+ credentials .put ("password" , "testPass" );
108+
109+ Map <String , Object > options = new HashMap <>();
110+ options .put ("ssl" , "true" );
111+ options .put ("maxIdleTimeMS" , "120000" );
112+
113+ TestMongoDBConfig mongoDBConfig = new TestMongoDBConfig ("testResource" );
114+
115+ ResourceInfo resourceInfo = new ResourceInfo ();
116+ resourceInfo .setCredentials (credentials );
117+ resourceInfo .setOptions (options );
118+ resourceInfo .setHost ("testHost" );
119+
120+ MongoProperties properties = mongoDBConfig .createMongoUriProperties ("testDB" , "" , resourceInfo );
121+
122+ assertEquals ("mongodb+srv://testUser:testPass@testHost/testDB?maxIdleTimeMS=120000&ssl=true" , properties .getUri ());
123+ }
124+
105125 private class TestMongoDBConfig extends AbstractMongoDBConfig {
106126 public TestMongoDBConfig (String resourceName ) {
107127 super (resourceName );
0 commit comments