@autofleet/settings 1.4.0 → 1.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -118,7 +118,7 @@ class SettingsManager {
118
118
  settingsToGet.map((obj) => {
119
119
  const cacheKey = this.getCacheKey(obj.key, labels);
120
120
  const cacheValue = this.settingsCache.get(cacheKey);
121
- if (cacheValue && cacheValue !== waitingToNetwork) {
121
+ if (cacheValue !== undefined && cacheValue !== waitingToNetwork) {
122
122
  settingsToReturn.set(obj.key, cacheValue);
123
123
  }
124
124
  else {
@@ -126,7 +126,7 @@ class SettingsManager {
126
126
  }
127
127
  });
128
128
  if (process.env.NODE_ENV === 'test') {
129
- return settingsToGet.map((obj) => settingsToReturn.get(obj.key) || obj.defaultValue);
129
+ return settingsToGet.map((obj) => (settingsToReturn.get(obj.key) !== undefined ? settingsToReturn.get(obj.key) : obj.defaultValue));
130
130
  }
131
131
  if (settingsToFetch.length > 0) {
132
132
  let values;
@@ -219,6 +219,21 @@ describe('Settings', () => {
219
219
  values.map((value, i) => expect(value).toEqual(`defaultValue${i}`));
220
220
  process.env.NODE_ENV = 'node-common-test';
221
221
  }));
222
+ it('when NODE_ENV === test and setLocal is 0', () => __awaiter(void 0, void 0, void 0, function* () {
223
+ process.env.NODE_ENV = 'test';
224
+ const settings = new index_1.default({
225
+ serviceUrl: `http://${serviceUrl}/`,
226
+ });
227
+ yield settings.setLocal('key0', [], 0);
228
+ const values = yield settings.getMultiple([
229
+ {
230
+ key: 'key0',
231
+ defaultValue: 'defaultValue0',
232
+ },
233
+ ], []);
234
+ expect(values[0]).toBe(0);
235
+ process.env.NODE_ENV = 'node-common-test';
236
+ }));
222
237
  it('can get multiple settings', () => __awaiter(void 0, void 0, void 0, function* () {
223
238
  const mock = mockMultipleSettings(['key0', 'key1', 'key2'], [
224
239
  {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@autofleet/settings",
3
- "version": "1.4.0",
3
+ "version": "1.4.2",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
package/src/index.test.ts CHANGED
@@ -252,6 +252,23 @@ describe('Settings', () => {
252
252
  process.env.NODE_ENV = 'node-common-test';
253
253
  });
254
254
 
255
+ it('when NODE_ENV === test and setLocal is 0', async () => {
256
+ process.env.NODE_ENV = 'test';
257
+ const settings = new Settings({
258
+ serviceUrl: `http://${serviceUrl}/`,
259
+ });
260
+ await settings.setLocal('key0', [], 0);
261
+
262
+ const values = await settings.getMultiple([
263
+ {
264
+ key: 'key0',
265
+ defaultValue: 'defaultValue0',
266
+ },
267
+ ], []);
268
+ expect(values[0]).toBe(0);
269
+ process.env.NODE_ENV = 'node-common-test';
270
+ });
271
+
255
272
  it('can get multiple settings', async () => {
256
273
  const mock = mockMultipleSettings(
257
274
  ['key0', 'key1', 'key2'],
package/src/index.ts CHANGED
@@ -169,7 +169,7 @@ class SettingsManager {
169
169
  settingsToGet.map((obj) => {
170
170
  const cacheKey = this.getCacheKey(obj.key, labels);
171
171
  const cacheValue = this.settingsCache.get(cacheKey);
172
- if (cacheValue && cacheValue !== waitingToNetwork) {
172
+ if (cacheValue !== undefined && cacheValue !== waitingToNetwork) {
173
173
  settingsToReturn.set(obj.key, cacheValue);
174
174
  } else {
175
175
  settingsToFetch.push(obj.key);
@@ -177,7 +177,7 @@ class SettingsManager {
177
177
  });
178
178
 
179
179
  if (process.env.NODE_ENV === 'test') {
180
- return settingsToGet.map((obj) => settingsToReturn.get(obj.key) || obj.defaultValue);
180
+ return settingsToGet.map((obj) => (settingsToReturn.get(obj.key) !== undefined ? settingsToReturn.get(obj.key) : obj.defaultValue));
181
181
  }
182
182
 
183
183
  if (settingsToFetch.length > 0) {