UNPKG

893 BJavaScriptView Raw
1const objectDeepKeys = require('./object-deep-keys')
2
3describe('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})