swig/Examples/test-suite/ocaml/extend_placement_runme.ml
Zackery Spytz b7a400f991 [OCaml] Add a typecheck typemap for SWIGTYPE
This fixes many of the remaining warnings in the OCaml test suite.

Add multiple runtime tests.
2019-02-16 01:07:31 -07:00

53 lines
1.7 KiB
OCaml

open Swig
open Extend_placement
let _ =
let f = new_Foo '() in
assert (f -> spam () as int = 1);
assert (new_Foo '(1) -> spam () as int = 1);
let f = new_Foo '(1, 1) in
assert (f -> spam () as int = 1);
assert (f -> spam ("hello") as int = 2);
assert (f -> spam (1) as int = 1);
assert (f -> spam (1, 2) as int = 3);
assert (f -> spam (2, 4, 6) as int = 6);
assert (f -> spam (f) as int = 0);
let arg = C_double 1. in
assert (f -> spam (f, arg) as int = 0);
assert (new_Bar '() -> spam () as int = 1);
let b = new_Bar '(1) in
assert (b -> spam () as int = 1);
assert (b -> spam ("hello") as int = 2);
assert (b -> spam (1) as int = 1);
assert (b -> spam (1, 2) as int = 3);
assert (b -> spam (2, 4, 6) as int = 6);
assert (b -> spam (b) as int = 0);
let arg = C_double 1. in
assert (b -> spam (b, arg) as int = 0);
assert (new_FooTi '() -> spam () as int = 1);
assert (new_FooTi '(1) -> spam () as int = 1);
let f = new_FooTi '(1, 1) in
assert (f -> spam () as int = 1);
assert (f -> spam ("hello") as int = 2);
assert (f -> spam (1) as int = 1);
assert (f -> spam (1, 2) as int = 3);
assert (f -> spam (2, 4, 6) as int = 6);
let foo = new_Foo '() in
assert (f -> spam (foo) as int = 0);
let arg = C_double 1. in
assert (f -> spam (foo, arg) as int = 0);
assert (new_BarTi '() -> spam () as int = 1);
let b = new_BarTi '(1) in
assert (b -> spam () as int = 1);
assert (b -> spam ("hello") as int = 2);
assert (b -> spam (1) as int = 1);
assert (b -> spam (1, 2) as int = 3);
assert (b -> spam (2, 4, 6) as int = 6);
let bar = new_Bar '() in
assert (b -> spam (bar) as int = 0);
let arg = C_double 1. in
assert (b -> spam (bar, arg) as int = 0);
;;