hapticlink / server /test /socket /routes /get_user_info.spec.ts
avallef's picture
Added get_user_info route
9369ecd
import { expect } from "chai";
import { Context, HapticLinkServer, User } from "../../../src/socket/hapticLinkServer";
import { GetUserInfoHandler, GetUserInfoPayload } from "../../../src/socket/routes/get_user_info";
import { WebSocketWrapper } from "../hapticLinkServer.spec";
describe("Get User Info", () => {
let server: HapticLinkServer;
let ws: WebSocketWrapper;
let user: User;
let ctx: Context<GetUserInfoPayload>;
beforeEach(() => {
server = new HapticLinkServer();
ws = new WebSocketWrapper();
user = new User(ws);
user.username = "testname";
ctx = {
ws: ws,
user: user,
payload: {},
server: server,
};
});
it("should get user info", (done) => {
GetUserInfoHandler(ctx);
const res = JSON.parse(ws.sendData as string);
expect(res.message).to.equal("get_user_info_response", "incorrect message");
expect(res.status).to.equal("success", "incorrect status");
expect(res.user.username).to.equal("testname", "incorrect username");
expect(res.user.currentRoom).to.equal(undefined, "incorrect current room");
expect(res.user.id.length).to.gt(4, "incorrect id");
done();
});
});