test(voice): fix tests

This commit is contained in:
iCrawl
2022-01-11 21:53:08 +01:00
parent db25f529b2
commit 62c74b8333
19 changed files with 44 additions and 206 deletions

View File

@@ -9,10 +9,7 @@
// Emit
"outDir": "./dist",
"sourceRoot": "./",
// Projects
"composite": true
"sourceRoot": "./"
},
"include": ["src/**/*.ts"]
}

View File

@@ -1,18 +1,18 @@
/* eslint-disable @typescript-eslint/no-unsafe-member-access */
/* eslint-disable @typescript-eslint/no-unsafe-assignment */
/* eslint-disable @typescript-eslint/dot-notation */
import { AudioResource } from '../../audio/AudioResource';
import { createAudioPlayer, AudioPlayerStatus, AudioPlayer, SILENCE_FRAME } from '../AudioPlayer';
import { AudioResource } from '../src/audio/AudioResource';
import { createAudioPlayer, AudioPlayerStatus, AudioPlayer, SILENCE_FRAME } from '../src/audio/AudioPlayer';
import { Readable } from 'node:stream';
import { addAudioPlayer, deleteAudioPlayer } from '../../DataStore';
import { NoSubscriberBehavior } from '../..';
import { VoiceConnection, VoiceConnectionStatus } from '../../VoiceConnection';
import { addAudioPlayer, deleteAudioPlayer } from '../src/DataStore';
import { NoSubscriberBehavior } from '../src';
import { VoiceConnection, VoiceConnectionStatus } from '../src/VoiceConnection';
import { once } from 'node:events';
import { AudioPlayerError } from '../AudioPlayerError';
import { AudioPlayerError } from '../src/audio/AudioPlayerError';
jest.mock('../../DataStore');
jest.mock('../../VoiceConnection');
jest.mock('../AudioPlayerError');
jest.mock('../src/DataStore');
jest.mock('../src/VoiceConnection');
jest.mock('../src/audio/AudioPlayerError');
const addAudioPlayerMock = addAudioPlayer as unknown as jest.Mock<typeof addAudioPlayer>;
const deleteAudioPlayerMock = deleteAudioPlayer as unknown as jest.Mock<typeof deleteAudioPlayer>;

View File

@@ -1,5 +1,5 @@
import { SILENCE_FRAME } from '../../audio/AudioPlayer';
import { AudioReceiveStream, EndBehaviorType } from '../AudioReceiveStream';
import { SILENCE_FRAME } from '../src/audio/AudioPlayer';
import { AudioReceiveStream, EndBehaviorType } from '../src/receive/AudioReceiveStream';
const DUMMY_BUFFER = Buffer.allocUnsafe(16);

View File

