more tests, added ability to remove clients from a channel
This commit is contained in:
parent
21f77fa4c3
commit
40691d9815
18
dist/server/channelManager.js
vendored
18
dist/server/channelManager.js
vendored
@ -55,6 +55,24 @@ class ChannelManager {
|
|||||||
return new channelBase_1.default(data.channel);
|
return new channelBase_1.default(data.channel);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
removeClientFromChannel(client_id, channel_id) {
|
||||||
|
var index = 0;
|
||||||
|
for (let channel of this.channels) {
|
||||||
|
if (channel.id == channel_id) {
|
||||||
|
this.channels.splice(index, 1);
|
||||||
|
if (channel.removeClient(client_id)) {
|
||||||
|
logger.accessLog.info(`client removed from channel - channel: ${channel_id}, client: ${client_id}`);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
logger.errorLog.info(`client not removed from channel, or doesn't exist in channel - channel: ${channel_id}, client: ${client_id}`);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
;
|
;
|
||||||
exports.default = ChannelManager;
|
exports.default = ChannelManager;
|
||||||
|
2
dist/server/channelManager.js.map
vendored
2
dist/server/channelManager.js.map
vendored
@ -1 +1 @@
|
|||||||
{"version":3,"file":"channelManager.js","sourceRoot":"","sources":["../../src/channelManager.ts"],"names":[],"mappings":";;AAAA,wDAAiD;AAKjD,IAAI,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEjC,MAAM,cAAc;IAGlB;QAFA,aAAQ,GAA+B,EAAE,CAAC;QAGxC,4BAA4B;QAC5B,IAAI,OAAO,GAAgB,IAAI,qBAAW,CAAC,SAAS,CAAC,CAAC;QACtD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;IAED,aAAa,CAAC,IAAS;QACrB,IAAI,aAAa,GAAgC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClF,IAAI,OAA+B,CAAC;QAEpC,IAAI,aAAa,EAAE;YACjB,OAAO,GAAG,aAAa,CAAC;YACxB,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,2BAA2B,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;SAChE;aAAM;YACL,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YACzC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC5B,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,qCAAqC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;SAC1E;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,aAAa,CAAC,UAAkB;QAC9B,KAAK,IAAI,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjC,IAAI,OAAO,CAAC,EAAE,IAAI,UAAU,EAAE;gBAC5B,OAAO,OAAO,CAAC;aAChB;SACF;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,kBAAkB,CAAC,MAA4B,EAAE,UAAkB;QACjE,IAAI,OAAO,GAAgC,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QAE1E,IAAI,OAAO,EAAE;YACX,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAC1B,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;YACjC,OAAO,EAAC,QAAQ,EAAE,SAAS,EAAC,CAAC;SAC9B;aAAM;YACL,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,mBAAmB,UAAU,kBAAkB,CAAC,CAAC;YACvE,OAAO,EAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,mBAAmB,UAAU,kBAAkB,EAAC,CAAC;SACzF;IACH,CAAC;IAED,mBAAmB,CAAC,IAAS;QAC3B,IAAI;YACF,IAAI,OAAO,GAAG,OAAO,CAAC,cAAc,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,MAAM,SAAS,CAAC,CAAC;YAC/E,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,wCAAwC,IAAI,CAAC,MAAM,iBAAiB,IAAI,CAAC,OAAO,KAAK,CAAC,CAAC;YAC7G,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SAClC;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACxB,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,0BAA0B,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;YAChE,OAAO,IAAI,qBAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SACtC;IACH,CAAC;CACF;AAAA,CAAC;AAEF,kBAAe,cAAc,CAAC;AAE9B,8GAA8G"}
|
{"version":3,"file":"channelManager.js","sourceRoot":"","sources":["../../src/channelManager.ts"],"names":[],"mappings":"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"}
|
11
dist/server/channels/channelBase.js
vendored
11
dist/server/channels/channelBase.js
vendored
@ -26,6 +26,17 @@ class ChannelBase {
|
|||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
removeClient(id) {
|
||||||
|
var index = 0;
|
||||||
|
for (let client of this.clients) {
|
||||||
|
if (client.id == id) {
|
||||||
|
this.clients.splice(index, 1);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
broadcastMessage(from, message) {
|
broadcastMessage(from, message) {
|
||||||
for (let client of this.clients) {
|
for (let client of this.clients) {
|
||||||
if (client != from) {
|
if (client != from) {
|
||||||
|
2
dist/server/channels/channelBase.js.map
vendored
2
dist/server/channels/channelBase.js.map
vendored
@ -1 +1 @@
|
|||||||
{"version":3,"file":"channelBase.js","sourceRoot":"","sources":["../../../src/channels/channelBase.ts"],"names":[],"mappings":";;AAGA,IAAI,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;AAElC,MAAM,WAAW;IAIf,YAAY,EAAU;QAFtB,YAAO,GAA6B,EAAE,CAAC;QAGrC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAC,SAAS,EAAE,EAAE,EAAC,CAAC,CAAC;IAC5D,CAAC;IAED,SAAS,CAAC,MAA4B;QACpC,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE;YAChC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,iCAAiC,EAAE,EAAC,SAAS,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAC,CAAC,CAAC;YACnG,OAAO,EAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,iCAAiC,EAAC,CAAC;SAC3E;aAAM;YACL,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC1B,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,yBAAyB,EAAE,EAAC,SAAS,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAC,CAAC,CAAC;YAC5F,OAAO,EAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,cAAc,EAAC,CAAC;SACzD;IACH,CAAC;IAED,YAAY,CAAC,EAAU;QACrB,KAAK,IAAI,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE;YAC/B,IAAI,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE;gBACnB,OAAO,MAAM,CAAC;aACf;SACF;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,gBAAgB,CAAC,IAA+B,EAAE,OAAe;QAC/D,KAAK,IAAI,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE;YAC/B,IAAI,MAAM,IAAI,IAAI,EAAE;gBAClB,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACxB,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,MAAM,CAAC,EAAE,IAAI,EAAE,EAAC,OAAO,EAAE,OAAO,EAAC,CAAC,CAAC;aACrE;iBAAM;gBACL,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,6BAA6B,MAAM,CAAC,EAAE,KAAK,EAAE,EAAC,OAAO,EAAE,OAAO,EAAC,CAAC,CAAC;aACxF;SACF;QAED,OAAO,EAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,4BAA4B,EAAC,CAAC;IACxE,CAAC;CACF;AAAA,CAAC;AAEF,kBAAe,WAAW,CAAC"}
|
{"version":3,"file":"channelBase.js","sourceRoot":"","sources":["../../../src/channels/channelBase.ts"],"names":[],"mappings":";;AAGA,IAAI,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;AAElC,MAAM,WAAW;IAIf,YAAY,EAAU;QAFtB,YAAO,GAA6B,EAAE,CAAC;QAGrC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAC,SAAS,EAAE,EAAE,EAAC,CAAC,CAAC;IAC5D,CAAC;IAED,SAAS,CAAC,MAA4B;QACpC,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE;YAChC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,iCAAiC,EAAE,EAAC,SAAS,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAC,CAAC,CAAC;YACnG,OAAO,EAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,iCAAiC,EAAC,CAAC;SAC3E;aAAM;YACL,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC1B,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,yBAAyB,EAAE,EAAC,SAAS,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAC,CAAC,CAAC;YAC5F,OAAO,EAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,cAAc,EAAC,CAAC;SACzD;IACH,CAAC;IAED,YAAY,CAAC,EAAU;QACrB,KAAK,IAAI,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE;YAC/B,IAAI,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE;gBACnB,OAAO,MAAM,CAAC;aACf;SACF;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,YAAY,CAAC,EAAU;QACrB,IAAI,KAAK,GAAW,CAAC,CAAC;QAEtB,KAAK,IAAI,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE;YAC/B,IAAI,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE;gBACnB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBAC9B,OAAO,IAAI,CAAC;aACb;YAED,KAAK,EAAE,CAAC;SACT;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,gBAAgB,CAAC,IAA+B,EAAE,OAAe;QAC/D,KAAK,IAAI,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE;YAC/B,IAAI,MAAM,IAAI,IAAI,EAAE;gBAClB,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACxB,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,MAAM,CAAC,EAAE,IAAI,EAAE,EAAC,OAAO,EAAE,OAAO,EAAC,CAAC,CAAC;aACrE;iBAAM;gBACL,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,6BAA6B,MAAM,CAAC,EAAE,KAAK,EAAE,EAAC,OAAO,EAAE,OAAO,EAAC,CAAC,CAAC;aACxF;SACF;QAED,OAAO,EAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,4BAA4B,EAAC,CAAC;IACxE,CAAC;CACF;AAAA,CAAC;AAEF,kBAAe,WAAW,CAAC"}
|
8
dist/server/test/channelBase.spec.js
vendored
8
dist/server/test/channelBase.spec.js
vendored
@ -34,5 +34,13 @@ describe('ChannelBase', function () {
|
|||||||
var result = channel.broadcastMessage(client, 'test message');
|
var result = channel.broadcastMessage(client, 'test message');
|
||||||
expect(result.status).to.be.equal('success');
|
expect(result.status).to.be.equal('success');
|
||||||
});
|
});
|
||||||
|
it('should be able to remove client from channel', function () {
|
||||||
|
var result = channel.removeClient(client.id);
|
||||||
|
expect(result).to.be.equal(true);
|
||||||
|
});
|
||||||
|
it('should not be able to remove client that doesnn\'t exist from channel', function () {
|
||||||
|
var result = channel.removeClient(126);
|
||||||
|
expect(result).to.be.equal(false);
|
||||||
|
});
|
||||||
});
|
});
|
||||||
//# sourceMappingURL=channelBase.spec.js.map
|
//# sourceMappingURL=channelBase.spec.js.map
|
2
dist/server/test/channelBase.spec.js.map
vendored
2
dist/server/test/channelBase.spec.js.map
vendored
@ -1 +1 @@
|
|||||||
{"version":3,"file":"channelBase.spec.js","sourceRoot":"","sources":["../../../src/test/channelBase.spec.ts"],"names":[],"mappings":";;AAAA,yDAAkD;AAClD,sDAA+C;AAE/C,IAAI,IAAI,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC;AACzC,IAAI,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;AACpC,IAAI,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAC7B,IAAI,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC;AAClD,IAAI,GAAG,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;AAEnC,IAAI,IAAI,GAAW,cAAc,CAAC;AAClC,IAAI,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAC;AACrC,IAAI,OAAoB,CAAC;AACzB,IAAI,IAAI,GAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,CAAA;AAChH,IAAI,MAAM,GAAe,IAAI,oBAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAExD,QAAQ,CAAC,aAAa,EAAE;IACtB,EAAE,CAAC,sCAAsC,EAAE;QACzC,OAAO,GAAG,IAAI,qBAAW,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gCAAgC,EAAE;QACnC,IAAI,MAAM,GAAQ,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC5C,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gEAAgE,EAAE;QACnE,IAAI,MAAM,GAAQ,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC5C,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sBAAsB,EAAE;QACzB,IAAI,KAAK,GAAG,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC5C,IAAI,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QAClC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE;QAC3C,IAAI,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QAC9D,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
{"version":3,"file":"channelBase.spec.js","sourceRoot":"","sources":["../../../src/test/channelBase.spec.ts"],"names":[],"mappings":";;AAAA,yDAAkD;AAClD,sDAA+C;AAE/C,IAAI,IAAI,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC;AACzC,IAAI,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;AACpC,IAAI,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAC7B,IAAI,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC;AAClD,IAAI,GAAG,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;AAEnC,IAAI,IAAI,GAAW,cAAc,CAAC;AAClC,IAAI,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAC;AACrC,IAAI,OAAoB,CAAC;AACzB,IAAI,IAAI,GAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,CAAA;AAChH,IAAI,MAAM,GAAe,IAAI,oBAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAExD,QAAQ,CAAC,aAAa,EAAE;IACtB,EAAE,CAAC,sCAAsC,EAAE;QACzC,OAAO,GAAG,IAAI,qBAAW,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gCAAgC,EAAE;QACnC,IAAI,MAAM,GAAQ,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC5C,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gEAAgE,EAAE;QACnE,IAAI,MAAM,GAAQ,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC5C,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sBAAsB,EAAE;QACzB,IAAI,KAAK,GAAG,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC5C,IAAI,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QAClC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE;QAC3C,IAAI,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QAC9D,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8CAA8C,EAAE;QACjD,IAAI,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC7C,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uEAAuE,EAAE;QAC1E,IAAI,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QACvC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
12
dist/server/test/channelManager.spec.js
vendored
12
dist/server/test/channelManager.spec.js
vendored
@ -43,5 +43,17 @@ describe('ChannelManager', function () {
|
|||||||
var result = channelManager.createByChannelType(data2);
|
var result = channelManager.createByChannelType(data2);
|
||||||
expect(result.id).to.be.equal('test channel 2');
|
expect(result.id).to.be.equal('test channel 2');
|
||||||
});
|
});
|
||||||
|
it('should remove client from channel', function () {
|
||||||
|
var result = channelManager.removeClientFromChannel(client.id, 'test channel');
|
||||||
|
expect(result).to.be.equal(true);
|
||||||
|
});
|
||||||
|
it('should be unable to remove a client that doesn\'t exit from channel', function () {
|
||||||
|
var result = channelManager.removeClientFromChannel(126, 'test channel');
|
||||||
|
expect(result).to.be.equal(false);
|
||||||
|
});
|
||||||
|
it('should be unable to remove a client from a channel that doesn\'t exist', function () {
|
||||||
|
var result = channelManager.removeClientFromChannel(client.id, 'test channel 3');
|
||||||
|
expect(result).to.be.equal(false);
|
||||||
|
});
|
||||||
});
|
});
|
||||||
//# sourceMappingURL=channelManager.spec.js.map
|
//# sourceMappingURL=channelManager.spec.js.map
|
2
dist/server/test/channelManager.spec.js.map
vendored
2
dist/server/test/channelManager.spec.js.map
vendored
@ -1 +1 @@
|
|||||||
{"version":3,"file":"channelManager.spec.js","sourceRoot":"","sources":["../../../src/test/channelManager.spec.ts"],"names":[],"mappings":"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"}
|
{"version":3,"file":"channelManager.spec.js","sourceRoot":"","sources":["../../../src/test/channelManager.spec.ts"],"names":[],"mappings":"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"}
|
24
dist/server/test/clientBase.spec.js
vendored
24
dist/server/test/clientBase.spec.js
vendored
@ -1,2 +1,26 @@
|
|||||||
"use strict";
|
"use strict";
|
||||||
|
Object.defineProperty(exports, "__esModule", { value: true });
|
||||||
|
const clientBase_1 = require("../clients/clientBase");
|
||||||
|
var expect = require('chai').expect;
|
||||||
|
var assert = require('chai').assert;
|
||||||
|
var sinon = require('sinon');
|
||||||
|
var name = 'test channel';
|
||||||
|
var data = { 'client': 'test', 'client_type': 'site', 'user_id': 125, 'user_type': 'user', 'channel': name };
|
||||||
|
var WebSocketClient = require('websocket').client;
|
||||||
|
var wsClient = new WebSocketClient();
|
||||||
|
var client = new clientBase_1.default(data, wsClient);
|
||||||
|
describe('ClientBase', function () {
|
||||||
|
it('should get client data', function () {
|
||||||
|
var result = client.getData();
|
||||||
|
expect(result.user_id).to.be.equal(125);
|
||||||
|
});
|
||||||
|
it('should get client type', function () {
|
||||||
|
var result = client.clientType();
|
||||||
|
expect(result).to.be.equal('test');
|
||||||
|
});
|
||||||
|
it('should get client object type', function () {
|
||||||
|
var result = client.type();
|
||||||
|
expect(result).to.be.equal('site');
|
||||||
|
});
|
||||||
|
});
|
||||||
//# sourceMappingURL=clientBase.spec.js.map
|
//# sourceMappingURL=clientBase.spec.js.map
|
2
dist/server/test/clientBase.spec.js.map
vendored
2
dist/server/test/clientBase.spec.js.map
vendored
@ -1 +1 @@
|
|||||||
{"version":3,"file":"clientBase.spec.js","sourceRoot":"","sources":["../../../src/test/clientBase.spec.ts"],"names":[],"mappings":""}
|
{"version":3,"file":"clientBase.spec.js","sourceRoot":"","sources":["../../../src/test/clientBase.spec.ts"],"names":[],"mappings":";;AACA,sDAA+C;AAE/C,IAAI,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;AACpC,IAAI,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;AACpC,IAAI,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAE7B,IAAI,IAAI,GAAW,cAAc,CAAC;AAClC,IAAI,IAAI,GAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,CAAA;AAChH,IAAI,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC;AAClD,IAAI,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAC;AACrC,IAAI,MAAM,GAAe,IAAI,oBAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAExD,QAAQ,CAAC,YAAY,EAAE;IACrB,EAAE,CAAC,wBAAwB,EAAE;QAC3B,IAAI,MAAM,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;QAC9B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wBAAwB,EAAE;QAC3B,IAAI,MAAM,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;QACjC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+BAA+B,EAAE;QAClC,IAAI,MAAM,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;QAC3B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
127
logs/access.log
127
logs/access.log
@ -38,3 +38,130 @@
|
|||||||
{"message":"client added to client manager: 125","level":"info","timestamp":"2019-03-14T14:13:06.741Z"}
|
{"message":"client added to client manager: 125","level":"info","timestamp":"2019-03-14T14:13:06.741Z"}
|
||||||
{"message":"attempting to create client of type mhs, client id: 125...","level":"info","timestamp":"2019-03-14T14:13:06.743Z"}
|
{"message":"attempting to create client of type mhs, client id: 125...","level":"info","timestamp":"2019-03-14T14:13:06.743Z"}
|
||||||
{"data":{"client":"mhs","client_type":"site","user_id":125,"user_type":"user","channel":"test channel"},"level":"info","message":"MHS Client Created","timestamp":"2019-03-14T14:13:06.743Z"}
|
{"data":{"client":"mhs","client_type":"site","user_id":125,"user_type":"user","channel":"test channel"},"level":"info","message":"MHS Client Created","timestamp":"2019-03-14T14:13:06.743Z"}
|
||||||
|
{"channelId":"default","level":"info","message":"Channel Created","timestamp":"2019-03-14T14:28:29.773Z"}
|
||||||
|
{"message":"Braid v0.7.1 is running!\n","level":"info","timestamp":"2019-03-14T14:28:29.783Z"}
|
||||||
|
{"message":"Client Connected: 125","level":"info","timestamp":"2019-03-14T14:29:18.433Z"}
|
||||||
|
{"message":"attempting to create channel of type mhs, channel id: mhs_1239...","level":"info","timestamp":"2019-03-14T14:29:18.445Z"}
|
||||||
|
{"channelId":"mhs_1239","level":"info","message":"Channel Created","timestamp":"2019-03-14T14:29:18.446Z"}
|
||||||
|
{"message":"Added channel to channel manager: mhs_1239","level":"info","timestamp":"2019-03-14T14:29:18.446Z"}
|
||||||
|
{"message":"attempting to create client of type mhs, client id: 125...","level":"info","timestamp":"2019-03-14T14:29:18.448Z"}
|
||||||
|
{"data":{"client":"mhs","client_type":"site","user_type":"user","user_id":125,"channel":"mhs_1239"},"level":"info","message":"MHS Client Created","timestamp":"2019-03-14T14:29:18.449Z"}
|
||||||
|
{"message":"client added to client manager: 125","level":"info","timestamp":"2019-03-14T14:29:18.449Z"}
|
||||||
|
{"channelId":"mhs_1239","clientId":125,"level":"info","message":"Added client to channel","timestamp":"2019-03-14T14:29:18.449Z"}
|
||||||
|
{"message":"starting broadcast on channel mhs_1239: this is s1","level":"info","timestamp":"2019-03-14T14:29:29.556Z"}
|
||||||
|
{"message":"client is same as sender: 125 - this is s1","level":"info","timestamp":"2019-03-14T14:29:29.557Z"}
|
||||||
|
{"message":"broadcast complete on channel mhs_1239: this is s1","level":"info","timestamp":"2019-03-14T14:29:29.557Z"}
|
||||||
|
{"channelId":"default","level":"info","message":"Channel Created","timestamp":"2019-03-14T17:52:15.013Z"}
|
||||||
|
{"channelId":"test channel","level":"info","message":"Channel Created","timestamp":"2019-03-14T17:52:15.028Z"}
|
||||||
|
{"channelId":"test channel","clientId":125,"level":"info","message":"Added client to channel","timestamp":"2019-03-14T17:52:15.030Z"}
|
||||||
|
{"message":"client is same as sender: 125 - test message","level":"info","timestamp":"2019-03-14T17:52:15.031Z"}
|
||||||
|
{"message":"creating base channel: test channel","level":"info","timestamp":"2019-03-14T17:52:15.032Z"}
|
||||||
|
{"channelId":"test channel","level":"info","message":"Channel Created","timestamp":"2019-03-14T17:52:15.032Z"}
|
||||||
|
{"message":"Added channel to channel manager: test channel","level":"info","timestamp":"2019-03-14T17:52:15.032Z"}
|
||||||
|
{"message":"Channel already exists: test channel","level":"info","timestamp":"2019-03-14T17:52:15.033Z"}
|
||||||
|
{"channelId":"test channel","clientId":125,"level":"info","message":"Added client to channel","timestamp":"2019-03-14T17:52:15.034Z"}
|
||||||
|
{"message":"channel with id no channel does not exist.","level":"info","timestamp":"2019-03-14T17:52:15.034Z"}
|
||||||
|
{"message":"attempting to create channel of type mhs, channel id: test channel 2...","level":"info","timestamp":"2019-03-14T17:52:15.035Z"}
|
||||||
|
{"channelId":"test channel 2","level":"info","message":"Channel Created","timestamp":"2019-03-14T17:52:15.035Z"}
|
||||||
|
{"message":"creating base client: 125","level":"info","timestamp":"2019-03-14T17:52:15.037Z"}
|
||||||
|
{"message":"client added to client manager: 125","level":"info","timestamp":"2019-03-14T17:52:15.038Z"}
|
||||||
|
{"message":"attempting to create client of type mhs, client id: 125...","level":"info","timestamp":"2019-03-14T17:52:15.039Z"}
|
||||||
|
{"data":{"client":"mhs","client_type":"site","user_id":125,"user_type":"user","channel":"test channel"},"level":"info","message":"MHS Client Created","timestamp":"2019-03-14T17:52:15.039Z"}
|
||||||
|
{"channelId":"default","level":"info","message":"Channel Created","timestamp":"2019-03-14T17:54:44.292Z"}
|
||||||
|
{"channelId":"test channel","level":"info","message":"Channel Created","timestamp":"2019-03-14T17:54:44.303Z"}
|
||||||
|
{"channelId":"test channel","clientId":125,"level":"info","message":"Added client to channel","timestamp":"2019-03-14T17:54:44.305Z"}
|
||||||
|
{"message":"client is same as sender: 125 - test message","level":"info","timestamp":"2019-03-14T17:54:44.306Z"}
|
||||||
|
{"message":"creating base channel: test channel","level":"info","timestamp":"2019-03-14T17:54:44.307Z"}
|
||||||
|
{"channelId":"test channel","level":"info","message":"Channel Created","timestamp":"2019-03-14T17:54:44.307Z"}
|
||||||
|
{"message":"Added channel to channel manager: test channel","level":"info","timestamp":"2019-03-14T17:54:44.307Z"}
|
||||||
|
{"message":"Channel already exists: test channel","level":"info","timestamp":"2019-03-14T17:54:44.308Z"}
|
||||||
|
{"channelId":"test channel","clientId":125,"level":"info","message":"Added client to channel","timestamp":"2019-03-14T17:54:44.309Z"}
|
||||||
|
{"message":"channel with id no channel does not exist.","level":"info","timestamp":"2019-03-14T17:54:44.309Z"}
|
||||||
|
{"message":"attempting to create channel of type mhs, channel id: test channel 2...","level":"info","timestamp":"2019-03-14T17:54:44.310Z"}
|
||||||
|
{"channelId":"test channel 2","level":"info","message":"Channel Created","timestamp":"2019-03-14T17:54:44.310Z"}
|
||||||
|
{"message":"creating base client: 125","level":"info","timestamp":"2019-03-14T17:54:44.314Z"}
|
||||||
|
{"message":"client added to client manager: 125","level":"info","timestamp":"2019-03-14T17:54:44.315Z"}
|
||||||
|
{"message":"attempting to create client of type mhs, client id: 125...","level":"info","timestamp":"2019-03-14T17:54:44.318Z"}
|
||||||
|
{"data":{"client":"mhs","client_type":"site","user_id":125,"user_type":"user","channel":"test channel"},"level":"info","message":"MHS Client Created","timestamp":"2019-03-14T17:54:44.318Z"}
|
||||||
|
{"channelId":"default","level":"info","message":"Channel Created","timestamp":"2019-03-14T17:55:07.632Z"}
|
||||||
|
{"channelId":"test channel","level":"info","message":"Channel Created","timestamp":"2019-03-14T17:55:07.645Z"}
|
||||||
|
{"channelId":"test channel","clientId":125,"level":"info","message":"Added client to channel","timestamp":"2019-03-14T17:55:07.647Z"}
|
||||||
|
{"message":"client is same as sender: 125 - test message","level":"info","timestamp":"2019-03-14T17:55:07.649Z"}
|
||||||
|
{"message":"creating base channel: test channel","level":"info","timestamp":"2019-03-14T17:55:07.650Z"}
|
||||||
|
{"channelId":"test channel","level":"info","message":"Channel Created","timestamp":"2019-03-14T17:55:07.650Z"}
|
||||||
|
{"message":"Added channel to channel manager: test channel","level":"info","timestamp":"2019-03-14T17:55:07.650Z"}
|
||||||
|
{"message":"Channel already exists: test channel","level":"info","timestamp":"2019-03-14T17:55:07.651Z"}
|
||||||
|
{"channelId":"test channel","clientId":125,"level":"info","message":"Added client to channel","timestamp":"2019-03-14T17:55:07.651Z"}
|
||||||
|
{"message":"channel with id no channel does not exist.","level":"info","timestamp":"2019-03-14T17:55:07.652Z"}
|
||||||
|
{"message":"attempting to create channel of type mhs, channel id: test channel 2...","level":"info","timestamp":"2019-03-14T17:55:07.652Z"}
|
||||||
|
{"channelId":"test channel 2","level":"info","message":"Channel Created","timestamp":"2019-03-14T17:55:07.652Z"}
|
||||||
|
{"message":"creating base client: 125","level":"info","timestamp":"2019-03-14T17:55:07.654Z"}
|
||||||
|
{"message":"client added to client manager: 125","level":"info","timestamp":"2019-03-14T17:55:07.654Z"}
|
||||||
|
{"message":"attempting to create client of type mhs, client id: 125...","level":"info","timestamp":"2019-03-14T17:55:07.656Z"}
|
||||||
|
{"data":{"client":"mhs","client_type":"site","user_id":125,"user_type":"user","channel":"test channel"},"level":"info","message":"MHS Client Created","timestamp":"2019-03-14T17:55:07.656Z"}
|
||||||
|
{"channelId":"default","level":"info","message":"Channel Created","timestamp":"2019-03-14T17:57:28.441Z"}
|
||||||
|
{"channelId":"test channel","level":"info","message":"Channel Created","timestamp":"2019-03-14T17:57:28.452Z"}
|
||||||
|
{"channelId":"test channel","clientId":125,"level":"info","message":"Added client to channel","timestamp":"2019-03-14T17:57:28.454Z"}
|
||||||
|
{"message":"client is same as sender: 125 - test message","level":"info","timestamp":"2019-03-14T17:57:28.455Z"}
|
||||||
|
{"message":"creating base channel: test channel","level":"info","timestamp":"2019-03-14T17:57:28.456Z"}
|
||||||
|
{"channelId":"test channel","level":"info","message":"Channel Created","timestamp":"2019-03-14T17:57:28.456Z"}
|
||||||
|
{"message":"Added channel to channel manager: test channel","level":"info","timestamp":"2019-03-14T17:57:28.456Z"}
|
||||||
|
{"message":"Channel already exists: test channel","level":"info","timestamp":"2019-03-14T17:57:28.457Z"}
|
||||||
|
{"channelId":"test channel","clientId":125,"level":"info","message":"Added client to channel","timestamp":"2019-03-14T17:57:28.458Z"}
|
||||||
|
{"message":"channel with id no channel does not exist.","level":"info","timestamp":"2019-03-14T17:57:28.458Z"}
|
||||||
|
{"message":"attempting to create channel of type mhs, channel id: test channel 2...","level":"info","timestamp":"2019-03-14T17:57:28.459Z"}
|
||||||
|
{"channelId":"test channel 2","level":"info","message":"Channel Created","timestamp":"2019-03-14T17:57:28.459Z"}
|
||||||
|
{"message":"creating base client: 125","level":"info","timestamp":"2019-03-14T17:57:28.460Z"}
|
||||||
|
{"message":"client added to client manager: 125","level":"info","timestamp":"2019-03-14T17:57:28.460Z"}
|
||||||
|
{"message":"attempting to create client of type mhs, client id: 125...","level":"info","timestamp":"2019-03-14T17:57:28.462Z"}
|
||||||
|
{"data":{"client":"mhs","client_type":"site","user_id":125,"user_type":"user","channel":"test channel"},"level":"info","message":"MHS Client Created","timestamp":"2019-03-14T17:57:28.462Z"}
|
||||||
|
{"channelId":"default","level":"info","message":"Channel Created","timestamp":"2019-03-14T17:57:39.305Z"}
|
||||||
|
{"channelId":"test channel","level":"info","message":"Channel Created","timestamp":"2019-03-14T17:57:39.316Z"}
|
||||||
|
{"channelId":"test channel","clientId":125,"level":"info","message":"Added client to channel","timestamp":"2019-03-14T17:57:39.318Z"}
|
||||||
|
{"message":"client is same as sender: 125 - test message","level":"info","timestamp":"2019-03-14T17:57:39.319Z"}
|
||||||
|
{"message":"creating base channel: test channel","level":"info","timestamp":"2019-03-14T17:57:39.320Z"}
|
||||||
|
{"channelId":"test channel","level":"info","message":"Channel Created","timestamp":"2019-03-14T17:57:39.320Z"}
|
||||||
|
{"message":"Added channel to channel manager: test channel","level":"info","timestamp":"2019-03-14T17:57:39.320Z"}
|
||||||
|
{"message":"Channel already exists: test channel","level":"info","timestamp":"2019-03-14T17:57:39.321Z"}
|
||||||
|
{"channelId":"test channel","clientId":125,"level":"info","message":"Added client to channel","timestamp":"2019-03-14T17:57:39.322Z"}
|
||||||
|
{"message":"channel with id no channel does not exist.","level":"info","timestamp":"2019-03-14T17:57:39.322Z"}
|
||||||
|
{"message":"attempting to create channel of type mhs, channel id: test channel 2...","level":"info","timestamp":"2019-03-14T17:57:39.323Z"}
|
||||||
|
{"channelId":"test channel 2","level":"info","message":"Channel Created","timestamp":"2019-03-14T17:57:39.323Z"}
|
||||||
|
{"message":"creating base client: 125","level":"info","timestamp":"2019-03-14T17:57:39.324Z"}
|
||||||
|
{"message":"client added to client manager: 125","level":"info","timestamp":"2019-03-14T17:57:39.324Z"}
|
||||||
|
{"message":"attempting to create client of type mhs, client id: 125...","level":"info","timestamp":"2019-03-14T17:57:39.326Z"}
|
||||||
|
{"data":{"client":"mhs","client_type":"site","user_id":125,"user_type":"user","channel":"test channel"},"level":"info","message":"MHS Client Created","timestamp":"2019-03-14T17:57:39.327Z"}
|
||||||
|
{"channelId":"default","level":"info","message":"Channel Created","timestamp":"2019-03-14T18:12:48.664Z"}
|
||||||
|
{"channelId":"test channel","level":"info","message":"Channel Created","timestamp":"2019-03-14T18:12:48.677Z"}
|
||||||
|
{"channelId":"test channel","clientId":125,"level":"info","message":"Added client to channel","timestamp":"2019-03-14T18:12:48.679Z"}
|
||||||
|
{"message":"client is same as sender: 125 - test message","level":"info","timestamp":"2019-03-14T18:12:48.680Z"}
|
||||||
|
{"message":"creating base channel: test channel","level":"info","timestamp":"2019-03-14T18:12:48.682Z"}
|
||||||
|
{"channelId":"test channel","level":"info","message":"Channel Created","timestamp":"2019-03-14T18:12:48.682Z"}
|
||||||
|
{"message":"Added channel to channel manager: test channel","level":"info","timestamp":"2019-03-14T18:12:48.682Z"}
|
||||||
|
{"message":"Channel already exists: test channel","level":"info","timestamp":"2019-03-14T18:12:48.682Z"}
|
||||||
|
{"channelId":"test channel","clientId":125,"level":"info","message":"Added client to channel","timestamp":"2019-03-14T18:12:48.683Z"}
|
||||||
|
{"message":"channel with id no channel does not exist.","level":"info","timestamp":"2019-03-14T18:12:48.683Z"}
|
||||||
|
{"message":"attempting to create channel of type mhs, channel id: test channel 2...","level":"info","timestamp":"2019-03-14T18:12:48.684Z"}
|
||||||
|
{"channelId":"test channel 2","level":"info","message":"Channel Created","timestamp":"2019-03-14T18:12:48.684Z"}
|
||||||
|
{"message":"client removed from channel - channel: test channel, client: 125","level":"info","timestamp":"2019-03-14T18:12:48.685Z"}
|
||||||
|
{"message":"creating base client: 125","level":"info","timestamp":"2019-03-14T18:12:48.687Z"}
|
||||||
|
{"message":"client added to client manager: 125","level":"info","timestamp":"2019-03-14T18:12:48.687Z"}
|
||||||
|
{"message":"attempting to create client of type mhs, client id: 125...","level":"info","timestamp":"2019-03-14T18:12:48.688Z"}
|
||||||
|
{"data":{"client":"mhs","client_type":"site","user_id":125,"user_type":"user","channel":"test channel"},"level":"info","message":"MHS Client Created","timestamp":"2019-03-14T18:12:48.689Z"}
|
||||||
|
{"channelId":"default","level":"info","message":"Channel Created","timestamp":"2019-03-14T18:16:35.694Z"}
|
||||||
|
{"channelId":"test channel","level":"info","message":"Channel Created","timestamp":"2019-03-14T18:16:35.705Z"}
|
||||||
|
{"channelId":"test channel","clientId":125,"level":"info","message":"Added client to channel","timestamp":"2019-03-14T18:16:35.707Z"}
|
||||||
|
{"message":"client is same as sender: 125 - test message","level":"info","timestamp":"2019-03-14T18:16:35.708Z"}
|
||||||
|
{"message":"creating base channel: test channel","level":"info","timestamp":"2019-03-14T18:16:35.710Z"}
|
||||||
|
{"channelId":"test channel","level":"info","message":"Channel Created","timestamp":"2019-03-14T18:16:35.710Z"}
|
||||||
|
{"message":"Added channel to channel manager: test channel","level":"info","timestamp":"2019-03-14T18:16:35.710Z"}
|
||||||
|
{"message":"Channel already exists: test channel","level":"info","timestamp":"2019-03-14T18:16:35.711Z"}
|
||||||
|
{"channelId":"test channel","clientId":125,"level":"info","message":"Added client to channel","timestamp":"2019-03-14T18:16:35.711Z"}
|
||||||
|
{"message":"channel with id no channel does not exist.","level":"info","timestamp":"2019-03-14T18:16:35.712Z"}
|
||||||
|
{"message":"attempting to create channel of type mhs, channel id: test channel 2...","level":"info","timestamp":"2019-03-14T18:16:35.712Z"}
|
||||||
|
{"channelId":"test channel 2","level":"info","message":"Channel Created","timestamp":"2019-03-14T18:16:35.712Z"}
|
||||||
|
{"message":"client removed from channel - channel: test channel, client: 125","level":"info","timestamp":"2019-03-14T18:16:35.713Z"}
|
||||||
|
{"message":"creating base client: 125","level":"info","timestamp":"2019-03-14T18:16:35.714Z"}
|
||||||
|
{"message":"client added to client manager: 125","level":"info","timestamp":"2019-03-14T18:16:35.715Z"}
|
||||||
|
{"message":"attempting to create client of type mhs, client id: 125...","level":"info","timestamp":"2019-03-14T18:16:35.716Z"}
|
||||||
|
{"data":{"client":"mhs","client_type":"site","user_id":125,"user_type":"user","channel":"test channel"},"level":"info","message":"MHS Client Created","timestamp":"2019-03-14T18:16:35.716Z"}
|
||||||
|
@ -4,3 +4,24 @@
|
|||||||
{"channelId":"test channel","clientId":125,"level":"info","message":"Client already exits in channel","timestamp":"2019-03-14T14:13:06.734Z"}
|
{"channelId":"test channel","clientId":125,"level":"info","message":"Client already exits in channel","timestamp":"2019-03-14T14:13:06.734Z"}
|
||||||
{"code":"MODULE_NOT_FOUND","level":"info","timestamp":"2019-03-14T14:13:06.736Z"}
|
{"code":"MODULE_NOT_FOUND","level":"info","timestamp":"2019-03-14T14:13:06.736Z"}
|
||||||
{"code":"MODULE_NOT_FOUND","level":"info","timestamp":"2019-03-14T14:13:06.741Z"}
|
{"code":"MODULE_NOT_FOUND","level":"info","timestamp":"2019-03-14T14:13:06.741Z"}
|
||||||
|
{"channelId":"test channel","clientId":125,"level":"info","message":"Client already exits in channel","timestamp":"2019-03-14T17:52:15.030Z"}
|
||||||
|
{"code":"MODULE_NOT_FOUND","level":"info","timestamp":"2019-03-14T17:52:15.032Z"}
|
||||||
|
{"code":"MODULE_NOT_FOUND","level":"info","timestamp":"2019-03-14T17:52:15.037Z"}
|
||||||
|
{"channelId":"test channel","clientId":125,"level":"info","message":"Client already exits in channel","timestamp":"2019-03-14T17:54:44.305Z"}
|
||||||
|
{"code":"MODULE_NOT_FOUND","level":"info","timestamp":"2019-03-14T17:54:44.307Z"}
|
||||||
|
{"code":"MODULE_NOT_FOUND","level":"info","timestamp":"2019-03-14T17:54:44.314Z"}
|
||||||
|
{"channelId":"test channel","clientId":125,"level":"info","message":"Client already exits in channel","timestamp":"2019-03-14T17:55:07.648Z"}
|
||||||
|
{"code":"MODULE_NOT_FOUND","level":"info","timestamp":"2019-03-14T17:55:07.650Z"}
|
||||||
|
{"code":"MODULE_NOT_FOUND","level":"info","timestamp":"2019-03-14T17:55:07.654Z"}
|
||||||
|
{"channelId":"test channel","clientId":125,"level":"info","message":"Client already exits in channel","timestamp":"2019-03-14T17:57:28.454Z"}
|
||||||
|
{"code":"MODULE_NOT_FOUND","level":"info","timestamp":"2019-03-14T17:57:28.456Z"}
|
||||||
|
{"code":"MODULE_NOT_FOUND","level":"info","timestamp":"2019-03-14T17:57:28.460Z"}
|
||||||
|
{"channelId":"test channel","clientId":125,"level":"info","message":"Client already exits in channel","timestamp":"2019-03-14T17:57:39.318Z"}
|
||||||
|
{"code":"MODULE_NOT_FOUND","level":"info","timestamp":"2019-03-14T17:57:39.320Z"}
|
||||||
|
{"code":"MODULE_NOT_FOUND","level":"info","timestamp":"2019-03-14T17:57:39.324Z"}
|
||||||
|
{"channelId":"test channel","clientId":125,"level":"info","message":"Client already exits in channel","timestamp":"2019-03-14T18:12:48.680Z"}
|
||||||
|
{"code":"MODULE_NOT_FOUND","level":"info","timestamp":"2019-03-14T18:12:48.681Z"}
|
||||||
|
{"code":"MODULE_NOT_FOUND","level":"info","timestamp":"2019-03-14T18:12:48.686Z"}
|
||||||
|
{"channelId":"test channel","clientId":125,"level":"info","message":"Client already exits in channel","timestamp":"2019-03-14T18:16:35.707Z"}
|
||||||
|
{"code":"MODULE_NOT_FOUND","level":"info","timestamp":"2019-03-14T18:16:35.710Z"}
|
||||||
|
{"code":"MODULE_NOT_FOUND","level":"info","timestamp":"2019-03-14T18:16:35.714Z"}
|
||||||
|
@ -64,6 +64,27 @@ class ChannelManager {
|
|||||||
return new ChannelBase(data.channel);
|
return new ChannelBase(data.channel);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
removeClientFromChannel(client_id: number, channel_id: string) {
|
||||||
|
var index: number = 0;
|
||||||
|
|
||||||
|
for (let channel of this.channels) {
|
||||||
|
if (channel.id == channel_id) {
|
||||||
|
this.channels.splice(index, 1);
|
||||||
|
if (channel.removeClient(client_id)) {
|
||||||
|
logger.accessLog.info(`client removed from channel - channel: ${channel_id}, client: ${client_id}`);
|
||||||
|
return true;
|
||||||
|
} else {
|
||||||
|
logger.errorLog.info(`client not removed from channel, or doesn't exist in channel - channel: ${channel_id}, client: ${client_id}`);
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
export default ChannelManager;
|
export default ChannelManager;
|
||||||
|
@ -33,6 +33,21 @@ class ChannelBase {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
removeClient(id: number) {
|
||||||
|
var index: number = 0;
|
||||||
|
|
||||||
|
for (let client of this.clients) {
|
||||||
|
if (client.id == id) {
|
||||||
|
this.clients.splice(index, 1);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
broadcastMessage(from: ClientBase|MHSClient|null, message: string) {
|
broadcastMessage(from: ClientBase|MHSClient|null, message: string) {
|
||||||
for (let client of this.clients) {
|
for (let client of this.clients) {
|
||||||
if (client != from) {
|
if (client != from) {
|
||||||
|
@ -39,4 +39,14 @@ describe('ChannelBase', function () {
|
|||||||
var result = channel.broadcastMessage(client, 'test message');
|
var result = channel.broadcastMessage(client, 'test message');
|
||||||
expect(result.status).to.be.equal('success');
|
expect(result.status).to.be.equal('success');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('should be able to remove client from channel', function () {
|
||||||
|
var result = channel.removeClient(client.id);
|
||||||
|
expect(result).to.be.equal(true);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should not be able to remove client that doesnn\'t exist from channel', function () {
|
||||||
|
var result = channel.removeClient(126);
|
||||||
|
expect(result).to.be.equal(false);
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
@ -55,4 +55,19 @@ describe('ChannelManager', function () {
|
|||||||
var result = channelManager.createByChannelType(data2);
|
var result = channelManager.createByChannelType(data2);
|
||||||
expect(result.id).to.be.equal('test channel 2');
|
expect(result.id).to.be.equal('test channel 2');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('should remove client from channel', function () {
|
||||||
|
var result = channelManager.removeClientFromChannel(client.id , 'test channel');
|
||||||
|
expect(result).to.be.equal(true);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should be unable to remove a client that doesn\'t exit from channel', function () {
|
||||||
|
var result = channelManager.removeClientFromChannel(126 , 'test channel');
|
||||||
|
expect(result).to.be.equal(false);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should be unable to remove a client from a channel that doesn\'t exist', function () {
|
||||||
|
var result = channelManager.removeClientFromChannel(client.id , 'test channel 3');
|
||||||
|
expect(result).to.be.equal(false);
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
@ -0,0 +1,29 @@
|
|||||||
|
import * as WebSocket from 'ws';
|
||||||
|
import ClientBase from '../clients/clientBase';
|
||||||
|
|
||||||
|
var expect = require('chai').expect;
|
||||||
|
var assert = require('chai').assert;
|
||||||
|
var sinon = require('sinon');
|
||||||
|
|
||||||
|
var name: string = 'test channel';
|
||||||
|
var data: any = { 'client': 'test', 'client_type':'site', 'user_id': 125, 'user_type': 'user', 'channel': name }
|
||||||
|
var WebSocketClient = require('websocket').client;
|
||||||
|
var wsClient = new WebSocketClient();
|
||||||
|
var client: ClientBase = new ClientBase(data, wsClient);
|
||||||
|
|
||||||
|
describe('ClientBase', function () {
|
||||||
|
it('should get client data', function () {
|
||||||
|
var result = client.getData();
|
||||||
|
expect(result.user_id).to.be.equal(125);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should get client type', function () {
|
||||||
|
var result = client.clientType();
|
||||||
|
expect(result).to.be.equal('test');
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should get client object type', function () {
|
||||||
|
var result = client.type();
|
||||||
|
expect(result).to.be.equal('site');
|
||||||
|
});
|
||||||
|
});
|
Loading…
x
Reference in New Issue
Block a user