mirror of
https://github.com/dreamstarsky/runbin.git
synced 2026-05-15 22:33:09 +00:00
68 lines
3.5 KiB
JavaScript
68 lines
3.5 KiB
JavaScript
"use strict";
|
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
};
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
var _1 = require(".");
|
|
var RequestManager_1 = __importDefault(require("./RequestManager"));
|
|
var EventEmitterTransport_1 = __importDefault(require("./transports/EventEmitterTransport"));
|
|
var events_1 = require("events");
|
|
var eventEmitter_1 = require("./__mocks__/eventEmitter");
|
|
var requestData_1 = require("./__mocks__/requestData");
|
|
describe("client-js", function () {
|
|
it("can be constructed", function () {
|
|
var emitter = new events_1.EventEmitter();
|
|
var c = new _1.Client(new RequestManager_1.default([new EventEmitterTransport_1.default(emitter, "from1", "to1")]));
|
|
expect(!!c).toEqual(true);
|
|
});
|
|
it("has a request method that returns a promise", function () {
|
|
var emitter = new events_1.EventEmitter();
|
|
var c = new _1.Client(new RequestManager_1.default([new EventEmitterTransport_1.default(emitter, "from1", "to1")]));
|
|
expect(typeof c.request).toEqual("function");
|
|
expect(typeof c.request({ method: "my_method" }).then).toEqual("function");
|
|
});
|
|
it("has a notify method that returns a promise", function () {
|
|
var emitter = new events_1.EventEmitter();
|
|
var c = new _1.Client(new RequestManager_1.default([new EventEmitterTransport_1.default(emitter, "from1", "to1")]));
|
|
expect(typeof c.request).toEqual("function");
|
|
expect(typeof c.notify({ method: "my_method" }).then).toEqual("function");
|
|
});
|
|
it("can recieve notifications", function (done) {
|
|
var emitter = new events_1.EventEmitter();
|
|
var c = new _1.Client(new RequestManager_1.default([new EventEmitterTransport_1.default(emitter, "from1", "to1")]));
|
|
eventEmitter_1.addMockServerTransport(emitter, "from1", "to1://asdf/rpc-notification");
|
|
c.onNotification(function () { return done(); });
|
|
emitter.emit("to1", JSON.stringify(requestData_1.generateMockNotificationRequest("foo", ["bar"])));
|
|
});
|
|
it("can register error and subscription handlers", function () {
|
|
var emitter = new events_1.EventEmitter();
|
|
var c = new _1.Client(new RequestManager_1.default([new EventEmitterTransport_1.default(emitter, "from1", "to1")]));
|
|
// tslint:disable-next-line:no-empty
|
|
c.onError(function (err) { });
|
|
// tslint:disable-next-line:no-empty
|
|
c.onNotification(function (data) { });
|
|
});
|
|
describe("startBatch", function () {
|
|
it("calls startBatch", function () {
|
|
var emitter = new events_1.EventEmitter();
|
|
var rm = new RequestManager_1.default([new EventEmitterTransport_1.default(emitter, "from1", "to1")]);
|
|
var c = new _1.Client(rm);
|
|
c.startBatch();
|
|
// expect(mockedRequestManager.mock.instances[0].startBatch).toHaveBeenCalled();
|
|
});
|
|
});
|
|
describe("can call stopBatch", function () {
|
|
var emitter = new events_1.EventEmitter();
|
|
var rm = new RequestManager_1.default([new EventEmitterTransport_1.default(emitter, "from1", "to1")]);
|
|
var c = new _1.Client(rm);
|
|
c.startBatch();
|
|
c.stopBatch();
|
|
});
|
|
describe("can close", function () {
|
|
var emitter = new events_1.EventEmitter();
|
|
var rm = new RequestManager_1.default([new EventEmitterTransport_1.default(emitter, "from1", "to1")]);
|
|
var c = new _1.Client(rm);
|
|
c.close();
|
|
});
|
|
});
|