machinomy
Version:
Micropayments powered by Ethereum
38 lines • 1.34 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const sinon = require("sinon");
const expect = require("expect");
const NedbDatastore_1 = require("./NedbDatastore");
const EngineNedb_1 = require("./EngineNedb");
const tmpFileName_1 = require("../../util/tmpFileName");
describe('EngineNedb', () => {
let engine;
let removeStub;
beforeEach(async () => {
removeStub = sinon.stub(NedbDatastore_1.default.prototype, 'remove')
.callsFake((query, options) => {
return Promise.resolve(1);
});
let path = await tmpFileName_1.tmpFileName();
engine = new EngineNedb_1.default(path, true);
});
afterEach(() => {
removeStub.restore();
});
describe('drop', () => {
it('executes a multi remove', async () => {
await engine.drop();
expect(removeStub.callCount).toBe(1);
expect(removeStub.calledWith({}, { multi: true })).toBe(true);
});
});
describe('exec', () => {
it('provides a client to the callback', async () => {
await engine.exec(client => {
expect(client instanceof NedbDatastore_1.default).toBe(true);
return Promise.resolve();
});
});
});
});
//# sourceMappingURL=EngineNedb.test.js.map