You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Mocha.test("let binding captures record rest value",()=>{
44
+
letrest=((({name, ...__rest})=>__rest))({
45
+
name: "test",
46
+
version: "1.0",
47
+
debug: true
48
+
});
49
+
Test_utils.eq("File \"record_rest_test.res\", line 83, characters 7-14","test","test");
50
+
Test_utils.eq("File \"record_rest_test.res\", line 84, characters 7-14",rest,{
51
+
version: "1.0",
52
+
debug: true
53
+
});
54
+
});
55
+
Mocha.test("match arm returns the named field and the rest record",()=>Test_utils.eq("File \"record_rest_test.res\", line 89, characters 6-13",describeConfig({
56
+
name: "match",
57
+
version: "2.0",
58
+
debug: false
59
+
}),[
60
+
"match",
61
+
{
62
+
version: "2.0",
63
+
debug: false
64
+
}
65
+
]));
66
+
Mocha.test("function parameter destructuring keeps the named field",()=>Test_utils.eq("File \"record_rest_test.res\", line 96, characters 7-14",getName({
67
+
name: "param",
56
68
version: "3.0",
57
69
debug: true
58
-
}
70
+
}),"param"));
71
+
Mocha.test("optional overlap keeps the remaining fields in the rest object",()=>{
72
+
letonClick=()=>{};
73
+
letrest=extractClassName({
74
+
className: "btn",
75
+
style: "bold",
76
+
onClick: onClick
77
+
});
78
+
Test_utils.eq("File \"record_rest_test.res\", line 102, characters 7-14",rest,{
79
+
style: "bold",
80
+
onClick: onClick
81
+
});
82
+
});
83
+
Mocha.test("polymorphic rest captures the value field",()=>{
84
+
letintRest=((({id, ...__rest})=>__rest))({
85
+
id: "1",
86
+
value: 42
87
+
});
88
+
Test_utils.eq("File \"record_rest_test.res\", line 107, characters 7-14","1","1");
89
+
Test_utils.eq("File \"record_rest_test.res\", line 108, characters 7-14",intRest,{
90
+
value: 42
91
+
});
92
+
Test_utils.eq("File \"record_rest_test.res\", line 109, characters 7-14",((({id, ...__rest})=>__rest))({
93
+
id: "2",
94
+
value: "hello"
95
+
}),{
96
+
value: "hello"
97
+
});
98
+
});
99
+
Mocha.test("tuple nested record rest is initialized",()=>Test_utils.eq("File \"record_rest_test.res\", line 114, characters 6-13",getTupleRest([
100
+
{
101
+
name: "tuple",
102
+
version: "4.0",
103
+
debug: false
104
+
},
105
+
1
106
+
]),{
107
+
version: "4.0",
108
+
debug: false
109
+
}));
110
+
Mocha.test("variant payload rest works through the or-pattern path",()=>{
111
+
Test_utils.eq("File \"record_rest_test.res\", line 122, characters 6-13",getWrappedRest({
112
+
TAG: "Wrap",
113
+
_0: {
114
+
name: "wrapped",
115
+
version: "5.0",
116
+
debug: true
117
+
}
118
+
}),{
119
+
version: "5.0",
120
+
debug: true
121
+
});
122
+
Test_utils.eq("File \"record_rest_test.res\", line 127, characters 6-13",getWrappedRest({
123
+
TAG: "Mirror",
124
+
_0: {
125
+
name: "mirror",
126
+
version: "6.0",
127
+
debug: false
128
+
}
129
+
}),{
130
+
version: "6.0",
131
+
debug: false
132
+
});
133
+
});
134
+
Mocha.test("inline record variant rest removes the runtime tag field",()=>{
135
+
Test_utils.eq("File \"record_rest_test.res\", line 135, characters 6-13",getInlineWrappedRest({
136
+
TAG: "InlineWrap",
137
+
name: "inline",
138
+
version: "7.0",
139
+
debug: true
140
+
}),{
141
+
version: "7.0",
142
+
debug: true
143
+
});
144
+
Test_utils.eq("File \"record_rest_test.res\", line 140, characters 6-13",getInlineWrappedRest({
145
+
TAG: "InlineMirror",
146
+
name: "inlineMirror",
147
+
version: "8.0",
148
+
debug: false
149
+
}),{
150
+
version: "8.0",
151
+
debug: false
152
+
});
153
+
});
154
+
Mocha.test("inline record variant rest removes a custom runtime tag field",()=>{
155
+
Test_utils.eq("File \"record_rest_test.res\", line 148, characters 6-13",getCustomTaggedInlineWrappedRest({
156
+
kind: "CustomInlineWrap",
157
+
name: "customInline",
158
+
version: "9.0",
159
+
debug: true
160
+
}),{
161
+
version: "9.0",
162
+
debug: true
163
+
});
164
+
Test_utils.eq("File \"record_rest_test.res\", line 155, characters 6-13",getCustomTaggedInlineWrappedRest({
0 commit comments