swig/Examples/test-suite/octave/friends_runme.m
Olly Betts 0e0f283e48 Fix friends_runme.*
Most of these test D_d twice when they really should be testing
D_d once and D_i once (the variable name is `di` and the values
assigned are integers).

This was wrong in the initial version for Python in
708021a809 and it looks like subsequent
additions for other languages have just copied that mistake.
2022-07-22 17:50:47 +12:00

51 lines
861 B
Objective-C

# do not dump Octave core
if exist("crash_dumps_octave_core", "builtin")
crash_dumps_octave_core(0);
endif
friends
a = friends.A(2);
if (friends.get_val1(a) != 2)
error("failed");
endif
if (friends.get_val2(a) != 4)
error("failed");
endif
if (friends.get_val3(a) != 6)
error("failed");
endif
# nice overload working fine
if (friends.get_val1(1,2,3) != 1)
error("failed");
endif
b = friends.B(3);
# David's case
if (friends.mix(a,b) != 5)
error("failed");
endif
di = friends.D_i(2);
dd = friends.D_d(3.3);
# incredible template overloading working just fine
if (friends.get_val1(di) != 2)
error("failed");
endif
if (friends.get_val1(dd) != 3.3)
error("failed");
endif
friends.set(di, 4);
friends.set(dd, 1.3);
if (friends.get_val1(di) != 4)
error("failed");
endif
if (friends.get_val1(dd) != 1.3)
error("failed");
endif