@@ -1,12 +1,12 @@
/* eslint-disable @typescript-eslint/no-unsafe-return */
import { opus, VolumeTransformer } from 'prism-media';
import { PassThrough, Readable } from 'node:stream';
import { SILENCE_FRAME } from '../AudioPlayer';
import { AudioResource, createAudioResource, NO_CONSTRAINT, VOLUME_CONSTRAINT } from '../AudioResource';
import { Edge, findPipeline as _findPipeline, StreamType, TransformerType } from '../TransformerGraph';
import { SILENCE_FRAME } from '../src/audio/AudioPlayer';
import { AudioResource, createAudioResource, NO_CONSTRAINT, VOLUME_CONSTRAINT } from '../src/audio/AudioResource';
import { Edge, findPipeline as _findPipeline, StreamType, TransformerType } from '../src/audio/TransformerGraph';
jest.mock('prism-media');
jest.mock('../TransformerGraph');
jest.mock('../src/audio/TransformerGraph');
function wait() {
return new Promise((resolve) => process.nextTick(resolve));

View File

@@ -1,6 +1,6 @@
/* eslint-disable @typescript-eslint/no-unsafe-assignment */
import EventEmitter, { once } from 'node:events';
import { SSRCMap, VoiceUserData } from '../SSRCMap';
import { SSRCMap, VoiceUserData } from '../src/receive/SSRCMap';
function onceOrThrow<T extends EventEmitter>(target: T, event: string, after: number) {
return new Promise((resolve, reject) => {

View File

@@ -1,4 +1,4 @@
import { methods } from '../Secretbox';
import { methods } from '../src/util/Secretbox';
jest.mock('tweetnacl');

View File

@@ -1,5 +1,5 @@
import { noop } from '../../util/util';
import { SpeakingMap } from '../SpeakingMap';
import { noop } from '../src/util/util';
import { SpeakingMap } from '../src/receive/SpeakingMap';
jest.useFakeTimers();

View File

@@ -1,4 +1,4 @@
import { Edge, findPipeline, StreamType, TransformerType } from '../TransformerGraph';
import { Edge, findPipeline, StreamType, TransformerType } from '../src/audio/TransformerGraph';
const noConstraint = () => true;

View File

@@ -1,14 +1,14 @@
/* eslint-disable @typescript-eslint/no-unsafe-assignment */
/* eslint-disable @typescript-eslint/dot-notation */
import { VoiceReceiver } from '../VoiceReceiver';
import { VoiceConnection as _VoiceConnection, VoiceConnectionStatus } from '../../VoiceConnection';
import { RTP_PACKET_DESKTOP, RTP_PACKET_CHROME, RTP_PACKET_ANDROID } from './fixtures/rtp';
import { VoiceReceiver } from '../src/receive/VoiceReceiver';
import { VoiceConnection as _VoiceConnection, VoiceConnectionStatus } from '../src/VoiceConnection';
import { RTP_PACKET_DESKTOP, RTP_PACKET_CHROME, RTP_PACKET_ANDROID } from '../__mocks__/rtp';
import { once } from 'node:events';
import { VoiceOpcodes } from 'discord-api-types/voice/v4';
import { methods } from '../../util/Secretbox';
import { methods } from '../src/util/Secretbox';
jest.mock('../../VoiceConnection');
jest.mock('../SSRCMap');
jest.mock('../src/VoiceConnection');
jest.mock('../src/receive/SSRCMap');
const openSpy = jest.spyOn(methods, 'open');

View File

@@ -3,7 +3,7 @@
/* eslint-disable @typescript-eslint/no-unused-vars */
import { createSocket as _createSocket } from 'node:dgram';
import EventEmitter, { once } from 'node:events';
import { VoiceUDPSocket } from '../VoiceUDPSocket';
import { VoiceUDPSocket } from '../src/networking/VoiceUDPSocket';
jest.mock('node:dgram');
jest.useFakeTimers();

View File

@@ -3,7 +3,7 @@
import { VoiceOpcodes } from 'discord-api-types/voice/v4';
import EventEmitter, { once } from 'node:events';
import WS from 'jest-websocket-mock';
import { VoiceWebSocket } from '../VoiceWebSocket';
import { VoiceWebSocket } from '../src/networking/VoiceWebSocket';
beforeEach(() => {
WS.clean();

View File

@@ -1,4 +1,4 @@
import { abortAfter } from '../abortAfter';
import { abortAfter } from '../src/util/abortAfter';
jest.useFakeTimers();

View File

@@ -1,10 +1,10 @@
/* eslint-disable @typescript-eslint/no-unsafe-call */
/* eslint-disable @typescript-eslint/no-unsafe-member-access */
/* eslint-disable @typescript-eslint/no-unsafe-assignment */
import { demuxProbe } from '../demuxProbe';
import { demuxProbe } from '../src/util/demuxProbe';
import { opus as _opus } from 'prism-media';
import { Readable } from 'node:stream';
import { StreamType } from '../../audio';
import { StreamType } from '../src/audio';
import EventEmitter, { once } from 'node:events';
jest.mock('prism-media');

View File

@@ -1,8 +1,8 @@
/* eslint-disable @typescript-eslint/no-unsafe-member-access */
/* eslint-disable @typescript-eslint/no-unsafe-assignment */
import EventEmitter from 'node:events';
import { VoiceConnection, VoiceConnectionStatus } from '../../VoiceConnection';
import { entersState } from '../entersState';
import { VoiceConnection, VoiceConnectionStatus } from '../src/VoiceConnection';
import { entersState } from '../src/util/entersState';
function createFakeVoiceConnection(status = VoiceConnectionStatus.Signalling) {
const vc = new EventEmitter() as any;