Skip to content

Commit 13dcbe4

Browse files
authored
fix(MongoDb): Evaluate replica set status in wait strategy (#1369)
1 parent b93162c commit 13dcbe4

File tree

4 files changed

+4
-3
lines changed

4 files changed

+4
-3
lines changed

Directory.Packages.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@
5858
<PackageVersion Include="Microsoft.Azure.Kusto.Data" Version="12.2.8"/>
5959
<PackageVersion Include="Microsoft.Data.SqlClient" Version="5.2.2"/>
6060
<PackageVersion Include="Milvus.Client" Version="2.2.2-preview.6"/>
61-
<PackageVersion Include="MongoDB.Driver" Version="2.19.0"/>
61+
<PackageVersion Include="MongoDB.Driver" Version="3.2.0"/>
6262
<PackageVersion Include="MyCouch" Version="7.6.0"/>
6363
<PackageVersion Include="MySqlConnector" Version="2.2.5"/>
6464
<PackageVersion Include="NATS.Client" Version="1.0.8"/>

src/Testcontainers.MongoDb/MongoDbBuilder.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -190,7 +190,7 @@ private sealed class WaitInitiateReplicaSet : IWaitUntil
190190
/// <param name="configuration">The container configuration.</param>
191191
public WaitInitiateReplicaSet(MongoDbConfiguration configuration)
192192
{
193-
_scriptContent = $"try{{rs.status().ok}}catch(e){{rs.initiate({{'_id':'{configuration.ReplicaSetName}',members:[{{'_id':1,'host':'127.0.0.1:27017'}}]}}).ok}}";
193+
_scriptContent = $"try{{rs.status()}}catch(e){{rs.initiate({{_id:'{configuration.ReplicaSetName}',members:[{{_id:0,host:'127.0.0.1:27017'}}]}});throw e;}}";
194194
}
195195

196196
/// <inheritdoc />

src/Testcontainers.MongoDb/MongoDbContainer.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ public string GetConnectionString()
2626
var endpoint = new UriBuilder("mongodb", Hostname, GetMappedPublicPort(MongoDbBuilder.MongoDbPort));
2727
endpoint.UserName = Uri.EscapeDataString(_configuration.Username);
2828
endpoint.Password = Uri.EscapeDataString(_configuration.Password);
29+
endpoint.Query = "?directConnection=true";
2930
return endpoint.ToString();
3031
}
3132

tests/Testcontainers.MongoDb.Tests/MongoDbContainerTest.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ public async Task ReplicaSetStatus()
7373
}
7474
else
7575
{
76-
Assert.Equal(1L, execResult.ExitCode);
76+
Assert.True(1L.Equals(execResult.ExitCode), execResult.Stdout);
7777
Assert.Equal("MongoServerError: not running with --replSet\n", execResult.Stderr);
7878
}
7979
}

0 commit comments

Comments
 (0)