Skip to content

Commit 1e52813

Browse files
authored
Update Node.js Worker Version to 3.8.1 (#9473)
[Release Notes](https://github.com/Azure/azure-functions-nodejs-worker/releases/tag/v3.8.1) And fix flaky Node.js tests
1 parent 13788be commit 1e52813

File tree

6 files changed

+35
-18
lines changed

6 files changed

+35
-18
lines changed

release_notes.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,4 @@
66
- Increase timeout for http proxying requests [#9433](https://github.com/Azure/azure-functions-host/pull/9433)
77
- Improve host.json sanitization
88
- Increased maximum HTTP request content size to 210000000 Bytes (~200MB)
9+
- Update Node.js Worker Version to [3.8.1](https://github.com/Azure/azure-functions-nodejs-worker/releases/tag/v3.8.1)

src/WebJobs.Script/WebJobs.Script.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@
5858
<!-- Workers -->
5959
<PackageReference Include="Microsoft.Azure.AppService.Proxy.Client" Version="2.2.20220831.41" />
6060
<PackageReference Include="Microsoft.Azure.Functions.JavaWorker" Version="2.12.1" />
61-
<PackageReference Include="Microsoft.Azure.Functions.NodeJsWorker" Version="3.8.0" />
61+
<PackageReference Include="Microsoft.Azure.Functions.NodeJsWorker" Version="3.8.1" />
6262
<PackageReference Include="Microsoft.Azure.Functions.PowerShellWorker.PS7.0" Version="4.0.2850" />
6363
<PackageReference Include="Microsoft.Azure.Functions.PowerShellWorker.PS7.2" Version="4.0.2890" />
6464
<PackageReference Include="Microsoft.Azure.Functions.PowerShellWorker.PS7.4" Version="4.0.2802" />
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
const func = require('@azure/functions-core');
2+
3+
func.registerHook('postInvocation', async () => {
4+
// Add slight delay to ensure logs show up before the invocation finishes
5+
// See these issues for more info:
6+
// https://github.com/Azure/azure-functions-host/issues/9238
7+
// https://github.com/Azure/azure-functions-host/issues/8222
8+
await new Promise((resolve) => setTimeout(resolve, 100));
9+
});
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
{
2+
"name": "nodeapp",
3+
"version": "1.0.0",
4+
"description": "",
5+
"scripts": {
6+
"start": "func start",
7+
"test": "echo \"No tests yet...\""
8+
},
9+
"dependencies": {},
10+
"devDependencies": {},
11+
"main": "index.js"
12+
}

test/WebJobs.Script.Tests.Integration/WebHostEndToEnd/NodeEndToEndTests.cs

Lines changed: 11 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -205,24 +205,19 @@ await TestHelpers.Await(() =>
205205

206206
// verify log levels in traces
207207
LogMessage[] traces = Fixture.Host.GetScriptHostLogMessages(userCategory).Where(t => t.FormattedMessage != null && t.FormattedMessage.Contains("loglevel")).ToArray();
208-
Assert.Equal(LogLevel.Information, traces[0].Level);
209-
Assert.Equal("loglevel default", traces[0].FormattedMessage);
210-
Assert.Equal(LogLevel.Information, traces[1].Level);
211-
Assert.Equal("loglevel info", traces[1].FormattedMessage);
212-
Assert.Equal(LogLevel.Trace, traces[2].Level);
213-
Assert.Equal("loglevel verbose", traces[2].FormattedMessage);
214-
Assert.Equal(LogLevel.Warning, traces[3].Level);
215-
Assert.Equal("loglevel warn", traces[3].FormattedMessage);
216-
Assert.Equal(LogLevel.Error, traces[4].Level);
217-
Assert.Equal("loglevel error", traces[4].FormattedMessage);
208+
Assert.True(traces.Any(t => t.Level == LogLevel.Information && t.FormattedMessage == "loglevel default" ));
209+
Assert.True(traces.Any(t => t.Level == LogLevel.Information && t.FormattedMessage == "loglevel info" ));
210+
Assert.True(traces.Any(t => t.Level == LogLevel.Trace && t.FormattedMessage == "loglevel verbose" ));
211+
Assert.True(traces.Any(t => t.Level == LogLevel.Warning && t.FormattedMessage == "loglevel warn" ));
212+
Assert.True(traces.Any(t => t.Level == LogLevel.Error && t.FormattedMessage == "loglevel error" ));
218213

219214
// verify most of the logs look correct
220-
Assert.EndsWith("Mathew Charles", userLogs[1]);
221-
Assert.EndsWith("null", userLogs[2]);
222-
Assert.EndsWith("1234", userLogs[3]);
223-
Assert.EndsWith("true", userLogs[4]);
224-
Assert.EndsWith("loglevel default", userLogs[5]);
225-
Assert.EndsWith("loglevel info", userLogs[6]);
215+
Assert.True(userLogs.Contains("Mathew Charles"));
216+
Assert.True(userLogs.Contains("null"));
217+
Assert.True(userLogs.Contains("1234"));
218+
Assert.True(userLogs.Contains("true"));
219+
Assert.True(userLogs.Contains("loglevel default"));
220+
Assert.True(userLogs.Contains("loglevel info"));
226221

227222
// verify the console log
228223
Assert.Equal("console log", consoleLog);

test/WebJobs.Script.Tests.Integration/WebJobs.Script.Tests.Integration.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@
4242
<PackageReference Include="Microsoft.AspNetCore.TestHost" Version="6.0.0" />
4343
<PackageReference Include="Microsoft.Azure.DocumentDB.Core" Version="2.11.2" />
4444
<PackageReference Include="Microsoft.Azure.EventHubs" Version="2.1.0" />
45-
<PackageReference Include="Microsoft.Azure.Functions.NodeJsWorker" Version="3.8.0" />
45+
<PackageReference Include="Microsoft.Azure.Functions.NodeJsWorker" Version="3.8.1" />
4646
<PackageReference Include="Microsoft.Azure.WebJobs.Extensions.Storage" Version="4.0.5-11874" />
4747
<PackageReference Include="Microsoft.Azure.Functions.JavaWorker" Version="2.12.1" />
4848
<PackageReference Include="Microsoft.Azure.Mobile.Client" Version="4.0.2" />

0 commit comments

Comments
 (0)