From 4b642a753e530eedbbf52ce21bdb8220bd738e9e Mon Sep 17 00:00:00 2001 From: Surbhi Gupta Date: Tue, 21 Oct 2025 23:07:31 -0500 Subject: [PATCH 1/3] Tests update --- test/WebJobs.Script.Tests/ScriptHostTests.cs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/test/WebJobs.Script.Tests/ScriptHostTests.cs b/test/WebJobs.Script.Tests/ScriptHostTests.cs index 707eaebd65..9abff9f7e0 100644 --- a/test/WebJobs.Script.Tests/ScriptHostTests.cs +++ b/test/WebJobs.Script.Tests/ScriptHostTests.cs @@ -461,6 +461,8 @@ public async Task Initialize_WithRuntimeAndWorkerVersion_ReportRuntimeToMetricsT string functionsWorkerRuntimeVersion, string expectedRuntimeStack) { + EnvironmentExtensions.ClearCache(); + try { using (var tempDirectory = new TempDirectory()) @@ -1604,6 +1606,7 @@ public async Task Initialize_LogsWarningForExplicitlySetHostId() [InlineData(null, "app.dll", "dotnet", DotNetScriptTypes.DotNetAssembly)] // if FUNCTIONS_WORKER_RUNTIME is missing, assume dotnet public async Task Initialize_MissingWorkerRuntime_SetsCorrectRuntimeFromFunctionMetadata(string functionsWorkerRuntime, string scriptFile, string expectedMetricLanguage, string expectedMetadataLanguage) { + EnvironmentExtensions.ClearCache(); string workersDirPath = Path.Combine(AppContext.BaseDirectory, RpcWorkerConstants.DefaultWorkersDirectoryName); IFileSystem CreateFileSystem(string rootPath) From 722ee3208bffdd117b91d225b81ed42c9ad4b1c5 Mon Sep 17 00:00:00 2001 From: Surbhi Gupta Date: Wed, 22 Oct 2025 21:08:36 -0500 Subject: [PATCH 2/3] Implementing IDisposable --- test/WebJobs.Script.Tests/ScriptHostTests.cs | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/test/WebJobs.Script.Tests/ScriptHostTests.cs b/test/WebJobs.Script.Tests/ScriptHostTests.cs index 9abff9f7e0..449a439b7c 100644 --- a/test/WebJobs.Script.Tests/ScriptHostTests.cs +++ b/test/WebJobs.Script.Tests/ScriptHostTests.cs @@ -35,7 +35,7 @@ namespace Microsoft.Azure.WebJobs.Script.Tests { - public class ScriptHostTests : IClassFixture + public class ScriptHostTests : IClassFixture, IDisposable { private const string ID = "5a709861cab44e68bfed5d2c2fe7fc0c"; private readonly TestFixture _fixture; @@ -461,8 +461,6 @@ public async Task Initialize_WithRuntimeAndWorkerVersion_ReportRuntimeToMetricsT string functionsWorkerRuntimeVersion, string expectedRuntimeStack) { - EnvironmentExtensions.ClearCache(); - try { using (var tempDirectory = new TempDirectory()) @@ -1606,7 +1604,6 @@ public async Task Initialize_LogsWarningForExplicitlySetHostId() [InlineData(null, "app.dll", "dotnet", DotNetScriptTypes.DotNetAssembly)] // if FUNCTIONS_WORKER_RUNTIME is missing, assume dotnet public async Task Initialize_MissingWorkerRuntime_SetsCorrectRuntimeFromFunctionMetadata(string functionsWorkerRuntime, string scriptFile, string expectedMetricLanguage, string expectedMetadataLanguage) { - EnvironmentExtensions.ClearCache(); string workersDirPath = Path.Combine(AppContext.BaseDirectory, RpcWorkerConstants.DefaultWorkersDirectoryName); IFileSystem CreateFileSystem(string rootPath) @@ -1778,6 +1775,11 @@ public void Missing_FunctionsWorkerRuntime_LogsWarning(string functionsWorkerRun } } + public void Dispose() + { + EnvironmentExtensions.ClearCache(); + } + public class AssemblyMock : Assembly { public override object[] GetCustomAttributes(Type attributeType, bool inherit) From 1546ac307efd2c06703c203f450c1ffd27f27cad Mon Sep 17 00:00:00 2001 From: Surbhi Gupta Date: Thu, 23 Oct 2025 13:37:08 -0500 Subject: [PATCH 3/3] Resetting cache in Constructor --- test/WebJobs.Script.Tests/ScriptHostTests.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/test/WebJobs.Script.Tests/ScriptHostTests.cs b/test/WebJobs.Script.Tests/ScriptHostTests.cs index 449a439b7c..eb7e94cdd9 100644 --- a/test/WebJobs.Script.Tests/ScriptHostTests.cs +++ b/test/WebJobs.Script.Tests/ScriptHostTests.cs @@ -47,6 +47,7 @@ public class ScriptHostTests : IClassFixture, IDisp public ScriptHostTests(TestFixture fixture) { + EnvironmentExtensions.ClearCache(); Utility.ColdStartDelayMS = 50; _fixture = fixture; _settingsManager = ScriptSettingsManager.Instance;