UNPKG

hue-hacking-node

Version:

Utility to control Philips Hue light bulbs

54 lines 2.28 kB
"use strict"; var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { if (ar || !(i in from)) { if (!ar) ar = Array.prototype.slice.call(from, 0, i); ar[i] = from[i]; } } return to.concat(ar || Array.prototype.slice.call(from)); }; Object.defineProperty(exports, "__esModule", { value: true }); var ava_1 = require("ava"); var hue_interfaces_js_1 = require("./hue-interfaces.js"); var rgb = new (hue_interfaces_js_1.RGB.bind.apply(hue_interfaces_js_1.RGB, __spreadArray([void 0], [1, 2, 256], false)))(); var coords = new (hue_interfaces_js_1.XYPoint.bind.apply(hue_interfaces_js_1.XYPoint, __spreadArray([void 0], [0.1, 0.2], false)))(); (0, ava_1.default)('RGB constructor', function (t) { t.is(rgb.r, 1); t.is(rgb.g, 2); t.is(rgb.b, 255); }); (0, ava_1.default)('RGB toString', function (t) { t.deepEqual(rgb.toString(), 'r: 1, g: 2, b: 255'); }); (0, ava_1.default)('RGB toCssString', function (t) { t.deepEqual(rgb.toCssString(), 'rgb(1, 2, 255)'); }); (0, ava_1.default)('XYPoint constructor', function (t) { t.is(coords.x, 0.1); t.is(coords.y, 0.2); }); (0, ava_1.default)('XYPoint toString', function (t) { t.deepEqual(coords.toString(), '{x: 0.1, y: 0.2}'); }); (0, ava_1.default)('HueUPNPResponse constructor', function (t) { var ok = new hue_interfaces_js_1.HueUPNPResponse({ id: '1234', internalipaddress: '192.168.x.x' }); t.is(ok.id, '1234'); t.is(ok.internalipaddress, '192.168.x.x'); var empty = new hue_interfaces_js_1.HueUPNPResponse({ thing1: 'narp', thing2: 'pfft' }); t.falsy(empty.id); t.falsy(empty.internalipaddress); var nullResponse = new hue_interfaces_js_1.HueUPNPResponse(null); t.is(nullResponse.id, undefined); t.is(nullResponse.internalipaddress, undefined); }); (0, ava_1.default)('clampToRange', function (t) { var min = 0, max = 255; t.is((0, hue_interfaces_js_1.clampToRange)(min, max, 254), 254); t.is((0, hue_interfaces_js_1.clampToRange)(min, max, 256), max); t.is((0, hue_interfaces_js_1.clampToRange)(min, max, -15), min); }); //# sourceMappingURL=hue-interfaces.spec.js.map