From ce5964f925667fedda63a03e8eadf5e2ccc68f25 Mon Sep 17 00:00:00 2001 From: Mauricio Scheffer <mauricioscheffer@gmail.com> Date: Tue, 31 Oct 2023 21:36:08 +0000 Subject: [PATCH 1/2] fix: Prevent invalid negative timestamps getting container logs (#1035) --- src/Testcontainers/Clients/DockerContainerOperations.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Testcontainers/Clients/DockerContainerOperations.cs b/src/Testcontainers/Clients/DockerContainerOperations.cs index 33d7e7d9e..aee7e39b1 100644 --- a/src/Testcontainers/Clients/DockerContainerOperations.cs +++ b/src/Testcontainers/Clients/DockerContainerOperations.cs @@ -69,8 +69,8 @@ public async Task<long> GetExitCodeAsync(string id, CancellationToken ct = defau { ShowStdout = true, ShowStderr = true, - Since = since.TotalSeconds.ToString("0", CultureInfo.InvariantCulture), - Until = until.TotalSeconds.ToString("0", CultureInfo.InvariantCulture), + Since = Math.Max(0, since.TotalSeconds).ToString("0", CultureInfo.InvariantCulture), + Until = Math.Max(0, until.TotalSeconds).ToString("0", CultureInfo.InvariantCulture), Timestamps = timestampsEnabled, }; From ba76abbc2c0b2cf66a888b1d9083454ab689067c Mon Sep 17 00:00:00 2001 From: Andre Hofmeister <9199345+HofmeisterAn@users.noreply.github.com> Date: Wed, 1 Nov 2023 08:04:02 +0100 Subject: [PATCH 2/2] chore: Set since and until log param default to unix epoch --- src/Testcontainers/Clients/TestcontainersClient.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Testcontainers/Clients/TestcontainersClient.cs b/src/Testcontainers/Clients/TestcontainersClient.cs index e122610d4..2714bb0a6 100644 --- a/src/Testcontainers/Clients/TestcontainersClient.cs +++ b/src/Testcontainers/Clients/TestcontainersClient.cs @@ -106,12 +106,12 @@ public Task<long> GetContainerExitCodeAsync(string id, CancellationToken ct = de if (default(DateTime).Equals(since)) { - since = DateTime.MinValue; + since = unixEpoch; } if (default(DateTime).Equals(until)) { - until = DateTime.MaxValue; + until = unixEpoch; } return Container.GetLogsAsync(id, since.ToUniversalTime().Subtract(unixEpoch), until.ToUniversalTime().Subtract(unixEpoch), timestampsEnabled, ct);