bitburner-filesync/test/fileWatch.spec.ts
Heinous Tugboat bc39f10a8e Prettier pass
2022-10-01 10:54:26 -04:00

29 lines
950 B
TypeScript

import { setupWatch } from "../src/fileWatch";
import { expect } from "chai";
import { stub, createStubInstance } from "sinon";
import CheapWatch from "cheap-watch";
import signal from "signal-js";
describe("fileWatch", () => {
describe("setupWatch", () => {
it("should exist", () => {
expect(setupWatch).to.exist;
});
it("should instantiate and initialize CheapWatch", async () => {
const consoleStub = stub(console, "log");
const watchInstance = createStubInstance(CheapWatch);
const watchConstructorStub = stub().returns(watchInstance);
Object.setPrototypeOf(CheapWatch, watchConstructorStub);
const result = await setupWatch(signal);
expect(result).to.eq(watchInstance);
expect(watchConstructorStub).to.have.been.called;
expect(watchInstance.init).to.have.been.called;
expect(watchInstance.on).to.have.been.calledTwice;
consoleStub.restore();
});
});
});