1 | const objectDeepKeys = require('./object-deep-keys')
|
2 |
|
3 | describe('objectDeepKeys', () => {
|
4 | test('scalars', () => {
|
5 | expect(objectDeepKeys('string')).toEqual([])
|
6 | expect(objectDeepKeys(10)).toEqual([])
|
7 | expect(objectDeepKeys(true)).toEqual([])
|
8 | })
|
9 |
|
10 | test('arrays', () => {
|
11 | expect(objectDeepKeys(['a', 'b', 'c'])).toEqual([])
|
12 | expect(objectDeepKeys([{ hello: 'world' }])).toEqual([])
|
13 | })
|
14 |
|
15 | test('simple objects', () => {
|
16 | expect(objectDeepKeys({ a: 1, b: 2 }).sort()).toEqual(['a', 'b'].sort())
|
17 | })
|
18 |
|
19 | test('nested objects', () => {
|
20 | expect(objectDeepKeys({ a: { b: 'c' }, d: 'e' }).sort()).toEqual(
|
21 | ['a.b', 'd'].sort()
|
22 | )
|
23 | expect(objectDeepKeys({ a: { b: 'c' } })).toEqual(['a.b'])
|
24 | })
|
25 |
|
26 | test('nested scalars and arrays', () => {
|
27 | expect(objectDeepKeys({ a: { b: [{ c: 'd' }], e: false } }).sort()).toEqual(
|
28 | ['a.b', 'a.e'].sort()
|
29 | )
|
30 | })
|
31 | })
|