mirror of
https://github.com/hack-chat/main.git
synced 2024-03-22 13:20:33 +08:00
65 lines
1.9 KiB
JavaScript
65 lines
1.9 KiB
JavaScript
import { expect } from 'chai';
|
|
import mocks from './mockImports.js';
|
|
|
|
const modulePath = '../commands/utility/_Channels.js';
|
|
let importedModule;
|
|
|
|
describe('Checking channels module', () => {
|
|
it('should be importable', async () => {
|
|
importedModule = await import(modulePath);
|
|
expect(importedModule).to.not.be.a('string');
|
|
});
|
|
|
|
it('should reject empty channels', async () => {
|
|
const resp = importedModule.canJoinChannel('', {});
|
|
expect(resp).to.be.a('number');
|
|
});
|
|
|
|
it('should reject too long of channels', async () => {
|
|
const resp = importedModule.canJoinChannel('a'.repeat(121), {});
|
|
expect(resp).to.be.a('number');
|
|
});
|
|
|
|
it('should get channel data', async () => {
|
|
const newConfig = Object.assign({}, mocks.core.appConfig.data);
|
|
newConfig.permissions['test'] = {};
|
|
const resp = importedModule.getChannelSettings(mocks.core.appConfig.data, 'test');
|
|
expect(resp).to.be.an('object');
|
|
});
|
|
|
|
it('should return empty array findUsers', async () => {
|
|
const resp = importedModule.findUsers({}, {});
|
|
expect(resp).to.be.an('array');
|
|
});
|
|
|
|
it('should limit results', async () => {
|
|
const oldFS = mocks.server.findSockets;
|
|
mocks.server.findSockets = (filterObj) => {
|
|
return [1, 2, 3];
|
|
}
|
|
const resp = importedModule.findUsers(mocks.server, {
|
|
userid: 1234,
|
|
}, 1);
|
|
|
|
mocks.server.findSockets = oldFS;
|
|
|
|
expect(resp).to.be.an('array');
|
|
});
|
|
|
|
it('should respond to banned sockets', async () => {
|
|
const newSocket = Object.assign({}, mocks.plebSocket);
|
|
newSocket.banned = true;
|
|
|
|
const resp = importedModule.canJoinChannel('test', newSocket);
|
|
|
|
expect(resp).to.be.an('number');
|
|
});
|
|
|
|
it('should provide duplicate user checks', async () => {
|
|
const newSocket = Object.assign({}, mocks.plebSocket);
|
|
|
|
const resp = importedModule.socketInChannel(mocks.server, 'test', newSocket);
|
|
|
|
expect(resp).to.be.an('object');
|
|
});
|
|
}) |