Files
lodash/test/update-methods.spec.ts
2023-09-16 14:47:50 -07:00

26 lines
849 B
TypeScript

import assert from 'node:assert';
import lodashStable from 'lodash';
import { _ } from './utils';
describe('update methods', () => {
lodashStable.each(['update', 'updateWith'], (methodName) => {
const func = _[methodName],
oldValue = 1;
it(`\`_.${methodName}\` should invoke \`updater\` with the value on \`path\` of \`object\``, () => {
const object = { a: [{ b: { c: oldValue } }] },
expected = oldValue + 1;
lodashStable.each(['a[0].b.c', ['a', '0', 'b', 'c']], (path) => {
func(object, path, (n) => {
assert.strictEqual(n, oldValue);
return ++n;
});
assert.strictEqual(object.a[0].b.c, expected);
object.a[0].b.c = oldValue;
});
});
});
});