Updated flattenObject tests
This commit is contained in:
@ -1,11 +1,7 @@
|
||||
const flattenObject = (obj, prefix = '') =>
|
||||
Object.keys(obj).reduce((acc, k) => {
|
||||
const pre = prefix.length ? (prefix + '.') : '';
|
||||
if (typeof obj[k] === 'object')
|
||||
Object.assign(
|
||||
acc,
|
||||
flattenObject(obj[k], pre + k)
|
||||
);
|
||||
const pre = prefix.length ? prefix + '.' : '';
|
||||
if (typeof obj[k] === 'object') Object.assign(acc, flattenObject(obj[k], pre + k));
|
||||
else acc[pre + k] = obj[k];
|
||||
return acc;
|
||||
}, {});
|
||||
|
||||
@ -6,6 +6,7 @@ test('Testing flattenObject', (t) => {
|
||||
//Please go to https://github.com/substack/tape
|
||||
t.true(typeof flattenObject === 'function', 'flattenObject is a Function');
|
||||
t.deepEqual(flattenObject({ a: { b: { c: 1 } }, d: 1 }), { 'a.b.c': 1, d: 1 }, 'Flattens an object with the paths for keys');
|
||||
t.deepEqual(flattenObject([0,1,[2,[1]],1]), { 0: 0, 1: 1, 3: 1, '2.0': 2, '2.1.0': 1 }, 'Works with arrays');
|
||||
//t.deepEqual(flattenObject(args..), 'Expected');
|
||||
//t.equal(flattenObject(args..), 'Expected');
|
||||
//t.false(flattenObject(args..), 'Expected');
|
||||
|
||||
@ -6,7 +6,7 @@ test('Testing shuffle', (t) => {
|
||||
//Please go to https://github.com/substack/tape
|
||||
t.true(typeof shuffle === 'function', 'shuffle is a Function');
|
||||
const arr = [1,2,3,4,5,6];
|
||||
t.notDeepEqual(shuffle(arr), arr, 'Shuffles the array');
|
||||
//t.notDeepEqual(shuffle(arr), arr, 'Shuffles the array'); Does not work always (got a test failing once)
|
||||
//t.deepEqual(shuffle(args..), 'Expected');
|
||||
//t.equal(shuffle(args..), 'Expected');
|
||||
//t.false(shuffle(args..), 'Expected');
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
Test log for: Wed Feb 07 2018 11:29:34 GMT+0200 (GTB Standard Time)
|
||||
Test log for: Wed Feb 07 2018 11:34:35 GMT+0200 (GTB Standard Time)
|
||||
|
||||
> 30-seconds-of-code@0.0.1 test G:\My Files\git Repositories\30-seconds-of-code
|
||||
> tape test/**/*.test.js | tap-spec
|
||||
@ -416,6 +416,7 @@ Test log for: Wed Feb 07 2018 11:29:34 GMT+0200 (GTB Standard Time)
|
||||
|
||||
√ flattenObject is a Function
|
||||
√ Flattens an object with the paths for keys
|
||||
√ Works with arrays
|
||||
|
||||
Testing flip
|
||||
|
||||
@ -1740,8 +1741,8 @@ Test log for: Wed Feb 07 2018 11:29:34 GMT+0200 (GTB Standard Time)
|
||||
√ Works with multiple promises
|
||||
|
||||
|
||||
total: 841
|
||||
passing: 841
|
||||
total: 842
|
||||
passing: 842
|
||||
duration: 2.4s
|
||||
|
||||
|
||||
|
||||
@ -6,9 +6,7 @@ Object.assign(
|
||||
acc,
|
||||
JSON.parse(
|
||||
'{' +
|
||||
keys
|
||||
.map((v, i) => (i !== keys.length - 1 ? `"${v}":{` : `"${v}":`))
|
||||
.join('') +
|
||||
keys.map((v, i) => (i !== keys.length - 1 ? `"${v}":{` : `"${v}":`)).join('') +
|
||||
obj[k] +
|
||||
'}'.repeat(keys.length)
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user