Skip to content

Commit 51e1add

Browse files
Merge pull request #217 from Azure/zhiyuanliang/fix-lb-test
Update load balancing test
1 parent f9c6749 commit 51e1add

File tree

2 files changed

+14
-10
lines changed

2 files changed

+14
-10
lines changed

test/loadBalance.test.ts

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,15 @@ import * as chaiAsPromised from "chai-as-promised";
66
chai.use(chaiAsPromised);
77
const expect = chai.expect;
88
import { load } from "./exportedApi.js";
9-
import { MAX_TIME_OUT, restoreMocks, createMockedConnectionString, sleepInMs, createMockedEndpoint, mockConfigurationManagerGetClients, mockAppConfigurationClientLoadBalanceMode } from "./utils/testHelper.js";
9+
import { MAX_TIME_OUT, restoreMocks, createMockedConnectionString, createMockedKeyValue, sleepInMs, createMockedEndpoint, mockConfigurationManagerGetClients, mockAppConfigurationClientLoadBalanceMode } from "./utils/testHelper.js";
1010
import { AppConfigurationClient } from "@azure/app-configuration";
1111
import { ConfigurationClientWrapper } from "../src/configurationClientWrapper.js";
1212

13+
const mockedKVs = [
14+
{ value: "red", key: "app.settings.fontColor" },
15+
{ value: "40", key: "app.settings.fontSize" },
16+
{ value: "30", key: "app.settings.fontSize", label: "prod" }
17+
].map(createMockedKeyValue);
1318
const fakeEndpoint_1 = createMockedEndpoint("fake_1");
1419
const fakeEndpoint_2 = createMockedEndpoint("fake_2");
1520
const fakeClientWrapper_1 = new ConfigurationClientWrapper(fakeEndpoint_1, new AppConfigurationClient(createMockedConnectionString(fakeEndpoint_1)));
@@ -29,8 +34,8 @@ describe("load balance", function () {
2934

3035
it("should load balance the request when loadBalancingEnabled", async () => {
3136
mockConfigurationManagerGetClients([fakeClientWrapper_1, fakeClientWrapper_2], false);
32-
mockAppConfigurationClientLoadBalanceMode(fakeClientWrapper_1, clientRequestCounter_1);
33-
mockAppConfigurationClientLoadBalanceMode(fakeClientWrapper_2, clientRequestCounter_2);
37+
mockAppConfigurationClientLoadBalanceMode([mockedKVs], fakeClientWrapper_1, clientRequestCounter_1);
38+
mockAppConfigurationClientLoadBalanceMode([mockedKVs], fakeClientWrapper_2, clientRequestCounter_2);
3439

3540
const connectionString = createMockedConnectionString();
3641
const settings = await load(connectionString, {
@@ -66,8 +71,8 @@ describe("load balance", function () {
6671
clientRequestCounter_1.count = 0;
6772
clientRequestCounter_2.count = 0;
6873
mockConfigurationManagerGetClients([fakeClientWrapper_1, fakeClientWrapper_2], false);
69-
mockAppConfigurationClientLoadBalanceMode(fakeClientWrapper_1, clientRequestCounter_1);
70-
mockAppConfigurationClientLoadBalanceMode(fakeClientWrapper_2, clientRequestCounter_2);
74+
mockAppConfigurationClientLoadBalanceMode([mockedKVs], fakeClientWrapper_1, clientRequestCounter_1);
75+
mockAppConfigurationClientLoadBalanceMode([mockedKVs], fakeClientWrapper_2, clientRequestCounter_2);
7176

7277
const connectionString = createMockedConnectionString();
7378
// loadBalancingEnabled is default to false

test/utils/testHelper.ts

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -121,12 +121,11 @@ function mockAppConfigurationClientListConfigurationSettings(pages: Configuratio
121121
});
122122
}
123123

124-
function mockAppConfigurationClientLoadBalanceMode(clientWrapper: ConfigurationClientWrapper, countObject: { count: number }) {
125-
const emptyPages: ConfigurationSetting[][] = [];
124+
function mockAppConfigurationClientLoadBalanceMode(pages: ConfigurationSetting[][], clientWrapper: ConfigurationClientWrapper, countObject: { count: number }) {
126125
sinon.stub(clientWrapper.client, "listConfigurationSettings").callsFake((listOptions) => {
127126
countObject.count += 1;
128-
const kvs = _filterKVs(emptyPages.flat(), listOptions);
129-
return getMockedIterator(emptyPages, kvs, listOptions);
127+
const kvs = _filterKVs(pages.flat(), listOptions);
128+
return getMockedIterator(pages, kvs, listOptions);
130129
});
131130
}
132131

@@ -159,7 +158,7 @@ function mockConfigurationManagerGetClients(fakeClientWrappers: ConfigurationCli
159158
});
160159
}
161160

162-
function mockAppConfigurationClientGetConfigurationSetting(kvList, customCallback?: (options) => any) {
161+
function mockAppConfigurationClientGetConfigurationSetting(kvList: any[], customCallback?: (options) => any) {
163162
sinon.stub(AppConfigurationClient.prototype, "getConfigurationSetting").callsFake((settingId, options) => {
164163
if (customCallback) {
165164
customCallback(options);

0 commit comments

Comments
 (0)