import { expect, tap } from '@git.zone/tstest/tapbundle'; import { createMqttDiscoveryDescriptor } from '../../ts/integrations/mqtt/index.js'; tap.test('matches Home Assistant MQTT discovery config topics', async () => { const descriptor = createMqttDiscoveryDescriptor(); const matcher = descriptor.getMatchers()[1]; const result = await matcher.matches({ topic: 'homeassistant/sensor/kitchen/temperature/config', payload: '{"name":"Kitchen temperature","state_topic":"kitchen/temperature"}', }, {}); expect(result.matched).toBeTrue(); expect(result.candidate?.metadata?.component).toEqual('sensor'); expect(result.candidate?.metadata?.nodeId).toEqual('kitchen'); expect(result.normalizedDeviceId).toEqual('temperature'); }); export default tap.start();