From 8efcfbb62d3a341791726ad678eda0d08266fda7 Mon Sep 17 00:00:00 2001 From: Samdanae Imran Date: Thu, 26 Sep 2024 11:40:33 +1200 Subject: [PATCH] Add IntegrationTest_Timeout_Minutes to enable configurable timeout --- .../Support/IntegrationTestTimeout.cs | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/source/Octopus.Tentacle.Tests.Integration/Support/IntegrationTestTimeout.cs b/source/Octopus.Tentacle.Tests.Integration/Support/IntegrationTestTimeout.cs index b88a537bf..4c8a11da0 100644 --- a/source/Octopus.Tentacle.Tests.Integration/Support/IntegrationTestTimeout.cs +++ b/source/Octopus.Tentacle.Tests.Integration/Support/IntegrationTestTimeout.cs @@ -13,6 +13,8 @@ public IntegrationTestTimeout(int timeoutInSeconds) : base((int)TimeSpan.FromSec public IntegrationTestTimeout() : base(TestTimeoutInMilliseconds()) { } + + public static int TestTimeoutInMilliseconds() { @@ -21,7 +23,18 @@ public static int TestTimeoutInMilliseconds() return (int)TimeSpan.FromHours(1).TotalMilliseconds; } - return (int)TimeSpan.FromMinutes(10).TotalMilliseconds; + var timeoutFromEnvironmentVariable = GetTimeoutFromEnvironmentVariable(); + return timeoutFromEnvironmentVariable ?? (int)TimeSpan.FromMinutes(10).TotalMilliseconds; + } + + static int? GetTimeoutFromEnvironmentVariable() + { + if (int.TryParse(Environment.GetEnvironmentVariable("IntegrationTest_Timeout_Minutes"), out var timeoutFromEnv)) + { + return (int)TimeSpan.FromMinutes(timeoutFromEnv).TotalMilliseconds; + } + + return null; } } } \ No newline at end of file