Skip to content

Instantly share code, notes, and snippets.

@gdyrrahitis
Created August 9, 2017 21:56
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save gdyrrahitis/46f848b12b36f3549245e00efd24add6 to your computer and use it in GitHub Desktop.
Save gdyrrahitis/46f848b12b36f3549245e00efd24add6 to your computer and use it in GitHub Desktop.
Initialize socket.io in socket.spec.ts
import * as ioClient from "socket.io-client";
import * as io from "socket.io";
import * as chai from "chai";
import { Socket } from "../socket.io/socket";
import { UserRole } from "../../domain/index";
import {
RoomCreateEvent, RoomGetAllEvent, InternalServerErrorEvent, RoomShowAllEvent,
RoomsAllEvent, UsersAllEvent, RoomNotFoundEvent, RoomJoinEvent, RequestAllRoomsEvent,
RequestAllUsersEvent, RoomDisconnectEvent, UserDisconnectedEvent, BanEvent, UserBannedEvent
} from "../../domain/events/index";
const assert = chai.assert;
const socketUrl: string = "http://localhost:5000";
const options: SocketIOClient.ConnectOpts = {
transports: ['websocket'],
'force new connection': true
};
describe("Server", () => {
describe("Socket", () => {
let server: SocketIO.Server;
let socket: Socket;
let client: SocketIOClient.Socket;
beforeEach(() => {
server = io().listen(5000);
socket = new Socket(server);
socket.connect();
client = ioClient.connect(socketUrl, options);
});
afterEach(() => {
server.close();
client.close();
});
// more tests coming...
});
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment