Files
Shifted/node_modules/memoizerific/tests/metadata.js
2026-02-10 01:14:19 +00:00

58 lines
1.3 KiB
JavaScript

var Memoizerific = require('../src/memoizerific');
describe("wasMemoized", () => {
var memoizedFn;
beforeEach(function() {
memoizedFn = Memoizerific(50)(function(arg1, arg2, arg3) {
return arg1.num * arg2.num;
});
});
it("should be false before any invocations", () => {
expect(memoizedFn.wasMemoized).toEqual(false);
});
it("should be false after one invocation", () => {
memoizedFn(1, 2, 3);
expect(memoizedFn.wasMemoized).toEqual(false);
});
it("should be true", () => {
memoizedFn(1, 2, 3);
memoizedFn(1, 2, 3);
expect(memoizedFn.wasMemoized).toEqual(true);
});
it("should be false", () => {
memoizedFn(1, 2, 3);
memoizedFn(1, 2, 3);
memoizedFn(4, 5, 6);
expect(memoizedFn.wasMemoized).toEqual(false);
});
});
describe("limit", () => {
var memoizedFn;
beforeEach(function() {
memoizedFn = Memoizerific(43)(function(arg1, arg2, arg3) {
return arg1.num * arg2.num;
});
});
it("should be correct after no invocations", () => {
expect(memoizedFn.limit).toEqual(43);
});
it("should be correct after one invocation", () => {
memoizedFn(1, 2, 3);
expect(memoizedFn.limit).toEqual(43);
});
it("should be correct after multiple invocations", () => {
memoizedFn(1, 2, 3);
memoizedFn(4, 5, 6);
expect(memoizedFn.limit).toEqual(43);
});
});