From 58dd778b3d3a53130840ae3012725dd6b881ba12 Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Mon, 10 Mar 2025 06:24:57 -0400 Subject: [PATCH] Add some type checking to demo (#24567) --- demo/src/stubs/config.ts | 9 ++++---- demo/src/stubs/config_entries.ts | 38 ++++++++++++++++++-------------- src/fake_data/provide_hass.ts | 4 ++-- 3 files changed, 29 insertions(+), 22 deletions(-) diff --git a/demo/src/stubs/config.ts b/demo/src/stubs/config.ts index f6ea8570f6..015491c4ba 100644 --- a/demo/src/stubs/config.ts +++ b/demo/src/stubs/config.ts @@ -1,9 +1,10 @@ +import type { validateConfig } from "../../../src/data/config"; import type { MockHomeAssistant } from "../../../src/fake_data/provide_hass"; export const mockConfig = (hass: MockHomeAssistant) => { - hass.mockWS("validate_config", () => ({ - actions: { valid: true }, - conditions: { valid: true }, - triggers: { valid: true }, + hass.mockWS("validate_config", () => ({ + actions: { valid: true, error: null }, + conditions: { valid: true, error: null }, + triggers: { valid: true, error: null }, })); }; diff --git a/demo/src/stubs/config_entries.ts b/demo/src/stubs/config_entries.ts index 01685f3848..e47abbc756 100644 --- a/demo/src/stubs/config_entries.ts +++ b/demo/src/stubs/config_entries.ts @@ -1,20 +1,26 @@ +import type { getConfigEntries } from "../../../src/data/config_entries"; import type { MockHomeAssistant } from "../../../src/fake_data/provide_hass"; export const mockConfigEntries = (hass: MockHomeAssistant) => { - hass.mockWS("config_entries/get", () => ({ - entry_id: "co2signal", - domain: "co2signal", - title: "Electricity Maps", - source: "user", - state: "loaded", - supports_options: false, - supports_remove_device: false, - supports_unload: true, - supports_reconfigure: true, - supported_subentry_types: {}, - pref_disable_new_entities: false, - pref_disable_polling: false, - disabled_by: null, - reason: null, - })); + hass.mockWS("config_entries/get", () => [ + { + entry_id: "mock-entry-co2signal", + domain: "co2signal", + title: "Electricity Maps", + source: "user", + state: "loaded", + supports_options: false, + supports_remove_device: false, + supports_unload: true, + supports_reconfigure: true, + supported_subentry_types: {}, + pref_disable_new_entities: false, + pref_disable_polling: false, + disabled_by: null, + reason: null, + num_subentries: 0, + error_reason_translation_key: null, + error_reason_translation_placeholders: null, + }, + ]); }; diff --git a/src/fake_data/provide_hass.ts b/src/fake_data/provide_hass.ts index 3bd34ac071..9317c11f85 100644 --- a/src/fake_data/provide_hass.ts +++ b/src/fake_data/provide_hass.ts @@ -40,13 +40,13 @@ export interface MockHomeAssistant extends HomeAssistant { addEntities(entites: Entity | Entity[], replace?: boolean); updateTranslations(fragment: null | string, language?: string); addTranslations(translations: Record, language?: string); - mockWS( + mockWS any = any>( type: string, callback: ( msg: any, hass: MockHomeAssistant, onChange?: (response: any) => void - ) => any + ) => Awaited> ); mockAPI(path: string | RegExp, callback: MockRestCallback); mockEvent(event);