ha-frontend-cdce8p/test-mocha/common/util/can_toggle_state_test.js

58 lines
1.2 KiB
JavaScript

import { assert } from 'chai';
import canToggleState from '../../../js/common/util/can_toggle_state';
describe('canToggleState', () => {
const hass = {
config: {
services: {
light: {
turn_on: null, // Service keys only need to be present for test
turn_off: null,
},
},
},
};
it('Detects lights toggle', () => {
const stateObj = {
entity_id: 'light.bla',
state: 'on',
};
assert.isTrue(canToggleState(hass, stateObj));
});
it('Detects group with toggle', () => {
const stateObj = {
entity_id: 'group.bla',
state: 'on',
};
assert.isTrue(canToggleState(hass, stateObj));
});
it('Detects group without toggle', () => {
const stateObj = {
entity_id: 'group.devices',
state: 'home',
};
assert.isFalse(canToggleState(hass, stateObj));
});
it('Detects climate with toggle', () => {
const stateObj = {
entity_id: 'climate.bla',
attributes: {
supported_features: 4096,
},
};
assert.isTrue(canToggleState(hass, stateObj));
});
it('Detects climate without toggle', () => {
const stateObj = {
entity_id: 'climate.bla',
};
assert.isFalse(canToggleState(hass, stateObj));
});
});