matterbridge-roborock-vacuum-plugin
Version:
Matterbridge Roborock Vacuum Plugin
25 lines • 1.46 kB
JavaScript
import { describe, expect, it, vi } from 'vitest';
import { BehaviorDeviceGeneric } from '../behaviors/BehaviorDeviceGeneric.js';
import { DeviceModel } from '../roborockCommunication/models/index.js';
import { configureBehavior } from '../share/behaviorFactory.js';
import { createMockLogger } from './helpers/testUtils.js';
describe('configureBehavior', () => {
const duid = 'test-duid';
const cleanModeSettings = {};
const roborockService = {};
const logger = createMockLogger();
const onActionTriggered = vi.fn();
it('returns smart handler for smart model', () => {
const result = configureBehavior(DeviceModel.QREVO_EDGE_5V1, duid, roborockService, false, cleanModeSettings, false, logger, onActionTriggered);
expect(result).toBeInstanceOf(BehaviorDeviceGeneric);
});
it('returns default handler for non-smart model', () => {
const result = configureBehavior('non-smart-model', duid, roborockService, false, cleanModeSettings, false, logger, onActionTriggered);
expect(result).toBeInstanceOf(BehaviorDeviceGeneric);
});
it('returns default handler if forceRunAtDefault is true, even for smart model', () => {
const result = configureBehavior(DeviceModel.QREVO_EDGE_5V1, duid, roborockService, false, cleanModeSettings, true, logger, onActionTriggered);
expect(result).toBeInstanceOf(BehaviorDeviceGeneric);
});
});
//# sourceMappingURL=behaviorFactory.test.js.map