Skip to content

Commit 5ae4bd2

Browse files
committed
hopefully fix unit test
1 parent ec57625 commit 5ae4bd2

File tree

4 files changed

+22
-2
lines changed

4 files changed

+22
-2
lines changed

test/eventHandlers/FunctionEnvironmentReloadHandler.test.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import 'mocha';
66
import * as mock from 'mock-fs';
77
import { AzureFunctionsRpcMessages as rpc } from '../../azure-functions-language-worker-protobuf/src/rpc';
88
import { WorkerChannel } from '../../src/WorkerChannel';
9+
import { resetProcessEnv } from '../utils/resetProcessEnv';
910
import { beforeEventHandlerSuite } from './beforeEventHandlerSuite';
1011
import { TestEventStream } from './TestEventStream';
1112
import { Msg as WorkerInitMsg } from './WorkerInitHandler.test';
@@ -81,7 +82,7 @@ describe('FunctionEnvironmentReloadHandler', () => {
8182
});
8283

8384
after(() => {
84-
Object.assign(process.env, originalEnv);
85+
resetProcessEnv(originalEnv);
8586
});
8687

8788
afterEach(async () => {

test/eventHandlers/WorkerInitHandler.test.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import * as mockFs from 'mock-fs';
99
import { AzureFunctionsRpcMessages as rpc } from '../../azure-functions-language-worker-protobuf/src/rpc';
1010
import { logColdStartWarning } from '../../src/eventHandlers/WorkerInitHandler';
1111
import { WorkerChannel } from '../../src/WorkerChannel';
12+
import { resetProcessEnv } from '../utils/resetProcessEnv';
1213
import { beforeEventHandlerSuite } from './beforeEventHandlerSuite';
1314
import { RegExpStreamingMessage, TestEventStream } from './TestEventStream';
1415
import path = require('path');
@@ -140,11 +141,17 @@ export namespace Msg {
140141
describe('WorkerInitHandler', () => {
141142
let channel: WorkerChannel;
142143
let stream: TestEventStream;
144+
let originalEnv: NodeJS.ProcessEnv;
143145

144146
before(() => {
147+
originalEnv = { ...process.env };
145148
({ stream, channel } = beforeEventHandlerSuite());
146149
});
147150

151+
after(() => {
152+
resetProcessEnv(originalEnv);
153+
});
154+
148155
afterEach(async () => {
149156
mockFs.restore();
150157
await stream.afterEachEventHandlerTest();

test/startApp.test.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import { beforeEventHandlerSuite } from './eventHandlers/beforeEventHandlerSuite
1010
import { Msg as EnvReloadMsg } from './eventHandlers/FunctionEnvironmentReloadHandler.test';
1111
import { TestEventStream } from './eventHandlers/TestEventStream';
1212
import { Msg as WorkerInitMsg } from './eventHandlers/WorkerInitHandler.test';
13+
import { resetProcessEnv } from './utils/resetProcessEnv';
1314
import LogCategory = rpc.RpcLog.RpcLogCategory;
1415
import LogLevel = rpc.RpcLog.Level;
1516

@@ -54,7 +55,7 @@ describe('startApp', () => {
5455
});
5556

5657
after(() => {
57-
Object.assign(process.env, originalEnv);
58+
resetProcessEnv(originalEnv);
5859
});
5960

6061
afterEach(async () => {

test/utils/resetProcessEnv.ts

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
// Copyright (c) .NET Foundation. All rights reserved.
2+
// Licensed under the MIT License.
3+
4+
export function resetProcessEnv(originalEnv: NodeJS.ProcessEnv): void {
5+
for (const key of Object.keys(process.env)) {
6+
if (!(key in originalEnv)) {
7+
delete process.env[key];
8+
}
9+
}
10+
Object.assign(process.env, originalEnv);
11+
}

0 commit comments

Comments
 (0)