UNPKG

livekit-client

Version:

JavaScript/TypeScript client SDK for LiveKit

31 lines (28 loc) 1.07 kB
import { describe, expect, it } from 'vitest'; import Room from './Room'; import { RoomEvent } from './events'; describe('Active device switch', () => { it('updates devices correctly', async () => { const room = new Room(); await room.switchActiveDevice('audioinput', 'test'); expect(room.getActiveDevice('audioinput')).toBe('test'); }); it('updates devices with exact constraint', async () => { const room = new Room(); await room.switchActiveDevice('audioinput', 'test', true); expect(room.getActiveDevice('audioinput')).toBe('test'); }); it('emits changed event', async () => { const room = new Room(); let kind: MediaDeviceKind | undefined; let deviceId: string | undefined; const deviceChangeHandler = (_kind: MediaDeviceKind, _deviceId: string) => { kind = _kind; deviceId = _deviceId; }; room.on(RoomEvent.ActiveDeviceChanged, deviceChangeHandler); await room.switchActiveDevice('audioinput', 'test', true); expect(deviceId).toBe('test'); expect(kind).toBe('audioinput'); }); });