typescript - 如何从 Socket.io 模拟 Socket 对象
问题描述
我想在 Nestjs 中为我的网关创建一个测试。我试图为 socket.io 搜索一些模拟库,但没有人使用 TypeScript。这是我的测试
import { Test, TestingModule } from '@nestjs/testing'
import { RoomGateway } from './room.gateway'
import { Socket } from 'socket.io'
describe('RoomGateway', () => {
let roomGateway: RoomGateway
let socket: Socket
beforeEach(async () => {
const RoomModule: TestingModule = await Test.createTestingModule({
providers: [RoomGateway],
}).compile()
roomGateway = RoomModule.get<RoomGateway>(RoomGateway)
socket = new Socket(null, null, null)
})
it('Should be defined', () => {
expect(roomGateway).toBeDefined()
})
it('Should return message that wass provided', async () => {
expect(roomGateway.handleMessage(socket, 'Hello World')).toEqual({
event: 'message',
data: 'Hello World',
})
})
})
任何人都知道如何在 TypeScript 中模拟 Socket 对象?
解决方案
推荐阅读
- javascript - Reactjs - 加载翻译文件时出错
- typescript - 在 Cypress 中存储访问令牌 - Cypress OAuth 2.0
- google-api - 访问整个 gsuite 域日历事件
- c# - ToolStripLabel 未使用 PropertyBinding 更新应用程序设置
- python - Django:使用公共外键链接两个模型
- python - 审核 url 为允许的方案打开。允许使用文件/或自定义方案通常是出乎意料的
- php - 在不安装 MS SQL 驱动程序的情况下使用 php_pdo_sqlsrv 需要哪些 dll
- node.js - NodeJS WebSocket 多路径
- neo4j - 在 neo4j 中使用 gds.alpha.graphSage.stream 时出错
- json - 如何在 HTTP 请求的 JSON 正文中传递 JSON 字符串?