@fakes/media-devices
Version:
A interactive fake implementation of MediaDevices interface in the browser for testing
24 lines (19 loc) • 863 B
text/typescript
import { MediaDeviceDescription } from './MediaDeviceDescription'
export const anyDevice = (override: Partial<MediaDeviceDescription> = {}): MediaDeviceDescription => {
return {
deviceId: 'stand-in-device-id',
groupId: 'stand-in-group-id',
kind: 'videoinput',
label: 'Acme Device (HD)',
...override,
}
}
export const anyCamera = (override: Partial<Omit<MediaDeviceDescription, 'kind'>> = {}): MediaDeviceDescription => {
return anyDevice({ ...override, kind: 'videoinput' })
}
export const anyMicrophone = (override: Partial<Omit<MediaDeviceDescription, 'kind'>> = {}): MediaDeviceDescription => {
return anyDevice({ ...override, kind: 'audioinput' })
}
export const anySpeaker = (override: Partial<Omit<MediaDeviceDescription, 'kind'>> = {}): MediaDeviceDescription => {
return anyDevice({ ...override, kind: 'audiooutput' })
}