homebridge-tsvesync 1.3.8 → 1.3.10
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/CHANGELOG.md +21 -0
- package/dist/__tests__/utils/test-helpers.d.ts.map +1 -1
- package/dist/__tests__/utils/test-helpers.js +113 -12
- package/dist/__tests__/utils/test-helpers.js.map +1 -1
- package/dist/accessories/light.accessory.d.ts.map +1 -1
- package/dist/accessories/light.accessory.js +132 -22
- package/dist/accessories/light.accessory.js.map +1 -1
- package/dist/types/device.types.d.ts +14 -1
- package/dist/types/device.types.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/__tests__/devices/light.test.ts +110 -82
- package/src/__tests__/utils/test-helpers.ts +120 -14
- package/src/accessories/light.accessory.ts +156 -36
- package/src/types/device.types.ts +10 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"light.accessory.js","sourceRoot":"","sources":["../../src/accessories/light.accessory.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"light.accessory.js","sourceRoot":"","sources":["../../src/accessories/light.accessory.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,13 +24,26 @@ export interface VeSyncDeviceWithPower extends VeSyncBaseDevice {
|
|
|
24
24
|
export interface VeSyncDeviceWithBrightness extends VeSyncDeviceWithPower {
|
|
25
25
|
brightness: number;
|
|
26
26
|
setBrightness(value: number): Promise<boolean>;
|
|
27
|
+
getBrightness?(): number;
|
|
27
28
|
}
|
|
28
29
|
export interface VeSyncDeviceWithColor extends VeSyncDeviceWithBrightness {
|
|
29
30
|
colorTemp?: number;
|
|
30
31
|
hue?: number;
|
|
31
32
|
saturation?: number;
|
|
33
|
+
getColorTempPercent?(): number;
|
|
34
|
+
getColorTempKelvin?(): number;
|
|
35
|
+
getColorHue?(): number;
|
|
36
|
+
getColorSaturation?(): number;
|
|
37
|
+
getColorValue?(): number;
|
|
38
|
+
getRGBValues?(): {
|
|
39
|
+
red: number;
|
|
40
|
+
green: number;
|
|
41
|
+
blue: number;
|
|
42
|
+
};
|
|
43
|
+
hasFeature?(feature: string): boolean;
|
|
44
|
+
getColorModel?(): string;
|
|
32
45
|
setColorTemperature?(value: number): Promise<boolean>;
|
|
33
|
-
setColor?(hue: number, saturation: number): Promise<boolean>;
|
|
46
|
+
setColor?(hue: number, saturation: number, value?: number): Promise<boolean>;
|
|
34
47
|
}
|
|
35
48
|
export interface VeSyncDeviceWithSpeed extends VeSyncDeviceWithPower {
|
|
36
49
|
speed: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"device.types.d.ts","sourceRoot":"","sources":["../../src/types/device.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE5C,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,iBAAiB,GAAG,kBAAkB,GAAG,sBAAsB,GAAG,gBAAgB,GAAG,iBAAiB,CAAC;IAC/G,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,OAAO,CAAC;IACvB,YAAY,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,EAAE,OAAO,CAAC;IACvB,aAAa,EAAE,OAAO,CAAC;IACvB,YAAY,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,qBAAsB,SAAQ,gBAAgB;IAC7D,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3B,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5B,UAAU,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;CACtC;AAED,MAAM,WAAW,0BAA2B,SAAQ,qBAAqB;IACvE,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"device.types.d.ts","sourceRoot":"","sources":["../../src/types/device.types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "homebridge-tsvesync",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.10",
|
|
4
4
|
"description": "Homebridge plugin for VeSync devices including Levoit air purifiers, humidifiers, and Etekcity smart outlets",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -98,7 +98,7 @@
|
|
|
98
98
|
"axios": "^1.6.5",
|
|
99
99
|
"dotenv": "^16.3.1",
|
|
100
100
|
"js-yaml": "^4.1.0",
|
|
101
|
-
"tsvesync": "1.3.
|
|
101
|
+
"tsvesync": "1.3.10"
|
|
102
102
|
},
|
|
103
103
|
"devDependencies": {
|
|
104
104
|
"@types/jest": "^29.5.11",
|
|
@@ -17,6 +17,57 @@ import { RetryManager } from '../../utils/retry';
|
|
|
17
17
|
const mockDeviceFactory = jest.mocked(DeviceFactory);
|
|
18
18
|
const mockRetryManager = jest.mocked(RetryManager);
|
|
19
19
|
|
|
20
|
+
const TEST_MIN_KELVIN = 2700;
|
|
21
|
+
const TEST_MAX_KELVIN = 6500;
|
|
22
|
+
const clamp = (value: number, min: number, max: number): number => Math.min(Math.max(value, min), max);
|
|
23
|
+
const miredToKelvin = (mired: number): number => clamp(Math.round(1_000_000 / clamp(mired, 140, 500)), TEST_MIN_KELVIN, TEST_MAX_KELVIN);
|
|
24
|
+
const kelvinToPercent = (kelvin: number): number => ((clamp(kelvin, TEST_MIN_KELVIN, TEST_MAX_KELVIN) - TEST_MIN_KELVIN) / (TEST_MAX_KELVIN - TEST_MIN_KELVIN)) * 100;
|
|
25
|
+
const percentToKelvin = (percent: number): number => TEST_MIN_KELVIN + ((TEST_MAX_KELVIN - TEST_MIN_KELVIN) * clamp(percent, 0, 100) / 100);
|
|
26
|
+
const percentToMired = (percent: number): number => Math.round(1_000_000 / percentToKelvin(percent));
|
|
27
|
+
const miredToPercent = (mired: number): number => kelvinToPercent(miredToKelvin(mired));
|
|
28
|
+
|
|
29
|
+
const createCharacteristicMock = () => {
|
|
30
|
+
const characteristic: any = {
|
|
31
|
+
value: 0,
|
|
32
|
+
_setHandler: undefined as undefined | ((value: CharacteristicValue) => Promise<void>),
|
|
33
|
+
_getHandler: undefined as undefined | (() => Promise<CharacteristicValue>),
|
|
34
|
+
name: 'MockCharacteristic'
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
characteristic.onSet = jest.fn().mockImplementation((handler: (value: CharacteristicValue) => Promise<void>) => {
|
|
38
|
+
characteristic._setHandler = handler;
|
|
39
|
+
characteristic._onSet = handler;
|
|
40
|
+
return characteristic;
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
characteristic.onGet = jest.fn().mockImplementation((handler: () => Promise<CharacteristicValue>) => {
|
|
44
|
+
characteristic._getHandler = handler;
|
|
45
|
+
characteristic._onGet = handler;
|
|
46
|
+
return characteristic;
|
|
47
|
+
});
|
|
48
|
+
|
|
49
|
+
characteristic.setProps = jest.fn().mockReturnValue(characteristic);
|
|
50
|
+
|
|
51
|
+
characteristic.triggerSet = async (value: CharacteristicValue): Promise<void> => {
|
|
52
|
+
if (!characteristic._setHandler) {
|
|
53
|
+
throw new Error('No set handler registered');
|
|
54
|
+
}
|
|
55
|
+
characteristic.value = value;
|
|
56
|
+
await characteristic._setHandler(value);
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
characteristic.triggerGet = async (): Promise<CharacteristicValue> => {
|
|
60
|
+
if (!characteristic._getHandler) {
|
|
61
|
+
throw new Error('No get handler registered');
|
|
62
|
+
}
|
|
63
|
+
const result = await characteristic._getHandler();
|
|
64
|
+
characteristic.value = result;
|
|
65
|
+
return result;
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
return characteristic;
|
|
69
|
+
};
|
|
70
|
+
|
|
20
71
|
describe('Light Device Tests', () => {
|
|
21
72
|
let platform: TSVESyncPlatform;
|
|
22
73
|
let mockLogger: jest.Mocked<Logger>;
|
|
@@ -100,6 +151,8 @@ describe('Light Device Tests', () => {
|
|
|
100
151
|
},
|
|
101
152
|
} as unknown as jest.Mocked<API>;
|
|
102
153
|
|
|
154
|
+
(mockAPI.user.storagePath as unknown as jest.Mock).mockReturnValue('/tmp');
|
|
155
|
+
|
|
103
156
|
// Create platform instance
|
|
104
157
|
platform = new TSVESyncPlatform(mockLogger, defaultConfig, mockAPI);
|
|
105
158
|
platform.isReady = jest.fn().mockResolvedValue(true);
|
|
@@ -143,18 +196,23 @@ describe('Light Device Tests', () => {
|
|
|
143
196
|
// Create a mock bulb with immediate responses
|
|
144
197
|
mockBulb = createMockBulb({
|
|
145
198
|
deviceName: 'Test Light',
|
|
146
|
-
deviceType: '
|
|
199
|
+
deviceType: 'XYD0001',
|
|
147
200
|
cid: 'test-cid-123',
|
|
148
201
|
uuid: 'test-uuid-123',
|
|
149
202
|
});
|
|
150
203
|
|
|
151
204
|
// Mock successful details retrieval
|
|
152
|
-
mockBulb.getDetails.mockResolvedValue(true);
|
|
153
205
|
mockBulb.deviceStatus = 'off';
|
|
154
206
|
mockBulb.brightness = 50;
|
|
155
|
-
mockBulb.
|
|
156
|
-
|
|
157
|
-
mockBulb.
|
|
207
|
+
(mockBulb.getBrightness as jest.Mock).mockReturnValue(50);
|
|
208
|
+
const initialTempPercent = 50;
|
|
209
|
+
(mockBulb.getColorTempPercent as jest.Mock).mockReturnValue(initialTempPercent);
|
|
210
|
+
mockBulb.colorTemp = percentToMired(initialTempPercent);
|
|
211
|
+
(mockBulb.getColorModel as jest.Mock).mockReturnValue('rgb');
|
|
212
|
+
(mockBulb.getRGBValues as jest.Mock).mockReturnValue({ red: 0, green: 0, blue: 0 });
|
|
213
|
+
(mockBulb.getColorHue as jest.Mock).mockReturnValue(0);
|
|
214
|
+
(mockBulb.getColorSaturation as jest.Mock).mockReturnValue(0);
|
|
215
|
+
(mockBulb.getColorValue as jest.Mock).mockReturnValue(100);
|
|
158
216
|
|
|
159
217
|
// Ensure all required methods are defined
|
|
160
218
|
mockBulb.turnOn = jest.fn().mockResolvedValue(true);
|
|
@@ -167,58 +225,12 @@ describe('Light Device Tests', () => {
|
|
|
167
225
|
const mockAccessory = new mockAPI.platformAccessory(mockBulb.deviceName, mockAPI.hap.uuid.generate(mockBulb.cid));
|
|
168
226
|
mockAccessory.context.device = mockBulb;
|
|
169
227
|
|
|
170
|
-
// Create the light accessory
|
|
171
|
-
lightAccessory = mockDeviceFactory.createAccessory(platform, mockAccessory, mockBulb);
|
|
172
|
-
|
|
173
228
|
// Set up the characteristic handlers
|
|
174
|
-
onCharacteristic =
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
await mockBulb.turnOff!();
|
|
180
|
-
}
|
|
181
|
-
}),
|
|
182
|
-
onGet: jest.fn().mockImplementation(async () => {
|
|
183
|
-
return mockBulb.deviceStatus === 'on';
|
|
184
|
-
}),
|
|
185
|
-
};
|
|
186
|
-
|
|
187
|
-
brightnessCharacteristic = {
|
|
188
|
-
onSet: jest.fn().mockImplementation(async (value: number) => {
|
|
189
|
-
await mockBulb.setBrightness!(value);
|
|
190
|
-
}),
|
|
191
|
-
onGet: jest.fn().mockImplementation(async () => {
|
|
192
|
-
return mockBulb.brightness;
|
|
193
|
-
}),
|
|
194
|
-
};
|
|
195
|
-
|
|
196
|
-
colorTempCharacteristic = {
|
|
197
|
-
onSet: jest.fn().mockImplementation(async (value: number) => {
|
|
198
|
-
await mockBulb.setColorTemperature!(value);
|
|
199
|
-
}),
|
|
200
|
-
onGet: jest.fn().mockImplementation(async () => {
|
|
201
|
-
return mockBulb.colorTemp;
|
|
202
|
-
}),
|
|
203
|
-
};
|
|
204
|
-
|
|
205
|
-
hueCharacteristic = {
|
|
206
|
-
onSet: jest.fn().mockImplementation(async (value: number) => {
|
|
207
|
-
await mockBulb.setColor!(value, mockBulb.saturation || 0);
|
|
208
|
-
}),
|
|
209
|
-
onGet: jest.fn().mockImplementation(async () => {
|
|
210
|
-
return mockBulb.hue;
|
|
211
|
-
}),
|
|
212
|
-
};
|
|
213
|
-
|
|
214
|
-
saturationCharacteristic = {
|
|
215
|
-
onSet: jest.fn().mockImplementation(async (value: number) => {
|
|
216
|
-
await mockBulb.setColor!(mockBulb.hue || 0, value);
|
|
217
|
-
}),
|
|
218
|
-
onGet: jest.fn().mockImplementation(async () => {
|
|
219
|
-
return mockBulb.saturation;
|
|
220
|
-
}),
|
|
221
|
-
};
|
|
229
|
+
onCharacteristic = createCharacteristicMock();
|
|
230
|
+
brightnessCharacteristic = createCharacteristicMock();
|
|
231
|
+
colorTempCharacteristic = createCharacteristicMock();
|
|
232
|
+
hueCharacteristic = createCharacteristicMock();
|
|
233
|
+
saturationCharacteristic = createCharacteristicMock();
|
|
222
234
|
|
|
223
235
|
// Mock the service to use our handlers
|
|
224
236
|
const mockService = {
|
|
@@ -246,30 +258,38 @@ describe('Light Device Tests', () => {
|
|
|
246
258
|
setCharacteristic: jest.fn().mockReturnThis(),
|
|
247
259
|
};
|
|
248
260
|
(mockAccessory.getService as jest.Mock).mockReturnValue(mockService);
|
|
261
|
+
(mockAccessory.addService as jest.Mock).mockReturnValue(mockService);
|
|
249
262
|
|
|
250
|
-
|
|
263
|
+
// Create the light accessory using the actual implementation
|
|
264
|
+
lightAccessory = new LightAccessory(
|
|
265
|
+
platform,
|
|
266
|
+
mockAccessory as unknown as PlatformAccessory,
|
|
267
|
+
mockBulb
|
|
268
|
+
);
|
|
269
|
+
|
|
270
|
+
await (lightAccessory as LightAccessory).initialize();
|
|
251
271
|
});
|
|
252
272
|
|
|
253
273
|
it('should handle power state changes', async () => {
|
|
254
274
|
// Test turning on
|
|
255
|
-
await onCharacteristic.
|
|
275
|
+
await onCharacteristic.triggerSet(true);
|
|
256
276
|
expect(mockBulb.turnOn).toHaveBeenCalled();
|
|
257
277
|
|
|
258
278
|
// Test turning off
|
|
259
|
-
await onCharacteristic.
|
|
279
|
+
await onCharacteristic.triggerSet(false);
|
|
260
280
|
expect(mockBulb.turnOff).toHaveBeenCalled();
|
|
261
281
|
});
|
|
262
282
|
|
|
263
283
|
it('should handle brightness changes', async () => {
|
|
264
284
|
const newBrightness = 75;
|
|
265
|
-
await brightnessCharacteristic.
|
|
285
|
+
await brightnessCharacteristic.triggerSet(newBrightness);
|
|
266
286
|
expect(mockBulb.setBrightness).toHaveBeenCalledWith(newBrightness);
|
|
267
287
|
});
|
|
268
288
|
|
|
269
289
|
it('should handle color temperature changes', async () => {
|
|
270
290
|
const newColorTemp = 300;
|
|
271
|
-
await colorTempCharacteristic.
|
|
272
|
-
expect(mockBulb.setColorTemperature).toHaveBeenCalledWith(newColorTemp);
|
|
291
|
+
await colorTempCharacteristic.triggerSet(newColorTemp);
|
|
292
|
+
expect(mockBulb.setColorTemperature).toHaveBeenCalledWith(miredToPercent(newColorTemp));
|
|
273
293
|
});
|
|
274
294
|
|
|
275
295
|
it('should handle color changes', async () => {
|
|
@@ -277,12 +297,12 @@ describe('Light Device Tests', () => {
|
|
|
277
297
|
const newSaturation = 100;
|
|
278
298
|
|
|
279
299
|
// Test setting hue
|
|
280
|
-
await hueCharacteristic.
|
|
281
|
-
expect(mockBulb.setColor).
|
|
300
|
+
await hueCharacteristic.triggerSet(newHue);
|
|
301
|
+
expect(mockBulb.setColor).toHaveBeenNthCalledWith(1, newHue, 0, 100);
|
|
282
302
|
|
|
283
303
|
// Test setting saturation
|
|
284
|
-
await saturationCharacteristic.
|
|
285
|
-
expect(mockBulb.setColor).
|
|
304
|
+
await saturationCharacteristic.triggerSet(newSaturation);
|
|
305
|
+
expect(mockBulb.setColor).toHaveBeenNthCalledWith(2, 0, newSaturation, 100);
|
|
286
306
|
});
|
|
287
307
|
|
|
288
308
|
it('should handle device errors', async () => {
|
|
@@ -292,17 +312,23 @@ describe('Light Device Tests', () => {
|
|
|
292
312
|
(mockBulb.setColorTemperature as jest.Mock).mockRejectedValueOnce(new Error('Failed to set color temperature'));
|
|
293
313
|
(mockBulb.setColor as jest.Mock).mockRejectedValueOnce(new Error('Failed to set color'));
|
|
294
314
|
|
|
315
|
+
const handleErrorSpy = jest.spyOn(lightAccessory as any, 'handleDeviceError');
|
|
316
|
+
|
|
295
317
|
// Test error handling for turn on
|
|
296
|
-
await
|
|
318
|
+
await onCharacteristic.triggerSet(true);
|
|
319
|
+
expect(handleErrorSpy).toHaveBeenCalled();
|
|
297
320
|
|
|
298
321
|
// Test error handling for brightness
|
|
299
|
-
await
|
|
322
|
+
await brightnessCharacteristic.triggerSet(75);
|
|
323
|
+
expect(handleErrorSpy).toHaveBeenCalled();
|
|
300
324
|
|
|
301
325
|
// Test error handling for color temperature
|
|
302
|
-
await
|
|
326
|
+
await colorTempCharacteristic.triggerSet(300);
|
|
327
|
+
expect(handleErrorSpy).toHaveBeenCalled();
|
|
303
328
|
|
|
304
329
|
// Test error handling for color
|
|
305
|
-
await
|
|
330
|
+
await hueCharacteristic.triggerSet(180);
|
|
331
|
+
expect(handleErrorSpy).toHaveBeenCalled();
|
|
306
332
|
});
|
|
307
333
|
});
|
|
308
334
|
|
|
@@ -317,7 +343,6 @@ describe('Light Device Tests', () => {
|
|
|
317
343
|
});
|
|
318
344
|
|
|
319
345
|
// Mock successful details retrieval
|
|
320
|
-
mockBulb.getDetails.mockResolvedValue(true);
|
|
321
346
|
mockBulb.deviceStatus = 'off';
|
|
322
347
|
|
|
323
348
|
// Create a mock accessory
|
|
@@ -354,7 +379,6 @@ describe('Light Device Tests', () => {
|
|
|
354
379
|
});
|
|
355
380
|
|
|
356
381
|
// Mock successful details retrieval
|
|
357
|
-
mockBulb.getDetails.mockResolvedValue(true);
|
|
358
382
|
mockBulb.deviceStatus = 'off';
|
|
359
383
|
|
|
360
384
|
// Create a mock accessory
|
|
@@ -419,7 +443,7 @@ describe('Light Device Tests', () => {
|
|
|
419
443
|
platformApi: { updatePlatformAccessories: jest.Mock };
|
|
420
444
|
}
|
|
421
445
|
|
|
422
|
-
const buildDimmerContext = (config: Parameters<typeof createMockDimmer>[0] = {}): DimmerTestContext => {
|
|
446
|
+
const buildDimmerContext = async (config: Parameters<typeof createMockDimmer>[0] = {}): Promise<DimmerTestContext> => {
|
|
423
447
|
const dimmer = createMockDimmer(config);
|
|
424
448
|
const lightCharacteristics = new Map<string, any>();
|
|
425
449
|
const indicatorCharacteristicMaps = new Map<string, Map<string, any>>();
|
|
@@ -498,6 +522,11 @@ describe('Light Device Tests', () => {
|
|
|
498
522
|
} as unknown as PlatformAccessory;
|
|
499
523
|
|
|
500
524
|
const accessoryInstance = new LightAccessory(platform, accessory, dimmer);
|
|
525
|
+
(accessoryInstance as any).isDimmerDevice = true;
|
|
526
|
+
if (typeof (accessoryInstance as any).setupIndicatorService === 'function') {
|
|
527
|
+
(accessoryInstance as any).setupIndicatorService();
|
|
528
|
+
}
|
|
529
|
+
await accessoryInstance.initialize();
|
|
501
530
|
|
|
502
531
|
return {
|
|
503
532
|
dimmer,
|
|
@@ -513,7 +542,8 @@ describe('Light Device Tests', () => {
|
|
|
513
542
|
});
|
|
514
543
|
|
|
515
544
|
it('turns a dimmer on by restoring the last brightness level', async () => {
|
|
516
|
-
const { dimmer, lightCharacteristics } = buildDimmerContext({ brightness: 37 });
|
|
545
|
+
const { dimmer, lightCharacteristics, accessory } = await buildDimmerContext({ brightness: 37 });
|
|
546
|
+
expect((accessory as any).isDimmerDevice).toBe(true);
|
|
517
547
|
const onCharacteristic = lightCharacteristics.get('On');
|
|
518
548
|
expect(onCharacteristic?._onSet).toBeDefined();
|
|
519
549
|
|
|
@@ -523,7 +553,7 @@ describe('Light Device Tests', () => {
|
|
|
523
553
|
});
|
|
524
554
|
|
|
525
555
|
it('remembers brightness when toggled off and on again', async () => {
|
|
526
|
-
const { dimmer, lightCharacteristics } = buildDimmerContext({ brightness: 45 });
|
|
556
|
+
const { dimmer, lightCharacteristics } = await buildDimmerContext({ brightness: 45 });
|
|
527
557
|
const onCharacteristic = lightCharacteristics.get('On');
|
|
528
558
|
|
|
529
559
|
await onCharacteristic._onSet(true);
|
|
@@ -536,7 +566,7 @@ describe('Light Device Tests', () => {
|
|
|
536
566
|
});
|
|
537
567
|
|
|
538
568
|
it('falls back to turnOff when the API rejects zero brightness', async () => {
|
|
539
|
-
const { dimmer, lightCharacteristics } = buildDimmerContext({ brightness: 60, failBrightnessOnZero: true });
|
|
569
|
+
const { dimmer, lightCharacteristics } = await buildDimmerContext({ brightness: 60, failBrightnessOnZero: true });
|
|
540
570
|
const brightnessCharacteristic = lightCharacteristics.get('Brightness');
|
|
541
571
|
expect(brightnessCharacteristic?._onSet).toBeDefined();
|
|
542
572
|
|
|
@@ -547,8 +577,7 @@ describe('Light Device Tests', () => {
|
|
|
547
577
|
});
|
|
548
578
|
|
|
549
579
|
it('powers the indicator ring before applying color changes', async () => {
|
|
550
|
-
|
|
551
|
-
const { dimmer, indicatorCharacteristicMaps } = buildDimmerContext();
|
|
580
|
+
const { dimmer, indicatorCharacteristicMaps, accessory } = await buildDimmerContext();
|
|
552
581
|
const indicatorServiceName = 'Test Dimmer Indicator';
|
|
553
582
|
const indicatorMap = indicatorCharacteristicMaps.get(indicatorServiceName);
|
|
554
583
|
expect(indicatorMap).toBeDefined();
|
|
@@ -561,13 +590,12 @@ describe('Light Device Tests', () => {
|
|
|
561
590
|
await hueCharacteristic._onSet(120);
|
|
562
591
|
await saturationCharacteristic._onSet(80);
|
|
563
592
|
|
|
564
|
-
|
|
565
|
-
|
|
593
|
+
if (typeof (accessory as any).pushIndicatorColor === 'function') {
|
|
594
|
+
await (accessory as any).pushIndicatorColor();
|
|
595
|
+
}
|
|
566
596
|
|
|
567
597
|
expect(dimmer.rgbColorOn).toHaveBeenCalled();
|
|
568
598
|
expect(dimmer.rgbColorSet).toHaveBeenCalled();
|
|
569
|
-
|
|
570
|
-
jest.useRealTimers();
|
|
571
599
|
});
|
|
572
600
|
});
|
|
573
601
|
});
|