nope/lib/RpcManager/NopeRpcManager.spec.ts

53 lines
1.4 KiB
TypeScript

import { assert } from "chai";
import "chai/register-should";
import { beforeEach, describe, it } from "mocha";
import { getLayer } from "../communication/getLayer.nodejs";
import { NopeObservable } from "../observables/nopeObservable";
import { NopeRpcManager } from "./NopeRpcManager";
describe("NopeRpcManager", function () {
// Describe the required Test:
let manager = new NopeRpcManager(
{
communicator: getLayer("event", "", "debug"),
},
() => new NopeObservable()
);
beforeEach(() => {
// Create a new Observer
manager = new NopeRpcManager(
{
communicator: getLayer("event", "", "debug"),
},
() => new NopeObservable()
);
});
describe("serviceHandeling", function () {
const helloWorld = async (greetings: string) => {
return "Hello " + greetings + "!";
};
it("registering service", (done) => {
const r = manager.registerCallback(helloWorld);
done();
});
it("call service", (done) => {
const r = manager.registerCallback(helloWorld, {
id: "helloworld",
});
manager.performCall("helloworld", ["Mocha"]).then(done).catch(done);
});
it("call service via methodInterface", (done) => {
const r = manager.registerCallback(helloWorld, {
id: "helloworld",
});
manager.methodInterface.helloworld("Mocha").then(done).catch(done);
});
});
});