forked from alexcrist/json-to-pretty-yaml
-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.test.js
95 lines (90 loc) · 1.81 KB
/
index.test.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
const YAML = require('./index.js');
let title;
let input;
let expected;
const runTest = (title, input, expected) => {
test(title, () => {
expect(YAML.stringify(input)).toBe(expected);
});
};
runTest('basic conversion',
{
a: 1,
b: 'yes',
c: true
},
(
'a: 1' + '\n' +
'b: "yes"' + '\n' +
'c: true' + '\n'
)
);
runTest('basic arrays',
{
a: [ 1, 2, 3 ],
b: [ 'yes', 'no' ],
c: [ true, false ]
},
(
'a:' + '\n' +
' - 1' + '\n' +
' - 2' + '\n' +
' - 3' + '\n' +
'b:' + '\n' +
' - "yes"' + '\n' +
' - "no"' + '\n' +
'c:' + '\n' +
' - true' + '\n' +
' - false' + '\n'
)
);
runTest('nested objects',
{
a: {
b: {
c: {
d: 1
}
}
}
},
(
'a:' + '\n' +
' b:' + '\n' +
' c:' + '\n' +
' d: 1' + '\n'
)
);
runTest('arrays of objects',
{
a: [
{
b: {
c: [ 1, 2, 3 ]
}
},
{
d: {
e: 'yee'
},
f: {
g: 'ok'
},
h: 12
}
]
},
(
'a:' + '\n' +
' - b:' + '\n' +
' c:' + '\n' +
' - 1' + '\n' +
' - 2' + '\n' +
' - 3' + '\n' +
' - d:' + '\n' +
' e: "yee"' + '\n' +
' f:' + '\n' +
' g: "ok"' + '\n' +
' h: 12' + '\n'
)
);