diff --git a/Milvus.Client.Tests/DataTests.cs b/Milvus.Client.Tests/DataTests.cs index 784d9f8..30450a3 100644 --- a/Milvus.Client.Tests/DataTests.cs +++ b/Milvus.Client.Tests/DataTests.cs @@ -93,13 +93,13 @@ public async Task Timestamp_conversion() { DateTime before = DateTime.UtcNow; - await Task.Delay(200); + await Task.Delay(1100); MutationResult mutationResult = await InsertDataAsync(3, 4); DateTime insertion = MilvusTimestampUtils.ToDateTime(mutationResult.Timestamp); - await Task.Delay(200); + await Task.Delay(1100); DateTime after = DateTime.UtcNow; diff --git a/Milvus.Client.Tests/MilvusFixture.cs b/Milvus.Client.Tests/MilvusFixture.cs index 8782972..6b90c6f 100644 --- a/Milvus.Client.Tests/MilvusFixture.cs +++ b/Milvus.Client.Tests/MilvusFixture.cs @@ -1,3 +1,5 @@ +using Docker.DotNet.Models; +using DotNet.Testcontainers.Builders; using Testcontainers.Milvus; using Xunit; @@ -12,8 +14,22 @@ public sealed class MilvusFixture : IAsyncLifetime private readonly MilvusContainer _container = new MilvusBuilder() .WithImage(Environment.GetEnvironmentVariable("MILVUS_IMAGE") ?? DefaultMilvusImage) - .WithEnvironment("DEPLOY_MODE", "STANDALONE") .WithEnvironment("QUOTA_AND_LIMITS_FLUSH_RATE_COLLECTION_MAX", "-1") + // Remove once https://github.com/testcontainers/testcontainers-dotnet/pull/1569 is available. + .WithEnvironment("DEPLOY_MODE", "STANDALONE") + // Remove once https://github.com/testcontainers/testcontainers-dotnet/pull/1585 is available. + .WithWaitStrategy(Wait.ForUnixContainer().UntilContainerIsHealthy()) + .WithCreateParameterModifier(parameterModifier => + { + parameterModifier.Healthcheck = new HealthcheckConfig + { + Test = ["CMD-SHELL", $"curl -f http://localhost:{MilvusBuilder.MilvusManagementPort}/healthz"], + Interval = TimeSpan.FromSeconds(30), + Timeout = TimeSpan.FromSeconds(20), + StartPeriod = 90 * 1_000_000_000L, + Retries = 3, + }; + }) .Build(); public string Host => _container.Hostname;