/
resolve-tests.js
109 lines (92 loc) · 2.37 KB
/
resolve-tests.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
96
97
98
99
100
101
102
103
104
105
106
107
108
109
// Write your tests here!
// Here is an example.
var obj = {
'part1' : {
'name': 'Part 1',
'size': 20,
'qty' : 50
},
'part2' : {
'name': 'Part 2',
'size': 15,
'qty' : 60
},
'part3' : [
{
'name': 'Part 3A',
'size': 10,
'qty' : 20
}, {
'name': 'Part 3B',
'size': 5,
'qty' : 20
}, {
'name': 'Part 3C',
'size': 7.5,
'qty' : 20
}
],
'part4': {}
};
Tinytest.add('resolve part1.name', function (test) {
var expected = "Part 1",
actual
actual = Util.resolve(obj, 'part1.name')
test.equal(actual, expected);
});
Tinytest.add('resolve part2.qty', function (test) {
var expected = 60,
actual
actual = Util.resolve(obj, 'part2.qty')
test.equal(actual, expected);
});
Tinytest.add('resolve part3[0].name', function (test) {
var expected = "Part 3A",
actual
actual = Util.resolve(obj, 'part3[0].name')
test.equal(actual, expected);
});
Tinytest.add('resolve part3[4].name => undefined', function (test) {
var expected = undefined,
actual
actual = Util.resolve(obj, 'part3[4].name')
test.equal(actual, expected);
});
Tinytest.add('resolve part5[0].name => undefined', function (test) {
var expected = undefined,
actual
actual = Util.resolve(obj, 'part5[0].name')
test.equal(actual, expected);
});
Tinytest.add('resolve set part2.name = Mary', function (test) {
var expected = "Mary",
actual
actual = Util.resolve(obj, 'part2.name', "Mary")
test.equal(actual, expected);
actual = Util.resolve(obj, 'part2.name')
test.equal(actual, expected);
});
Tinytest.add('resolve set part3[1].name = 3B', function (test) {
var expected = "3B",
actual
actual = Util.resolve(obj, 'part3[1].name', "3B")
test.equal(actual, expected);
actual = Util.resolve(obj, 'part3[1].name')
test.equal(actual, expected);
});
Tinytest.add('resolve set part4.name = Mary', function (test) {
var expected = "Mary",
actual
actual = Util.resolve(obj, 'part4.name', "Mary")
test.equal(actual, expected);
actual = Util.resolve(obj, 'part4.name')
test.equal(actual, expected);
});
Tinytest.add('resolve set part4.arr = [1, 2]', function (test) {
var expected = [1, 2],
actual
actual = Util.resolve(obj, 'part4.arr', [1, 2])
test.equal(actual, expected);
actual = Util.resolve(obj, 'part4.arr')
test.equal(actual, expected);
});