@digital-alchemy/hass 24.11.2 → 24.11.4
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/{dynamic.d.ts → dynamic.d.mts} +1 -1
- package/dist/{dynamic.js → dynamic.mjs} +1 -1
- package/dist/dynamic.mjs.map +1 -0
- package/dist/{hass.module.d.ts → hass.module.d.mts} +1 -1
- package/dist/{hass.module.js → hass.module.mjs} +2 -2
- package/dist/hass.module.mjs.map +1 -0
- package/dist/helpers/backup.mjs +2 -0
- package/dist/helpers/backup.mjs.map +1 -0
- package/dist/helpers/{constants.helper.js → constants.mjs} +1 -1
- package/dist/helpers/constants.mjs.map +1 -0
- package/dist/helpers/{device.helper.d.ts → device.d.mts} +1 -1
- package/dist/helpers/{device.helper.js → device.mjs} +1 -1
- package/dist/helpers/device.mjs.map +1 -0
- package/dist/helpers/{entity-state.helper.d.ts → entity-state.d.mts} +4 -4
- package/dist/helpers/entity-state.mjs +2 -0
- package/dist/helpers/entity-state.mjs.map +1 -0
- package/dist/helpers/{features.helper.js → features.mjs} +1 -1
- package/dist/helpers/features.mjs.map +1 -0
- package/dist/helpers/fetch/{calendar.d.ts → calendar.d.mts} +1 -1
- package/dist/helpers/fetch/calendar.mjs +2 -0
- package/dist/helpers/fetch/calendar.mjs.map +1 -0
- package/dist/helpers/fetch/{configuration.d.ts → configuration.d.mts} +1 -1
- package/dist/helpers/fetch/{configuration.js → configuration.mjs} +1 -1
- package/dist/helpers/fetch/configuration.mjs.map +1 -0
- package/dist/helpers/fetch/index.d.mts +5 -0
- package/dist/helpers/fetch/index.mjs +6 -0
- package/dist/helpers/fetch/index.mjs.map +1 -0
- package/dist/helpers/fetch/{server-log.js → server-log.mjs} +1 -1
- package/dist/helpers/fetch/server-log.mjs.map +1 -0
- package/dist/helpers/fetch/{service-list.d.ts → service-list.d.mts} +2 -2
- package/dist/helpers/fetch/service-list.mjs +2 -0
- package/dist/helpers/fetch/service-list.mjs.map +1 -0
- package/dist/helpers/fetch/{weather-forecasts.js → weather-forecasts.mjs} +1 -1
- package/dist/helpers/fetch/weather-forecasts.mjs.map +1 -0
- package/dist/helpers/{fetch.helper.js → fetch.mjs} +1 -1
- package/dist/helpers/fetch.mjs.map +1 -0
- package/dist/helpers/{id-by.helper.d.ts → id-by.d.mts} +2 -2
- package/dist/helpers/id-by.mjs +2 -0
- package/dist/helpers/id-by.mjs.map +1 -0
- package/dist/helpers/index.d.mts +13 -0
- package/dist/helpers/index.mjs +14 -0
- package/dist/helpers/index.mjs.map +1 -0
- package/dist/helpers/{interfaces.helper.d.ts → interfaces.d.mts} +10 -9
- package/dist/helpers/{interfaces.helper.js → interfaces.mjs} +1 -1
- package/dist/helpers/interfaces.mjs.map +1 -0
- package/dist/helpers/manifest.mjs +2 -0
- package/dist/helpers/manifest.mjs.map +1 -0
- package/dist/helpers/notify.mjs +2 -0
- package/dist/helpers/notify.mjs.map +1 -0
- package/dist/helpers/{registry.d.ts → registry.d.mts} +2 -2
- package/dist/helpers/{registry.js → registry.mjs} +1 -1
- package/dist/helpers/registry.mjs.map +1 -0
- package/dist/helpers/{utility.helper.d.ts → utility.d.mts} +2 -2
- package/dist/helpers/{utility.helper.js → utility.mjs} +1 -1
- package/dist/helpers/utility.mjs.map +1 -0
- package/dist/helpers/{websocket.helper.d.ts → websocket.d.mts} +3 -3
- package/dist/helpers/websocket.mjs +2 -0
- package/dist/helpers/websocket.mjs.map +1 -0
- package/dist/index.d.mts +5 -0
- package/dist/index.mjs +6 -0
- package/dist/index.mjs.map +1 -0
- package/dist/mock_assistant/helpers/{fixtures.d.ts → fixtures.d.mts} +1 -1
- package/dist/mock_assistant/helpers/fixtures.mjs +2 -0
- package/dist/mock_assistant/helpers/fixtures.mjs.map +1 -0
- package/dist/mock_assistant/helpers/index.d.mts +1 -0
- package/dist/mock_assistant/helpers/index.mjs +2 -0
- package/dist/mock_assistant/helpers/index.mjs.map +1 -0
- package/dist/mock_assistant/index.d.mts +3 -0
- package/dist/mock_assistant/index.mjs +4 -0
- package/dist/mock_assistant/index.mjs.map +1 -0
- package/dist/mock_assistant/{main.js → main.mjs} +2 -2
- package/dist/mock_assistant/main.mjs.map +1 -0
- package/dist/mock_assistant/{mock-assistant.module.d.ts → mock-assistant.module.d.mts} +33 -33
- package/dist/mock_assistant/{mock-assistant.module.js → mock-assistant.module.mjs} +3 -3
- package/dist/mock_assistant/mock-assistant.module.mjs.map +1 -0
- package/dist/mock_assistant/{extensions/area.extension.d.ts → services/area.service.d.mts} +1 -1
- package/dist/mock_assistant/{extensions/area.extension.js → services/area.service.mjs} +1 -1
- package/dist/mock_assistant/services/area.service.mjs.map +1 -0
- package/dist/mock_assistant/{extensions/config.extension.d.ts → services/config.service.d.mts} +1 -1
- package/dist/mock_assistant/{extensions/config.extension.js → services/config.service.mjs} +1 -1
- package/dist/mock_assistant/services/config.service.mjs.map +1 -0
- package/dist/mock_assistant/{extensions/device.extension.d.ts → services/device.service.d.mts} +1 -1
- package/dist/mock_assistant/{extensions/device.extension.js → services/device.service.mjs} +2 -2
- package/dist/mock_assistant/services/device.service.mjs.map +1 -0
- package/dist/mock_assistant/{extensions/entity-registry.extension.d.ts → services/entity-registry.service.d.mts} +2 -2
- package/dist/mock_assistant/{extensions/entity-registry.extension.js → services/entity-registry.service.mjs} +1 -1
- package/dist/mock_assistant/services/entity-registry.service.mjs.map +1 -0
- package/dist/mock_assistant/{extensions/entity.extension.d.ts → services/entity.service.d.mts} +2 -2
- package/dist/mock_assistant/{extensions/entity.extension.js → services/entity.service.mjs} +1 -1
- package/dist/mock_assistant/services/entity.service.mjs.map +1 -0
- package/dist/mock_assistant/{extensions/events.extension.d.ts → services/events.service.d.mts} +1 -1
- package/dist/mock_assistant/{extensions/events.extension.js → services/events.service.mjs} +1 -1
- package/dist/mock_assistant/services/events.service.mjs.map +1 -0
- package/dist/mock_assistant/{extensions/fetch.extension.js → services/fetch.service.mjs} +1 -1
- package/dist/mock_assistant/services/fetch.service.mjs.map +1 -0
- package/dist/mock_assistant/{extensions/fixtures.extension.d.ts → services/fixtures.service.d.mts} +3 -3
- package/dist/mock_assistant/{extensions/fixtures.extension.js → services/fixtures.service.mjs} +1 -1
- package/dist/mock_assistant/services/fixtures.service.mjs.map +1 -0
- package/dist/mock_assistant/{extensions/floor.extension.d.ts → services/floor.service.d.mts} +1 -1
- package/dist/mock_assistant/{extensions/floor.extension.js → services/floor.service.mjs} +1 -1
- package/dist/mock_assistant/services/floor.service.mjs.map +1 -0
- package/dist/mock_assistant/services/index.d.mts +12 -0
- package/dist/mock_assistant/services/index.mjs +13 -0
- package/dist/mock_assistant/services/index.mjs.map +1 -0
- package/dist/mock_assistant/{extensions/label.extension.d.ts → services/label.service.d.mts} +1 -1
- package/dist/mock_assistant/{extensions/label.extension.js → services/label.service.mjs} +1 -1
- package/dist/mock_assistant/services/label.service.mjs.map +1 -0
- package/dist/mock_assistant/{extensions/services.extension.d.ts → services/services.service.d.mts} +1 -1
- package/dist/mock_assistant/{extensions/services.extension.js → services/services.service.mjs} +1 -1
- package/dist/mock_assistant/services/services.service.mjs.map +1 -0
- package/dist/mock_assistant/{extensions/websocket-api.extension.d.ts → services/websocket-api.service.d.mts} +1 -1
- package/dist/mock_assistant/{extensions/websocket-api.extension.js → services/websocket-api.service.mjs} +1 -1
- package/dist/mock_assistant/services/websocket-api.service.mjs.map +1 -0
- package/dist/mock_assistant/{extensions/zone.extension.d.ts → services/zone.service.d.mts} +1 -1
- package/dist/mock_assistant/{extensions/zone.extension.js → services/zone.service.mjs} +1 -1
- package/dist/mock_assistant/services/zone.service.mjs.map +1 -0
- package/dist/{quickboot.module.js → quickboot.module.mjs} +2 -2
- package/dist/quickboot.module.mjs.map +1 -0
- package/dist/{extensions/area.extension.d.ts → services/area.service.d.mts} +1 -1
- package/dist/{extensions/area.extension.js → services/area.service.mjs} +2 -2
- package/dist/services/area.service.mjs.map +1 -0
- package/dist/{extensions/backup.extension.d.ts → services/backup.service.d.mts} +1 -1
- package/dist/{extensions/backup.extension.js → services/backup.service.mjs} +1 -1
- package/dist/services/backup.service.mjs.map +1 -0
- package/dist/{extensions/call-proxy.extension.d.ts → services/call-proxy.service.d.mts} +1 -1
- package/dist/{extensions/call-proxy.extension.js → services/call-proxy.service.mjs} +1 -1
- package/dist/services/call-proxy.service.mjs.map +1 -0
- package/dist/{extensions/config.extension.d.ts → services/config.service.d.mts} +1 -1
- package/dist/{extensions/config.extension.js → services/config.service.mjs} +2 -2
- package/dist/services/config.service.mjs.map +1 -0
- package/dist/{extensions/conversation.extension.d.ts → services/conversation.service.d.mts} +1 -1
- package/dist/{extensions/conversation.extension.js → services/conversation.service.mjs} +2 -2
- package/dist/services/conversation.service.mjs.map +1 -0
- package/dist/{extensions/device.extension.d.ts → services/device.service.d.mts} +1 -1
- package/dist/{extensions/device.extension.js → services/device.service.mjs} +2 -2
- package/dist/services/device.service.mjs.map +1 -0
- package/dist/{extensions/entity.extension.d.ts → services/entity.service.d.mts} +1 -1
- package/dist/{extensions/entity.extension.js → services/entity.service.mjs} +2 -2
- package/dist/services/entity.service.mjs.map +1 -0
- package/dist/{extensions/events.extension.d.ts → services/events.service.d.mts} +1 -1
- package/dist/{extensions/events.extension.js → services/events.service.mjs} +2 -2
- package/dist/services/events.service.mjs.map +1 -0
- package/dist/{extensions/fetch-api.extension.d.ts → services/fetch-api.service.d.mts} +4 -3
- package/dist/{extensions/fetch-api.extension.js → services/fetch-api.service.mjs} +3 -2
- package/dist/services/fetch-api.service.mjs.map +1 -0
- package/dist/{extensions/floor.extension.d.ts → services/floor.service.d.mts} +1 -1
- package/dist/{extensions/floor.extension.js → services/floor.service.mjs} +2 -2
- package/dist/services/floor.service.mjs.map +1 -0
- package/dist/{extensions/id-by.extension.d.ts → services/id-by.service.d.mts} +1 -1
- package/dist/{extensions/id-by.extension.js → services/id-by.service.mjs} +1 -1
- package/dist/services/id-by.service.mjs.map +1 -0
- package/dist/services/index.d.mts +16 -0
- package/dist/services/index.mjs +17 -0
- package/dist/services/index.mjs.map +1 -0
- package/dist/{extensions/internal.extension.d.ts → services/internal.service.d.mts} +1 -1
- package/dist/{extensions/internal.extension.js → services/internal.service.mjs} +2 -2
- package/dist/services/internal.service.mjs.map +1 -0
- package/dist/{extensions/label.extension.d.ts → services/label.service.d.mts} +1 -1
- package/dist/{extensions/label.extension.js → services/label.service.mjs} +2 -2
- package/dist/services/label.service.mjs.map +1 -0
- package/dist/{extensions/reference.extension.d.ts → services/reference.service.d.mts} +1 -1
- package/dist/{extensions/reference.extension.js → services/reference.service.mjs} +5 -4
- package/dist/services/reference.service.mjs.map +1 -0
- package/dist/{extensions/registry.extension.d.ts → services/registry.service.d.mts} +1 -1
- package/dist/{extensions/registry.extension.js → services/registry.service.mjs} +1 -1
- package/dist/services/registry.service.mjs.map +1 -0
- package/dist/{extensions/websocket-api.extension.d.ts → services/websocket-api.service.d.mts} +1 -1
- package/dist/{extensions/websocket-api.extension.js → services/websocket-api.service.mjs} +1 -1
- package/dist/services/websocket-api.service.mjs.map +1 -0
- package/dist/{extensions/zone.extension.d.ts → services/zone.service.d.mts} +1 -1
- package/dist/{extensions/zone.extension.js → services/zone.service.mjs} +2 -2
- package/dist/services/zone.service.mjs.map +1 -0
- package/dist/testing/{area.spec.js → area.spec.mjs} +13 -13
- package/dist/testing/area.spec.mjs.map +1 -0
- package/dist/testing/{backup.spec.js → backup.spec.mjs} +15 -19
- package/dist/testing/backup.spec.mjs.map +1 -0
- package/dist/testing/{config.spec.js → config.spec.mjs} +17 -19
- package/dist/testing/config.spec.mjs.map +1 -0
- package/dist/testing/{device.spec.js → device.spec.mjs} +6 -6
- package/dist/testing/device.spec.mjs.map +1 -0
- package/dist/testing/{entity.spec.js → entity.spec.mjs} +8 -8
- package/dist/testing/entity.spec.mjs.map +1 -0
- package/dist/testing/{events.spec.js → events.spec.mjs} +16 -16
- package/dist/testing/events.spec.mjs.map +1 -0
- package/dist/testing/{fetch-api.spec.js → fetch-api.spec.mjs} +23 -23
- package/dist/testing/fetch-api.spec.mjs.map +1 -0
- package/dist/testing/{fixtures.spec.js → fixtures.spec.mjs} +5 -5
- package/dist/testing/fixtures.spec.mjs.map +1 -0
- package/dist/testing/{floor.spec.js → floor.spec.mjs} +13 -13
- package/dist/testing/floor.spec.mjs.map +1 -0
- package/dist/testing/{id-by.spec.js → id-by.spec.mjs} +3 -3
- package/dist/testing/id-by.spec.mjs.map +1 -0
- package/dist/testing/{label.spec.js → label.spec.mjs} +13 -13
- package/dist/testing/label.spec.mjs.map +1 -0
- package/dist/testing/{ref-by.spec.js → ref-by.spec.mjs} +4 -4
- package/dist/testing/ref-by.spec.mjs.map +1 -0
- package/dist/testing/{websocket.spec.js → websocket.spec.mjs} +5 -9
- package/dist/testing/websocket.spec.mjs.map +1 -0
- package/dist/testing/{workflow.spec.js → workflow.spec.mjs} +13 -13
- package/dist/testing/workflow.spec.mjs.map +1 -0
- package/dist/testing/zone.spec.d.mts +1 -0
- package/dist/testing/{zone.spec.js → zone.spec.mjs} +9 -9
- package/dist/testing/zone.spec.mjs.map +1 -0
- package/package.json +21 -62
- package/src/{dynamic.ts → dynamic.mts} +1 -1
- package/src/{hass.module.ts → hass.module.mts} +1 -1
- package/src/helpers/{device.helper.ts → device.mts} +1 -1
- package/src/helpers/{entity-state.helper.ts → entity-state.mts} +11 -5
- package/src/helpers/fetch/{calendar.ts → calendar.mts} +1 -1
- package/src/helpers/fetch/{configuration.ts → configuration.mts} +1 -1
- package/src/helpers/fetch/index.mts +5 -0
- package/src/helpers/fetch/{service-list.ts → service-list.mts} +2 -2
- package/src/helpers/{id-by.helper.ts → id-by.mts} +2 -2
- package/src/helpers/index.mts +13 -0
- package/src/helpers/{interfaces.helper.ts → interfaces.mts} +10 -10
- package/src/helpers/{registry.ts → registry.mts} +2 -2
- package/src/helpers/{utility.helper.ts → utility.mts} +2 -2
- package/src/helpers/{websocket.helper.ts → websocket.mts} +3 -3
- package/src/index.mts +5 -0
- package/src/mock_assistant/helpers/{fixtures.ts → fixtures.mts} +1 -1
- package/src/mock_assistant/helpers/index.mts +1 -0
- package/src/mock_assistant/index.mts +3 -0
- package/src/mock_assistant/{main.ts → main.mts} +2 -2
- package/src/mock_assistant/{mock-assistant.module.ts → mock-assistant.module.mts} +2 -2
- package/src/mock_assistant/{extensions/area.extension.ts → services/area.service.mts} +2 -2
- package/src/mock_assistant/{extensions/config.extension.ts → services/config.service.mts} +1 -1
- package/src/mock_assistant/{extensions/device.extension.ts → services/device.service.mts} +2 -2
- package/src/mock_assistant/{extensions/entity-registry.extension.ts → services/entity-registry.service.mts} +2 -2
- package/src/mock_assistant/{extensions/entity.extension.ts → services/entity.service.mts} +2 -2
- package/src/mock_assistant/{extensions/events.extension.ts → services/events.service.mts} +1 -1
- package/src/mock_assistant/{extensions/fixtures.extension.ts → services/fixtures.service.mts} +2 -2
- package/src/mock_assistant/{extensions/floor.extension.ts → services/floor.service.mts} +2 -2
- package/src/mock_assistant/services/index.mts +12 -0
- package/src/mock_assistant/{extensions/label.extension.ts → services/label.service.mts} +2 -2
- package/src/mock_assistant/{extensions/services.extension.ts → services/services.service.mts} +1 -1
- package/src/mock_assistant/{extensions/websocket-api.extension.ts → services/websocket-api.service.mts} +1 -1
- package/src/mock_assistant/{extensions/zone.extension.ts → services/zone.service.mts} +2 -2
- package/src/{quickboot.module.ts → quickboot.module.mts} +1 -1
- package/src/{extensions/area.extension.ts → services/area.service.mts} +2 -2
- package/src/{extensions/backup.extension.ts → services/backup.service.mts} +1 -1
- package/src/{extensions/call-proxy.extension.ts → services/call-proxy.service.mts} +2 -1
- package/src/{extensions/config.extension.ts → services/config.service.mts} +2 -2
- package/src/{extensions/conversation.extension.ts → services/conversation.service.mts} +1 -1
- package/src/{extensions/device.extension.ts → services/device.service.mts} +1 -1
- package/src/{extensions/entity.extension.ts → services/entity.service.mts} +1 -1
- package/src/{extensions/events.extension.ts → services/events.service.mts} +1 -1
- package/src/{extensions/fetch-api.extension.ts → services/fetch-api.service.mts} +3 -5
- package/src/{extensions/floor.extension.ts → services/floor.service.mts} +2 -2
- package/src/{extensions/id-by.extension.ts → services/id-by.service.mts} +2 -2
- package/src/services/index.mts +16 -0
- package/src/{extensions/internal.extension.ts → services/internal.service.mts} +1 -1
- package/src/{extensions/label.extension.ts → services/label.service.mts} +2 -2
- package/src/{extensions/reference.extension.ts → services/reference.service.mts} +5 -4
- package/src/{extensions/registry.extension.ts → services/registry.service.mts} +1 -1
- package/src/{extensions/websocket-api.extension.ts → services/websocket-api.service.mts} +1 -1
- package/src/{extensions/zone.extension.ts → services/zone.service.mts} +1 -1
- package/src/testing/{area.spec.ts → area.spec.mts} +13 -13
- package/src/testing/{backup.spec.ts → backup.spec.mts} +15 -19
- package/src/testing/{config.spec.ts → config.spec.mts} +20 -21
- package/src/testing/{device.spec.ts → device.spec.mts} +6 -6
- package/src/testing/{entity.spec.ts → entity.spec.mts} +8 -8
- package/src/testing/{events.spec.ts → events.spec.mts} +15 -15
- package/src/testing/{fetch-api.spec.ts → fetch-api.spec.mts} +26 -25
- package/src/testing/{fixtures.spec.ts → fixtures.spec.mts} +4 -4
- package/src/testing/{floor.spec.ts → floor.spec.mts} +13 -13
- package/src/testing/{id-by.spec.ts → id-by.spec.mts} +3 -3
- package/src/testing/{label.spec.ts → label.spec.mts} +13 -13
- package/src/testing/{ref-by.spec.ts → ref-by.spec.mts} +4 -4
- package/src/testing/{websocket.spec.ts → websocket.spec.mts} +4 -8
- package/src/testing/{workflow.spec.ts → workflow.spec.mts} +12 -12
- package/src/testing/{zone.spec.ts → zone.spec.mts} +8 -8
- package/dist/dynamic.js.map +0 -1
- package/dist/extensions/area.extension.js.map +0 -1
- package/dist/extensions/backup.extension.js.map +0 -1
- package/dist/extensions/call-proxy.extension.js.map +0 -1
- package/dist/extensions/config.extension.js.map +0 -1
- package/dist/extensions/conversation.extension.js.map +0 -1
- package/dist/extensions/device.extension.js.map +0 -1
- package/dist/extensions/entity.extension.js.map +0 -1
- package/dist/extensions/events.extension.js.map +0 -1
- package/dist/extensions/fetch-api.extension.js.map +0 -1
- package/dist/extensions/floor.extension.js.map +0 -1
- package/dist/extensions/id-by.extension.js.map +0 -1
- package/dist/extensions/index.d.ts +0 -16
- package/dist/extensions/index.js +0 -17
- package/dist/extensions/index.js.map +0 -1
- package/dist/extensions/internal.extension.js.map +0 -1
- package/dist/extensions/label.extension.js.map +0 -1
- package/dist/extensions/reference.extension.js.map +0 -1
- package/dist/extensions/registry.extension.js.map +0 -1
- package/dist/extensions/websocket-api.extension.js.map +0 -1
- package/dist/extensions/zone.extension.js.map +0 -1
- package/dist/hass.module.js.map +0 -1
- package/dist/helpers/backup.helper.js +0 -2
- package/dist/helpers/backup.helper.js.map +0 -1
- package/dist/helpers/constants.helper.js.map +0 -1
- package/dist/helpers/device.helper.js.map +0 -1
- package/dist/helpers/entity-state.helper.js +0 -2
- package/dist/helpers/entity-state.helper.js.map +0 -1
- package/dist/helpers/features.helper.js.map +0 -1
- package/dist/helpers/fetch/calendar.js +0 -2
- package/dist/helpers/fetch/calendar.js.map +0 -1
- package/dist/helpers/fetch/configuration.js.map +0 -1
- package/dist/helpers/fetch/index.d.ts +0 -5
- package/dist/helpers/fetch/index.js +0 -6
- package/dist/helpers/fetch/index.js.map +0 -1
- package/dist/helpers/fetch/server-log.js.map +0 -1
- package/dist/helpers/fetch/service-list.js +0 -2
- package/dist/helpers/fetch/service-list.js.map +0 -1
- package/dist/helpers/fetch/weather-forecasts.js.map +0 -1
- package/dist/helpers/fetch.helper.js.map +0 -1
- package/dist/helpers/id-by.helper.js +0 -2
- package/dist/helpers/id-by.helper.js.map +0 -1
- package/dist/helpers/index.d.ts +0 -13
- package/dist/helpers/index.js +0 -14
- package/dist/helpers/index.js.map +0 -1
- package/dist/helpers/interfaces.helper.js.map +0 -1
- package/dist/helpers/manifest.helper.js +0 -2
- package/dist/helpers/manifest.helper.js.map +0 -1
- package/dist/helpers/notify.helper.js +0 -2
- package/dist/helpers/notify.helper.js.map +0 -1
- package/dist/helpers/registry.js.map +0 -1
- package/dist/helpers/utility.helper.js.map +0 -1
- package/dist/helpers/websocket.helper.js +0 -2
- package/dist/helpers/websocket.helper.js.map +0 -1
- package/dist/index.d.ts +0 -5
- package/dist/index.js +0 -6
- package/dist/index.js.map +0 -1
- package/dist/mock_assistant/extensions/area.extension.js.map +0 -1
- package/dist/mock_assistant/extensions/config.extension.js.map +0 -1
- package/dist/mock_assistant/extensions/device.extension.js.map +0 -1
- package/dist/mock_assistant/extensions/entity-registry.extension.js.map +0 -1
- package/dist/mock_assistant/extensions/entity.extension.js.map +0 -1
- package/dist/mock_assistant/extensions/events.extension.js.map +0 -1
- package/dist/mock_assistant/extensions/fetch.extension.js.map +0 -1
- package/dist/mock_assistant/extensions/fixtures.extension.js.map +0 -1
- package/dist/mock_assistant/extensions/floor.extension.js.map +0 -1
- package/dist/mock_assistant/extensions/index.d.ts +0 -12
- package/dist/mock_assistant/extensions/index.js +0 -13
- package/dist/mock_assistant/extensions/index.js.map +0 -1
- package/dist/mock_assistant/extensions/label.extension.js.map +0 -1
- package/dist/mock_assistant/extensions/services.extension.js.map +0 -1
- package/dist/mock_assistant/extensions/websocket-api.extension.js.map +0 -1
- package/dist/mock_assistant/extensions/zone.extension.js.map +0 -1
- package/dist/mock_assistant/helpers/fixtures.js +0 -2
- package/dist/mock_assistant/helpers/fixtures.js.map +0 -1
- package/dist/mock_assistant/helpers/index.d.ts +0 -1
- package/dist/mock_assistant/helpers/index.js +0 -2
- package/dist/mock_assistant/helpers/index.js.map +0 -1
- package/dist/mock_assistant/index.d.ts +0 -3
- package/dist/mock_assistant/index.js +0 -4
- package/dist/mock_assistant/index.js.map +0 -1
- package/dist/mock_assistant/main.js.map +0 -1
- package/dist/mock_assistant/mock-assistant.module.js.map +0 -1
- package/dist/quickboot.module.js.map +0 -1
- package/dist/testing/area.spec.js.map +0 -1
- package/dist/testing/backup.spec.js.map +0 -1
- package/dist/testing/config.spec.js.map +0 -1
- package/dist/testing/device.spec.js.map +0 -1
- package/dist/testing/entity.spec.js.map +0 -1
- package/dist/testing/events.spec.js.map +0 -1
- package/dist/testing/fetch-api.spec.js.map +0 -1
- package/dist/testing/fixtures.spec.js.map +0 -1
- package/dist/testing/floor.spec.js.map +0 -1
- package/dist/testing/id-by.spec.js.map +0 -1
- package/dist/testing/label.spec.js.map +0 -1
- package/dist/testing/ref-by.spec.js.map +0 -1
- package/dist/testing/websocket.spec.js.map +0 -1
- package/dist/testing/workflow.spec.js.map +0 -1
- package/dist/testing/zone.spec.js.map +0 -1
- package/scripts/run-e2e.sh +0 -7
- package/scripts/test.sh +0 -2
- package/src/extensions/index.ts +0 -16
- package/src/helpers/fetch/index.ts +0 -5
- package/src/helpers/index.ts +0 -13
- package/src/helpers/manifest.helper.ts +0 -0
- package/src/index.ts +0 -5
- package/src/mock_assistant/extensions/index.ts +0 -12
- package/src/mock_assistant/helpers/index.ts +0 -1
- package/src/mock_assistant/index.ts +0 -3
- /package/dist/helpers/{backup.helper.d.ts → backup.d.mts} +0 -0
- /package/dist/helpers/{constants.helper.d.ts → constants.d.mts} +0 -0
- /package/dist/helpers/{features.helper.d.ts → features.d.mts} +0 -0
- /package/dist/helpers/fetch/{server-log.d.ts → server-log.d.mts} +0 -0
- /package/dist/helpers/fetch/{weather-forecasts.d.ts → weather-forecasts.d.mts} +0 -0
- /package/dist/helpers/{fetch.helper.d.ts → fetch.d.mts} +0 -0
- /package/dist/{testing/area.spec.d.ts → helpers/manifest.d.mts} +0 -0
- /package/dist/helpers/{notify.helper.d.ts → notify.d.mts} +0 -0
- /package/dist/mock_assistant/{main.d.ts → main.d.mts} +0 -0
- /package/dist/mock_assistant/{extensions/fetch.extension.d.ts → services/fetch.service.d.mts} +0 -0
- /package/dist/{quickboot.module.d.ts → quickboot.module.d.mts} +0 -0
- /package/dist/testing/{backup.spec.d.ts → area.spec.d.mts} +0 -0
- /package/dist/testing/{config.spec.d.ts → backup.spec.d.mts} +0 -0
- /package/dist/testing/{device.spec.d.ts → config.spec.d.mts} +0 -0
- /package/dist/testing/{entity.spec.d.ts → device.spec.d.mts} +0 -0
- /package/dist/testing/{events.spec.d.ts → entity.spec.d.mts} +0 -0
- /package/dist/testing/{fetch-api.spec.d.ts → events.spec.d.mts} +0 -0
- /package/dist/testing/{fixtures.spec.d.ts → fetch-api.spec.d.mts} +0 -0
- /package/dist/testing/{floor.spec.d.ts → fixtures.spec.d.mts} +0 -0
- /package/dist/testing/{id-by.spec.d.ts → floor.spec.d.mts} +0 -0
- /package/dist/testing/{label.spec.d.ts → id-by.spec.d.mts} +0 -0
- /package/dist/testing/{ref-by.spec.d.ts → label.spec.d.mts} +0 -0
- /package/dist/testing/{websocket.spec.d.ts → ref-by.spec.d.mts} +0 -0
- /package/dist/testing/{workflow.spec.d.ts → websocket.spec.d.mts} +0 -0
- /package/dist/testing/{zone.spec.d.ts → workflow.spec.d.mts} +0 -0
- /package/src/helpers/{backup.helper.ts → backup.mts} +0 -0
- /package/src/helpers/{constants.helper.ts → constants.mts} +0 -0
- /package/src/helpers/{features.helper.ts → features.mts} +0 -0
- /package/src/helpers/fetch/{server-log.ts → server-log.mts} +0 -0
- /package/src/helpers/fetch/{weather-forecasts.ts → weather-forecasts.mts} +0 -0
- /package/src/helpers/{fetch.helper.ts → fetch.mts} +0 -0
- /package/{dist/helpers/manifest.helper.d.ts → src/helpers/manifest.mts} +0 -0
- /package/src/helpers/{notify.helper.ts → notify.mts} +0 -0
- /package/src/mock_assistant/{extensions/fetch.extension.ts → services/fetch.service.mts} +0 -0
|
@@ -5,21 +5,21 @@ import {
|
|
|
5
5
|
FLOOR_REGISTRY_UPDATED,
|
|
6
6
|
LABEL_REGISTRY_UPDATED,
|
|
7
7
|
ZONE_REGISTRY_UPDATED,
|
|
8
|
-
} from "../helpers";
|
|
9
|
-
import { hassTestRunner } from "../mock_assistant";
|
|
8
|
+
} from "../helpers/index.mts";
|
|
9
|
+
import { hassTestRunner } from "../mock_assistant/index.mts";
|
|
10
10
|
|
|
11
11
|
describe("Events", () => {
|
|
12
12
|
afterEach(async () => {
|
|
13
13
|
await hassTestRunner.teardown();
|
|
14
|
-
|
|
14
|
+
vi.restoreAllMocks();
|
|
15
15
|
});
|
|
16
16
|
|
|
17
17
|
describe("Event Callbacks", () => {
|
|
18
18
|
it("should register callback for AREA_REGISTRY_UPDATED", async () => {
|
|
19
19
|
expect.assertions(1);
|
|
20
20
|
await hassTestRunner.run(({ event, hass }) => {
|
|
21
|
-
const spy =
|
|
22
|
-
const callback =
|
|
21
|
+
const spy = vi.spyOn(event, "on");
|
|
22
|
+
const callback = vi.fn();
|
|
23
23
|
hass.events.onAreaRegistryUpdate(callback);
|
|
24
24
|
expect(spy).toHaveBeenCalledWith(AREA_REGISTRY_UPDATED, callback);
|
|
25
25
|
});
|
|
@@ -28,8 +28,8 @@ describe("Events", () => {
|
|
|
28
28
|
it("should register callback for DEVICE_REGISTRY_UPDATED", async () => {
|
|
29
29
|
expect.assertions(1);
|
|
30
30
|
await hassTestRunner.run(({ event, hass }) => {
|
|
31
|
-
const spy =
|
|
32
|
-
const callback =
|
|
31
|
+
const spy = vi.spyOn(event, "on");
|
|
32
|
+
const callback = vi.fn();
|
|
33
33
|
hass.events.onDeviceRegistryUpdate(callback);
|
|
34
34
|
expect(spy).toHaveBeenCalledWith(DEVICE_REGISTRY_UPDATED, callback);
|
|
35
35
|
});
|
|
@@ -38,8 +38,8 @@ describe("Events", () => {
|
|
|
38
38
|
it("should register callback for ENTITY_REGISTRY_UPDATED", async () => {
|
|
39
39
|
expect.assertions(1);
|
|
40
40
|
await hassTestRunner.run(({ event, hass }) => {
|
|
41
|
-
const spy =
|
|
42
|
-
const callback =
|
|
41
|
+
const spy = vi.spyOn(event, "on");
|
|
42
|
+
const callback = vi.fn();
|
|
43
43
|
hass.events.onEntityRegistryUpdate(callback);
|
|
44
44
|
expect(spy).toHaveBeenCalledWith(ENTITY_REGISTRY_UPDATED, callback);
|
|
45
45
|
});
|
|
@@ -48,8 +48,8 @@ describe("Events", () => {
|
|
|
48
48
|
it("should register callback for FLOOR_REGISTRY_UPDATED", async () => {
|
|
49
49
|
expect.assertions(1);
|
|
50
50
|
await hassTestRunner.run(({ event, hass }) => {
|
|
51
|
-
const spy =
|
|
52
|
-
const callback =
|
|
51
|
+
const spy = vi.spyOn(event, "on");
|
|
52
|
+
const callback = vi.fn();
|
|
53
53
|
hass.events.onFloorRegistryUpdate(callback);
|
|
54
54
|
expect(spy).toHaveBeenCalledWith(FLOOR_REGISTRY_UPDATED, callback);
|
|
55
55
|
});
|
|
@@ -58,8 +58,8 @@ describe("Events", () => {
|
|
|
58
58
|
it("should register callback for LABEL_REGISTRY_UPDATED", async () => {
|
|
59
59
|
expect.assertions(1);
|
|
60
60
|
await hassTestRunner.run(({ event, hass }) => {
|
|
61
|
-
const spy =
|
|
62
|
-
const callback =
|
|
61
|
+
const spy = vi.spyOn(event, "on");
|
|
62
|
+
const callback = vi.fn();
|
|
63
63
|
hass.events.onLabelRegistryUpdate(callback);
|
|
64
64
|
expect(spy).toHaveBeenCalledWith(LABEL_REGISTRY_UPDATED, callback);
|
|
65
65
|
});
|
|
@@ -68,8 +68,8 @@ describe("Events", () => {
|
|
|
68
68
|
it("should register callback for ZONE_REGISTRY_UPDATED", async () => {
|
|
69
69
|
expect.assertions(1);
|
|
70
70
|
await hassTestRunner.run(({ event, hass }) => {
|
|
71
|
-
const spy =
|
|
72
|
-
const callback =
|
|
71
|
+
const spy = vi.spyOn(event, "on");
|
|
72
|
+
const callback = vi.fn();
|
|
73
73
|
hass.events.onZoneRegistryUpdate(callback);
|
|
74
74
|
expect(spy).toHaveBeenCalledWith(ZONE_REGISTRY_UPDATED, callback);
|
|
75
75
|
});
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import dayjs from "dayjs";
|
|
2
|
+
import { MockInstance } from "vitest";
|
|
2
3
|
|
|
3
|
-
import { HassConfig } from "../helpers";
|
|
4
|
-
import { hassTestRunner } from "../mock_assistant";
|
|
4
|
+
import { HassConfig } from "../helpers/index.mts";
|
|
5
|
+
import { hassTestRunner } from "../mock_assistant/index.mts";
|
|
5
6
|
|
|
6
7
|
describe("FetchAPI", () => {
|
|
7
8
|
const BASE_URL = "http://homeassistant.some.domain:9123";
|
|
@@ -20,7 +21,7 @@ describe("FetchAPI", () => {
|
|
|
20
21
|
|
|
21
22
|
afterEach(async () => {
|
|
22
23
|
await hassTestRunner.teardown();
|
|
23
|
-
|
|
24
|
+
vi.restoreAllMocks();
|
|
24
25
|
});
|
|
25
26
|
|
|
26
27
|
describe("Meta", () => {
|
|
@@ -28,7 +29,7 @@ describe("FetchAPI", () => {
|
|
|
28
29
|
expect.assertions(1);
|
|
29
30
|
await hassTestRunner.run(({ lifecycle, hass }) => {
|
|
30
31
|
lifecycle.onReady(async () => {
|
|
31
|
-
const spy =
|
|
32
|
+
const spy = vi.spyOn(globalThis, "fetch").mockImplementation(async () => {
|
|
32
33
|
return {
|
|
33
34
|
text: () => "[]",
|
|
34
35
|
} as unknown as Response;
|
|
@@ -54,7 +55,7 @@ describe("FetchAPI", () => {
|
|
|
54
55
|
it("should format calendarSearch properly", async () => {
|
|
55
56
|
expect.assertions(1);
|
|
56
57
|
await hassTestRunner.run(({ lifecycle, hass }) => {
|
|
57
|
-
const spy =
|
|
58
|
+
const spy = vi.spyOn(globalThis, "fetch").mockImplementation(async () => {
|
|
58
59
|
return {
|
|
59
60
|
text: () => "[]",
|
|
60
61
|
} as unknown as Response;
|
|
@@ -78,7 +79,7 @@ describe("FetchAPI", () => {
|
|
|
78
79
|
it("should format callService properly", async () => {
|
|
79
80
|
expect.assertions(1);
|
|
80
81
|
await hassTestRunner.run(({ lifecycle, hass }) => {
|
|
81
|
-
const spy =
|
|
82
|
+
const spy = vi.spyOn(globalThis, "fetch").mockImplementation(async () => {
|
|
82
83
|
return {
|
|
83
84
|
text: () => "{}",
|
|
84
85
|
} as unknown as Response;
|
|
@@ -103,7 +104,7 @@ describe("FetchAPI", () => {
|
|
|
103
104
|
it("should format checkConfig properly", async () => {
|
|
104
105
|
expect.assertions(1);
|
|
105
106
|
await hassTestRunner.run(({ lifecycle, hass }) => {
|
|
106
|
-
const spy =
|
|
107
|
+
const spy = vi.spyOn(globalThis, "fetch").mockImplementation(async () => {
|
|
107
108
|
return {
|
|
108
109
|
text: () => "{}",
|
|
109
110
|
} as unknown as Response;
|
|
@@ -122,14 +123,14 @@ describe("FetchAPI", () => {
|
|
|
122
123
|
|
|
123
124
|
// TODO: this results in an open handle
|
|
124
125
|
// not sure why
|
|
125
|
-
|
|
126
|
+
it.skip("exits for low version at boot", async () => {
|
|
126
127
|
expect.assertions(2);
|
|
127
|
-
const exitSpy =
|
|
128
|
+
const exitSpy = vi.spyOn(process, "exit");
|
|
128
129
|
|
|
129
130
|
// .mockImplementation(() => {
|
|
130
131
|
// throw new Error("EXPECTED TESTING ERROR");
|
|
131
132
|
// });
|
|
132
|
-
|
|
133
|
+
vi.spyOn(console, "error").mockImplementation(() => undefined);
|
|
133
134
|
try {
|
|
134
135
|
await hassTestRunner.run(({ lifecycle, mock_assistant }) => {
|
|
135
136
|
lifecycle.onPreInit(() => {
|
|
@@ -146,14 +147,14 @@ describe("FetchAPI", () => {
|
|
|
146
147
|
// TODO: Need a way to make this pass without breaking all other tests
|
|
147
148
|
it.skip("passes for valid version", async () => {
|
|
148
149
|
expect.assertions(2);
|
|
149
|
-
let mock:
|
|
150
|
-
let exitSpy:
|
|
150
|
+
let mock: MockInstance;
|
|
151
|
+
let exitSpy: MockInstance;
|
|
151
152
|
try {
|
|
152
153
|
await hassTestRunner.run(({ hass }) => {
|
|
153
|
-
mock =
|
|
154
|
+
mock = vi
|
|
154
155
|
.spyOn(hass.fetch, "getConfig")
|
|
155
156
|
.mockImplementation(async () => ({ version: "2024.4.1" }) as HassConfig);
|
|
156
|
-
exitSpy =
|
|
157
|
+
exitSpy = vi.spyOn(process, "exit").mockImplementation(() => {
|
|
157
158
|
throw new Error("EXPECTED TESTING ERROR");
|
|
158
159
|
});
|
|
159
160
|
});
|
|
@@ -166,7 +167,7 @@ describe("FetchAPI", () => {
|
|
|
166
167
|
it("should format fetchEntityCustomizations properly", async () => {
|
|
167
168
|
expect.assertions(1);
|
|
168
169
|
await hassTestRunner.run(({ lifecycle, hass }) => {
|
|
169
|
-
const spy =
|
|
170
|
+
const spy = vi.spyOn(globalThis, "fetch").mockImplementation(async () => {
|
|
170
171
|
return {
|
|
171
172
|
text: () => "{}",
|
|
172
173
|
} as unknown as Response;
|
|
@@ -186,7 +187,7 @@ describe("FetchAPI", () => {
|
|
|
186
187
|
it("should format fetchEntityHistory properly", async () => {
|
|
187
188
|
expect.assertions(1);
|
|
188
189
|
await hassTestRunner.run(({ lifecycle, hass }) => {
|
|
189
|
-
const spy =
|
|
190
|
+
const spy = vi.spyOn(globalThis, "fetch").mockImplementation(async () => {
|
|
190
191
|
return {
|
|
191
192
|
text: () => "{}",
|
|
192
193
|
} as unknown as Response;
|
|
@@ -207,7 +208,7 @@ describe("FetchAPI", () => {
|
|
|
207
208
|
expect.assertions(1);
|
|
208
209
|
const body = { magic: true };
|
|
209
210
|
await hassTestRunner.run(({ lifecycle, hass }) => {
|
|
210
|
-
const spy =
|
|
211
|
+
const spy = vi.spyOn(globalThis, "fetch").mockImplementation(async () => {
|
|
211
212
|
return {
|
|
212
213
|
text: () => "{}",
|
|
213
214
|
} as unknown as Response;
|
|
@@ -230,7 +231,7 @@ describe("FetchAPI", () => {
|
|
|
230
231
|
await hassTestRunner.run(({ lifecycle, hass, mock_assistant }) => {
|
|
231
232
|
lifecycle.onReady(async () => {
|
|
232
233
|
mock_assistant.entity.monkeyReset();
|
|
233
|
-
const spy =
|
|
234
|
+
const spy = vi.spyOn(hass.fetch, "fetch").mockImplementation(async () => []);
|
|
234
235
|
await hass.fetch.getAllEntities();
|
|
235
236
|
expect(spy).toHaveBeenCalledWith({ url: "/api/states" });
|
|
236
237
|
});
|
|
@@ -241,7 +242,7 @@ describe("FetchAPI", () => {
|
|
|
241
242
|
// expect.assertions(1);
|
|
242
243
|
// application = CreateTestingApplication({
|
|
243
244
|
// Test({ lifecycle, hass }: TServiceParams) {
|
|
244
|
-
// const spy =
|
|
245
|
+
// const spy = vi.spyOn(global, "fetch").mockImplementation(async () => {
|
|
245
246
|
// return {
|
|
246
247
|
// text: () => "{}",
|
|
247
248
|
// } as unknown as Response;
|
|
@@ -276,7 +277,7 @@ describe("FetchAPI", () => {
|
|
|
276
277
|
it("should format getLogs properly", async () => {
|
|
277
278
|
expect.assertions(1);
|
|
278
279
|
await hassTestRunner.run(({ lifecycle, hass }) => {
|
|
279
|
-
const spy =
|
|
280
|
+
const spy = vi.spyOn(globalThis, "fetch").mockImplementation(async () => {
|
|
280
281
|
return {
|
|
281
282
|
text: () => "[]",
|
|
282
283
|
} as unknown as Response;
|
|
@@ -296,7 +297,7 @@ describe("FetchAPI", () => {
|
|
|
296
297
|
it("should format getRawLogs properly", async () => {
|
|
297
298
|
expect.assertions(1);
|
|
298
299
|
await hassTestRunner.run(({ lifecycle, hass }) => {
|
|
299
|
-
const spy =
|
|
300
|
+
const spy = vi.spyOn(globalThis, "fetch").mockImplementation(async () => {
|
|
300
301
|
return {
|
|
301
302
|
text: () => "{}",
|
|
302
303
|
} as unknown as Response;
|
|
@@ -317,7 +318,7 @@ describe("FetchAPI", () => {
|
|
|
317
318
|
expect.assertions(1);
|
|
318
319
|
await hassTestRunner.run(({ lifecycle, hass, mock_assistant }) => {
|
|
319
320
|
lifecycle.onReady(async () => {
|
|
320
|
-
const spy =
|
|
321
|
+
const spy = vi.spyOn(globalThis, "fetch").mockImplementation(async () => {
|
|
321
322
|
return {
|
|
322
323
|
text: () => "{}",
|
|
323
324
|
} as unknown as Response;
|
|
@@ -337,7 +338,7 @@ describe("FetchAPI", () => {
|
|
|
337
338
|
it("should format updateEntity properly", async () => {
|
|
338
339
|
expect.assertions(1);
|
|
339
340
|
await hassTestRunner.run(({ lifecycle, hass }) => {
|
|
340
|
-
const spy =
|
|
341
|
+
const spy = vi.spyOn(globalThis, "fetch").mockImplementation(async () => {
|
|
341
342
|
return {
|
|
342
343
|
text: () => "{}",
|
|
343
344
|
} as unknown as Response;
|
|
@@ -369,7 +370,7 @@ describe("FetchAPI", () => {
|
|
|
369
370
|
magic: true,
|
|
370
371
|
};
|
|
371
372
|
await hassTestRunner.run(({ lifecycle, hass }) => {
|
|
372
|
-
const spy =
|
|
373
|
+
const spy = vi.spyOn(globalThis, "fetch").mockImplementation(async () => {
|
|
373
374
|
return {
|
|
374
375
|
text: () => "{}",
|
|
375
376
|
} as unknown as Response;
|
|
@@ -390,7 +391,7 @@ describe("FetchAPI", () => {
|
|
|
390
391
|
it("should format checkCredentials properly", async () => {
|
|
391
392
|
expect.assertions(1);
|
|
392
393
|
await hassTestRunner.run(({ lifecycle, hass }) => {
|
|
393
|
-
const spy =
|
|
394
|
+
const spy = vi.spyOn(globalThis, "fetch").mockImplementation(async () => {
|
|
394
395
|
return {
|
|
395
396
|
text: () => "{}",
|
|
396
397
|
} as unknown as Response;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { v4 } from "uuid";
|
|
2
2
|
|
|
3
|
-
import { createTestRunner } from "../mock_assistant";
|
|
3
|
+
import { createTestRunner } from "../mock_assistant/index.mts";
|
|
4
4
|
|
|
5
5
|
describe("Fixtures", () => {
|
|
6
6
|
let runner: ReturnType<typeof createTestRunner>;
|
|
@@ -9,7 +9,7 @@ describe("Fixtures", () => {
|
|
|
9
9
|
});
|
|
10
10
|
afterEach(async () => {
|
|
11
11
|
await runner.teardown();
|
|
12
|
-
|
|
12
|
+
vi.restoreAllMocks();
|
|
13
13
|
});
|
|
14
14
|
|
|
15
15
|
describe("Entity setup", () => {
|
|
@@ -130,7 +130,7 @@ describe("Fixtures", () => {
|
|
|
130
130
|
})
|
|
131
131
|
.run(async ({ hass, mock_assistant }) => {
|
|
132
132
|
const entity = hass.refBy.id("switch.porch_light");
|
|
133
|
-
const spy =
|
|
133
|
+
const spy = vi.fn();
|
|
134
134
|
entity.onUpdate(spy);
|
|
135
135
|
await mock_assistant.entity.emitChange("switch.porch_light", { state: "off" });
|
|
136
136
|
expect(spy).toHaveBeenCalled();
|
|
@@ -148,7 +148,7 @@ describe("Fixtures", () => {
|
|
|
148
148
|
})
|
|
149
149
|
.run(async ({ hass, mock_assistant }) => {
|
|
150
150
|
const entity = hass.refBy.id("switch.porch_light");
|
|
151
|
-
const spy =
|
|
151
|
+
const spy = vi.fn();
|
|
152
152
|
entity.onUpdate(spy);
|
|
153
153
|
await mock_assistant.entity.emitChange("switch.porch_light", { state: "on" });
|
|
154
154
|
expect(spy).toHaveBeenCalled();
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { sleep } from "@digital-alchemy/core";
|
|
2
2
|
|
|
3
|
-
import { TFloorId } from "../dynamic";
|
|
4
|
-
import { FLOOR_REGISTRY_UPDATED, FloorDetails } from "../helpers";
|
|
5
|
-
import { hassTestRunner } from "../mock_assistant";
|
|
3
|
+
import { TFloorId } from "../dynamic.mts";
|
|
4
|
+
import { FLOOR_REGISTRY_UPDATED, FloorDetails } from "../helpers/index.mts";
|
|
5
|
+
import { hassTestRunner } from "../mock_assistant/index.mts";
|
|
6
6
|
|
|
7
7
|
describe("Floor", () => {
|
|
8
8
|
const EXAMPLE_FLOOR = {
|
|
@@ -15,14 +15,14 @@ describe("Floor", () => {
|
|
|
15
15
|
|
|
16
16
|
afterEach(async () => {
|
|
17
17
|
await hassTestRunner.teardown();
|
|
18
|
-
|
|
18
|
+
vi.restoreAllMocks();
|
|
19
19
|
});
|
|
20
20
|
|
|
21
21
|
describe("Lifecycle", () => {
|
|
22
22
|
it("should force values to be available before ready", async () => {
|
|
23
23
|
expect.assertions(1);
|
|
24
24
|
await hassTestRunner.run(({ lifecycle, hass }) => {
|
|
25
|
-
const spy =
|
|
25
|
+
const spy = vi
|
|
26
26
|
.spyOn(hass.socket, "sendMessage")
|
|
27
27
|
.mockImplementation(async () => [EXAMPLE_FLOOR]);
|
|
28
28
|
lifecycle.onReady(async () => {
|
|
@@ -40,7 +40,7 @@ describe("Floor", () => {
|
|
|
40
40
|
it("should call list properly", async () => {
|
|
41
41
|
expect.assertions(1);
|
|
42
42
|
await hassTestRunner.run(({ lifecycle, hass }) => {
|
|
43
|
-
const spy =
|
|
43
|
+
const spy = vi.spyOn(hass.socket, "sendMessage").mockImplementation(async () => []);
|
|
44
44
|
lifecycle.onReady(async () => {
|
|
45
45
|
await hass.floor.list();
|
|
46
46
|
expect(spy).toHaveBeenCalledWith(
|
|
@@ -53,7 +53,7 @@ describe("Floor", () => {
|
|
|
53
53
|
it("should call update properly", async () => {
|
|
54
54
|
expect.assertions(1);
|
|
55
55
|
await hassTestRunner.run(({ lifecycle, hass, event }) => {
|
|
56
|
-
const spy =
|
|
56
|
+
const spy = vi
|
|
57
57
|
.spyOn(hass.socket, "sendMessage")
|
|
58
58
|
.mockImplementation(async () => undefined);
|
|
59
59
|
lifecycle.onReady(async () => {
|
|
@@ -71,7 +71,7 @@ describe("Floor", () => {
|
|
|
71
71
|
it("should call delete properly", async () => {
|
|
72
72
|
expect.assertions(1);
|
|
73
73
|
await hassTestRunner.run(({ lifecycle, hass, event }) => {
|
|
74
|
-
const spy =
|
|
74
|
+
const spy = vi
|
|
75
75
|
.spyOn(hass.socket, "sendMessage")
|
|
76
76
|
.mockImplementation(async () => undefined);
|
|
77
77
|
lifecycle.onReady(async () => {
|
|
@@ -89,7 +89,7 @@ describe("Floor", () => {
|
|
|
89
89
|
it("should call create properly", async () => {
|
|
90
90
|
expect.assertions(1);
|
|
91
91
|
await hassTestRunner.run(({ lifecycle, hass, event }) => {
|
|
92
|
-
const spy =
|
|
92
|
+
const spy = vi
|
|
93
93
|
.spyOn(hass.socket, "sendMessage")
|
|
94
94
|
.mockImplementation(async () => undefined);
|
|
95
95
|
lifecycle.onReady(async () => {
|
|
@@ -109,7 +109,7 @@ describe("Floor", () => {
|
|
|
109
109
|
it("should wait for an update before returning when updating", async () => {
|
|
110
110
|
expect.assertions(1);
|
|
111
111
|
await hassTestRunner.run(({ lifecycle, hass, event }) => {
|
|
112
|
-
|
|
112
|
+
vi.spyOn(hass.socket, "sendMessage").mockImplementation(async () => undefined);
|
|
113
113
|
lifecycle.onReady(async () => {
|
|
114
114
|
const response = hass.floor.update(EXAMPLE_FLOOR);
|
|
115
115
|
let order = "";
|
|
@@ -127,7 +127,7 @@ describe("Floor", () => {
|
|
|
127
127
|
it("should debounce updates properly", async () => {
|
|
128
128
|
expect.assertions(1);
|
|
129
129
|
await hassTestRunner.run(({ lifecycle, hass }) => {
|
|
130
|
-
|
|
130
|
+
vi.spyOn(hass.socket, "sendMessage").mockImplementation(async () => undefined);
|
|
131
131
|
let counter = 0;
|
|
132
132
|
hass.events.onFloorRegistryUpdate(() => counter++);
|
|
133
133
|
lifecycle.onReady(async () => {
|
|
@@ -149,7 +149,7 @@ describe("Floor", () => {
|
|
|
149
149
|
it("should wait for an update before returning when deleting", async () => {
|
|
150
150
|
expect.assertions(1);
|
|
151
151
|
await hassTestRunner.run(({ lifecycle, hass, event }) => {
|
|
152
|
-
|
|
152
|
+
vi.spyOn(hass.socket, "sendMessage").mockImplementation(async () => undefined);
|
|
153
153
|
lifecycle.onReady(async () => {
|
|
154
154
|
const response = hass.floor.delete("example_floor" as TFloorId);
|
|
155
155
|
let order = "";
|
|
@@ -167,7 +167,7 @@ describe("Floor", () => {
|
|
|
167
167
|
it("should wait for an update before returning when creating", async () => {
|
|
168
168
|
expect.assertions(1);
|
|
169
169
|
await hassTestRunner.run(({ lifecycle, hass, event }) => {
|
|
170
|
-
|
|
170
|
+
vi.spyOn(hass.socket, "sendMessage").mockImplementation(async () => undefined);
|
|
171
171
|
lifecycle.onReady(async () => {
|
|
172
172
|
const response = hass.floor.create(EXAMPLE_FLOOR);
|
|
173
173
|
let order = "";
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { PICK_ENTITY } from "../helpers";
|
|
2
|
-
import { hassTestRunner } from "../mock_assistant";
|
|
1
|
+
import { PICK_ENTITY } from "../helpers/index.mts";
|
|
2
|
+
import { hassTestRunner } from "../mock_assistant/index.mts";
|
|
3
3
|
|
|
4
4
|
describe("ID By", () => {
|
|
5
5
|
afterEach(async () => {
|
|
6
6
|
await hassTestRunner.teardown();
|
|
7
|
-
|
|
7
|
+
vi.restoreAllMocks();
|
|
8
8
|
});
|
|
9
9
|
|
|
10
10
|
describe("area", () => {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { sleep } from "@digital-alchemy/core";
|
|
2
2
|
|
|
3
|
-
import { TLabelId } from "../dynamic";
|
|
4
|
-
import { LABEL_REGISTRY_UPDATED, LabelDefinition } from "../helpers";
|
|
5
|
-
import { hassTestRunner } from "../mock_assistant";
|
|
3
|
+
import { TLabelId } from "../dynamic.mts";
|
|
4
|
+
import { LABEL_REGISTRY_UPDATED, LabelDefinition } from "../helpers/index.mts";
|
|
5
|
+
import { hassTestRunner } from "../mock_assistant/index.mts";
|
|
6
6
|
|
|
7
7
|
describe("Label", () => {
|
|
8
8
|
const EXAMPLE_LABEL = {
|
|
@@ -15,14 +15,14 @@ describe("Label", () => {
|
|
|
15
15
|
|
|
16
16
|
afterEach(async () => {
|
|
17
17
|
await hassTestRunner.teardown();
|
|
18
|
-
|
|
18
|
+
vi.restoreAllMocks();
|
|
19
19
|
});
|
|
20
20
|
|
|
21
21
|
describe("Lifecycle", () => {
|
|
22
22
|
it("should force values to be available before ready", async () => {
|
|
23
23
|
expect.assertions(1);
|
|
24
24
|
await hassTestRunner.run(({ lifecycle, hass }) => {
|
|
25
|
-
const spy =
|
|
25
|
+
const spy = vi
|
|
26
26
|
.spyOn(hass.socket, "sendMessage")
|
|
27
27
|
.mockImplementation(async () => [EXAMPLE_LABEL]);
|
|
28
28
|
lifecycle.onReady(async () => {
|
|
@@ -40,7 +40,7 @@ describe("Label", () => {
|
|
|
40
40
|
it("should call list properly", async () => {
|
|
41
41
|
expect.assertions(1);
|
|
42
42
|
await hassTestRunner.run(({ lifecycle, hass }) => {
|
|
43
|
-
const spy =
|
|
43
|
+
const spy = vi.spyOn(hass.socket, "sendMessage").mockImplementation(async () => []);
|
|
44
44
|
lifecycle.onReady(async () => {
|
|
45
45
|
await hass.label.list();
|
|
46
46
|
expect(spy).toHaveBeenCalledWith(
|
|
@@ -53,7 +53,7 @@ describe("Label", () => {
|
|
|
53
53
|
it("should call update properly", async () => {
|
|
54
54
|
expect.assertions(1);
|
|
55
55
|
await hassTestRunner.run(({ lifecycle, hass, event }) => {
|
|
56
|
-
const spy =
|
|
56
|
+
const spy = vi
|
|
57
57
|
.spyOn(hass.socket, "sendMessage")
|
|
58
58
|
.mockImplementation(async () => undefined);
|
|
59
59
|
lifecycle.onReady(async () => {
|
|
@@ -71,7 +71,7 @@ describe("Label", () => {
|
|
|
71
71
|
it("should call delete properly", async () => {
|
|
72
72
|
expect.assertions(1);
|
|
73
73
|
await hassTestRunner.run(({ lifecycle, hass, event }) => {
|
|
74
|
-
const spy =
|
|
74
|
+
const spy = vi
|
|
75
75
|
.spyOn(hass.socket, "sendMessage")
|
|
76
76
|
.mockImplementation(async () => undefined);
|
|
77
77
|
lifecycle.onReady(async () => {
|
|
@@ -89,7 +89,7 @@ describe("Label", () => {
|
|
|
89
89
|
it("should call create properly", async () => {
|
|
90
90
|
expect.assertions(1);
|
|
91
91
|
await hassTestRunner.run(({ lifecycle, hass, event }) => {
|
|
92
|
-
const spy =
|
|
92
|
+
const spy = vi
|
|
93
93
|
.spyOn(hass.socket, "sendMessage")
|
|
94
94
|
.mockImplementation(async () => undefined);
|
|
95
95
|
lifecycle.onReady(async () => {
|
|
@@ -109,7 +109,7 @@ describe("Label", () => {
|
|
|
109
109
|
it("should wait for an update before returning when updating", async () => {
|
|
110
110
|
expect.assertions(1);
|
|
111
111
|
await hassTestRunner.run(({ lifecycle, hass, event }) => {
|
|
112
|
-
|
|
112
|
+
vi.spyOn(hass.socket, "sendMessage").mockImplementation(async () => undefined);
|
|
113
113
|
lifecycle.onReady(async () => {
|
|
114
114
|
const response = hass.label.update(EXAMPLE_LABEL);
|
|
115
115
|
let order = "";
|
|
@@ -127,7 +127,7 @@ describe("Label", () => {
|
|
|
127
127
|
it("should debounce updates properly", async () => {
|
|
128
128
|
expect.assertions(1);
|
|
129
129
|
await hassTestRunner.run(({ lifecycle, hass }) => {
|
|
130
|
-
|
|
130
|
+
vi.spyOn(hass.socket, "sendMessage").mockImplementation(async () => undefined);
|
|
131
131
|
let counter = 0;
|
|
132
132
|
hass.events.onLabelRegistryUpdate(() => counter++);
|
|
133
133
|
lifecycle.onReady(async () => {
|
|
@@ -149,7 +149,7 @@ describe("Label", () => {
|
|
|
149
149
|
it("should wait for an update before returning when deleting", async () => {
|
|
150
150
|
expect.assertions(1);
|
|
151
151
|
await hassTestRunner.run(({ lifecycle, hass, event }) => {
|
|
152
|
-
|
|
152
|
+
vi.spyOn(hass.socket, "sendMessage").mockImplementation(async () => undefined);
|
|
153
153
|
lifecycle.onReady(async () => {
|
|
154
154
|
const response = hass.label.delete("example_label" as TLabelId);
|
|
155
155
|
let order = "";
|
|
@@ -167,7 +167,7 @@ describe("Label", () => {
|
|
|
167
167
|
it("should wait for an update before returning when creating", async () => {
|
|
168
168
|
expect.assertions(1);
|
|
169
169
|
await hassTestRunner.run(({ lifecycle, hass, event }) => {
|
|
170
|
-
|
|
170
|
+
vi.spyOn(hass.socket, "sendMessage").mockImplementation(async () => undefined);
|
|
171
171
|
lifecycle.onReady(async () => {
|
|
172
172
|
const response = hass.label.create(EXAMPLE_LABEL);
|
|
173
173
|
let order = "";
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import dayjs from "dayjs";
|
|
2
2
|
|
|
3
|
-
import { ANY_ENTITY, ENTITY_STATE } from "../helpers";
|
|
4
|
-
import { hassTestRunner } from "../mock_assistant";
|
|
3
|
+
import { ANY_ENTITY, ENTITY_STATE } from "../helpers/index.mts";
|
|
4
|
+
import { hassTestRunner } from "../mock_assistant/index.mts";
|
|
5
5
|
|
|
6
6
|
describe("References", () => {
|
|
7
7
|
afterEach(async () => {
|
|
8
8
|
await hassTestRunner.teardown();
|
|
9
|
-
|
|
9
|
+
vi.restoreAllMocks();
|
|
10
10
|
});
|
|
11
11
|
|
|
12
12
|
describe("loading", function () {
|
|
@@ -281,7 +281,7 @@ describe("References", () => {
|
|
|
281
281
|
await hassTestRunner.run(({ lifecycle, hass }) => {
|
|
282
282
|
lifecycle.onReady(async () => {
|
|
283
283
|
const result = [] as ENTITY_STATE<ANY_ENTITY>[];
|
|
284
|
-
const spy =
|
|
284
|
+
const spy = vi
|
|
285
285
|
.spyOn(hass.fetch, "fetchEntityHistory")
|
|
286
286
|
.mockImplementation(async () => result);
|
|
287
287
|
const from = new Date();
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { hassTestRunner } from "../mock_assistant";
|
|
1
|
+
import { hassTestRunner } from "../mock_assistant/index.mts";
|
|
2
2
|
|
|
3
3
|
describe("Websocket", () => {
|
|
4
4
|
afterEach(async () => {
|
|
5
5
|
await hassTestRunner.teardown();
|
|
6
|
-
|
|
6
|
+
vi.restoreAllMocks();
|
|
7
7
|
});
|
|
8
8
|
|
|
9
9
|
describe("API Interactions", () => {
|
|
@@ -21,9 +21,7 @@ describe("Websocket", () => {
|
|
|
21
21
|
it("should emit a socket message with subscribeEvents", async () => {
|
|
22
22
|
expect.assertions(1);
|
|
23
23
|
await hassTestRunner.run(({ lifecycle, hass, context }) => {
|
|
24
|
-
const spy =
|
|
25
|
-
.spyOn(hass.socket, "sendMessage")
|
|
26
|
-
.mockImplementation(async () => undefined);
|
|
24
|
+
const spy = vi.spyOn(hass.socket, "sendMessage").mockImplementation(async () => undefined);
|
|
27
25
|
lifecycle.onReady(async () => {
|
|
28
26
|
await hass.socket.subscribe({
|
|
29
27
|
context,
|
|
@@ -43,9 +41,7 @@ describe("Websocket", () => {
|
|
|
43
41
|
it("should emit a socket message with fireEvent", async () => {
|
|
44
42
|
expect.assertions(1);
|
|
45
43
|
await hassTestRunner.run(({ lifecycle, hass }) => {
|
|
46
|
-
const spy =
|
|
47
|
-
.spyOn(hass.socket, "sendMessage")
|
|
48
|
-
.mockImplementation(async () => undefined);
|
|
44
|
+
const spy = vi.spyOn(hass.socket, "sendMessage").mockImplementation(async () => undefined);
|
|
49
45
|
lifecycle.onReady(async () => {
|
|
50
46
|
const data = { example: "data" };
|
|
51
47
|
await hass.socket.fireEvent("test_event", data);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { CronExpression, SECOND, sleep } from "@digital-alchemy/core";
|
|
2
2
|
import dayjs from "dayjs";
|
|
3
3
|
|
|
4
|
-
import { hassTestRunner } from "../mock_assistant";
|
|
4
|
+
import { hassTestRunner } from "../mock_assistant/index.mts";
|
|
5
5
|
|
|
6
6
|
describe("Workflows", () => {
|
|
7
7
|
beforeAll(() => {
|
|
@@ -35,7 +35,7 @@ describe("Workflows", () => {
|
|
|
35
35
|
|
|
36
36
|
afterEach(async () => {
|
|
37
37
|
await hassTestRunner.teardown();
|
|
38
|
-
|
|
38
|
+
vi.restoreAllMocks();
|
|
39
39
|
});
|
|
40
40
|
|
|
41
41
|
describe("Event and Response", () => {
|
|
@@ -43,8 +43,8 @@ describe("Workflows", () => {
|
|
|
43
43
|
expect.assertions(2);
|
|
44
44
|
await hassTestRunner.run(({ mock_assistant, hass, lifecycle }) => {
|
|
45
45
|
lifecycle.onReady(async () => {
|
|
46
|
-
const turnOn =
|
|
47
|
-
const turnOff =
|
|
46
|
+
const turnOn = vi.spyOn(hass.call.switch, "turn_on");
|
|
47
|
+
const turnOff = vi.spyOn(hass.call.switch, "turn_off");
|
|
48
48
|
await mock_assistant.events.emitEntityUpdate("sensor.magic", {
|
|
49
49
|
state: "test",
|
|
50
50
|
});
|
|
@@ -66,7 +66,7 @@ describe("Workflows", () => {
|
|
|
66
66
|
},
|
|
67
67
|
});
|
|
68
68
|
lifecycle.onReady(async () => {
|
|
69
|
-
const turnOn =
|
|
69
|
+
const turnOn = vi.spyOn(hass.call.switch, "turn_on");
|
|
70
70
|
await mock_assistant.events.emitEntityUpdate("sensor.magic", {
|
|
71
71
|
state: "here",
|
|
72
72
|
});
|
|
@@ -87,7 +87,7 @@ describe("Workflows", () => {
|
|
|
87
87
|
},
|
|
88
88
|
});
|
|
89
89
|
lifecycle.onReady(async () => {
|
|
90
|
-
const turnOn =
|
|
90
|
+
const turnOn = vi.spyOn(hass.call.switch, "turn_on");
|
|
91
91
|
await mock_assistant.events.emitEntityUpdate("sensor.magic", {
|
|
92
92
|
state: "here",
|
|
93
93
|
});
|
|
@@ -101,21 +101,21 @@ describe("Workflows", () => {
|
|
|
101
101
|
|
|
102
102
|
describe("Timers", () => {
|
|
103
103
|
beforeEach(() => {
|
|
104
|
-
|
|
104
|
+
vi.useFakeTimers();
|
|
105
105
|
});
|
|
106
106
|
|
|
107
107
|
afterEach(() => {
|
|
108
|
-
|
|
108
|
+
vi.useRealTimers();
|
|
109
109
|
});
|
|
110
110
|
|
|
111
111
|
it("should run at 3PM", async () => {
|
|
112
112
|
expect.assertions(1);
|
|
113
|
-
|
|
114
|
-
|
|
113
|
+
vi.setSystemTime(dayjs("2024-01-01 19:59:59").toDate());
|
|
114
|
+
vi.runOnlyPendingTimersAsync();
|
|
115
115
|
await hassTestRunner.run(({ hass, lifecycle }) => {
|
|
116
116
|
lifecycle.onReady(() => {
|
|
117
|
-
const turnOn =
|
|
118
|
-
|
|
117
|
+
const turnOn = vi.spyOn(hass.call.switch, "turn_on");
|
|
118
|
+
vi.advanceTimersByTime(2 * SECOND);
|
|
119
119
|
expect(turnOn).toHaveBeenCalledWith({
|
|
120
120
|
entity_id: "switch.bedroom_lamp",
|
|
121
121
|
});
|