# Test global veils.
printf( "Starting the veil tests...\n" );
assert = strip (function (t)
{
if (!test(t))
{
message ("...failed.\a");
exception ();
}
});
A = 1;
B = "two";
C = 1:3;
D = "four";
f = function ()
{
local (a; b; c);
a = A; b = B; c = C;
veil (A; B; C);
assert (A == a && b == "two");
g ();
assert (b == "two" && A == "four" && equal (C; 7:9));
B = 17;
h ();
};
g = function ()
{
A = D; B = C = 7:9;
};
h = function ()
{
assert (B == 17);
};
f ();
assert (A == 1 && B == "two" && equal (C; 1:3));
printf ("...passed.\n");
syntax highlighted by Code2HTML, v. 0.9.1