UNPKG

realm-object-server-enterprise

Version:

Realm Object Server Enterprise

67 lines 2.75 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); require("mocha"); const chai_1 = require("chai"); const chai = require("chai"); const chaiAsPromised = require("chai-as-promised"); chai.use(chaiAsPromised); const sinon = require("sinon"); sinon.assert.expose(chai.assert, { prefix: "" }); const axon = require("axon"); const realm_object_server_1 = require("realm-object-server"); const RemoteLogService_1 = require("./RemoteLogService"); class MockLogger extends realm_object_server_1.Logger { constructor() { super(); } log(level, msg, ctx) { this.emit("message", level, msg, ctx); } } describe("RemoteLogService", () => { let logger; let receiver; let sender; beforeEach(() => __awaiter(this, void 0, void 0, function* () { logger = new MockLogger(); receiver = new RemoteLogService_1.RemoteLogService({ host: "127.0.0.1", port: 9000 }); receiver.setLogger(logger); yield receiver.start(); yield new Promise((resolve, reject) => { sender = new axon.socket("push"); sender.connect("tcp://127.0.0.1:9000"); sender.once("connect", () => { resolve(); }); }); })); afterEach(() => __awaiter(this, void 0, void 0, function* () { sender.close(); yield receiver.stop(); logger.close(); })); it("should accept logs from the sender", () => __awaiter(this, void 0, void 0, function* () { const promise = new Promise((resolve, reject) => { const callback = (level, msg, ctx) => { if (level === "error" && msg === "my message") { chai_1.assert.equal(ctx.via, "remotelog"); chai_1.assert.equal(ctx.my_key, "my_value"); logger.removeListener("message", callback); resolve(); } }; logger.on("message", callback); }); sender.send("error", "my message", { my_key: "my_value" }); yield promise; })); }); //# sourceMappingURL=RemoteLogService.spec.js.map