ucg/integration_tests/tuple_test.ucg

88 lines
1.2 KiB
Plaintext

let simpletpl = {
foo = "bar"
};
let stringfieldtpl = {
"field 1" = 1,
};
let nestedtpl = {
inner = {
field = "value",
},
scalar = 1,
list = [1, 2, 3, 4],
maybe_val = NULL,
};
assert |
simpletpl.foo == "bar";
|;
assert |
stringfieldtpl."field 1" == 1;
|;
assert |
nestedtpl.scalar == 1;
|;
assert |
nestedtpl.maybe_val == NULL;
|;
assert |
nestedtpl.inner.field == "value";
|;
assert |
nestedtpl.list.0 == 1;
|;
assert |
nestedtpl.list.1 == 2;
|;
assert |
nestedtpl.list.2 == 3;
|;
assert |
nestedtpl.list.3 == 4;
|;
let nestedcopy = nestedtpl{
inner = self.inner{
inner = {
field3 = "three",
},
field2 = 2,
},
maybe_val = "some val",
};
let deepnestedcopy = nestedcopy{
ignoreme = "ignored",
inner = self.inner{
inner = self.inner{
field4 = 4,
},
},
};
assert |
nestedcopy.inner.field2 == 2;
|;
assert |
nestedcopy.inner.inner.field3 == "three";
|;
assert |
deepnestedcopy.inner.inner.field4 == 4;
|;
assert |
deepnestedcopy.maybe_val == "some val";
|;
let base_maybe = {
real = "A real value",
};
let copy_maybe = base_maybe{
real = NULL,
};
assert |
copy_maybe.real == NULL;
|;