mirror of https://github.com/swig/swig
runtime tests for templated functions in a namespace added (overloading and default arg tests)
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6456 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
parent
2c5f8a09d2
commit
dbb0c18d3e
|
@ -96,6 +96,7 @@ public class overload_template_runme {
|
|||
overload_template.xyz_int();
|
||||
overload_template.xyz_double();
|
||||
|
||||
|
||||
// a bit of everything
|
||||
if (overload_template.overload("hi") != 0)
|
||||
throw new RuntimeException ("overload()");
|
||||
|
@ -125,6 +126,35 @@ public class overload_template_runme {
|
|||
if (overload_template.overload() != 50)
|
||||
throw new RuntimeException ("overload(const char *)");
|
||||
|
||||
|
||||
// everything put in a namespace
|
||||
if (overload_template.nsoverload("hi") != 1000)
|
||||
throw new RuntimeException ("nsoverload()");
|
||||
|
||||
if (overload_template.nsoverload(1) != 1010)
|
||||
throw new RuntimeException ("nsoverload(int t)");
|
||||
|
||||
if (overload_template.nsoverload(1, 1) != 1020)
|
||||
throw new RuntimeException ("nsoverload(int t, const int &)");
|
||||
|
||||
if (overload_template.nsoverload(1, "hello") != 1030)
|
||||
throw new RuntimeException ("nsoverload(int t, const char *)");
|
||||
|
||||
if (overload_template.nsoverload(k) != 1010)
|
||||
throw new RuntimeException ("nsoverload(Klass t)");
|
||||
|
||||
if (overload_template.nsoverload(k, k) != 1020)
|
||||
throw new RuntimeException ("nsoverload(Klass t, const Klass &)");
|
||||
|
||||
if (overload_template.nsoverload(k, "hello") != 1030)
|
||||
throw new RuntimeException ("nsoverload(Klass t, const char *)");
|
||||
|
||||
if (overload_template.nsoverload(10.0, "hi") != 1040)
|
||||
throw new RuntimeException ("nsoverload(double t, const char *)");
|
||||
|
||||
if (overload_template.nsoverload() != 1050)
|
||||
throw new RuntimeException ("nsoverload(const char *)");
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -107,7 +107,49 @@ public class template_default_arg_runme {
|
|||
|
||||
if (template_default_arg.ott(new Hello_int()) != 60)
|
||||
throw new RuntimeException("ott test 13 failed");
|
||||
}
|
||||
|
||||
// Above test in namespaces
|
||||
{
|
||||
// plain function: int nsott(Foo<int>)
|
||||
if (template_default_arg.nsott(new Foo_int()) != 130)
|
||||
throw new RuntimeException("nsott test 1 failed");
|
||||
|
||||
// %template(nsott) nsott<int, int>;
|
||||
if (template_default_arg.nsott() != 110)
|
||||
throw new RuntimeException("nsott test 2 failed");
|
||||
if (template_default_arg.nsott(1) != 110)
|
||||
throw new RuntimeException("nsott test 3 failed");
|
||||
if (template_default_arg.nsott(1, 1) != 110)
|
||||
throw new RuntimeException("nsott test 4 failed");
|
||||
|
||||
if (template_default_arg.nsott("hi") != 120)
|
||||
throw new RuntimeException("nsott test 5 failed");
|
||||
if (template_default_arg.nsott("hi", 1) != 120)
|
||||
throw new RuntimeException("nsott test 6 failed");
|
||||
if (template_default_arg.nsott("hi", 1, 1) != 120)
|
||||
throw new RuntimeException("nsott test 7 failed");
|
||||
|
||||
// %template(nsott) nsott<const char *>;
|
||||
if (template_default_arg.nsottstring(new Hello_int(), "hi") != 140)
|
||||
throw new RuntimeException("nsott test 8 failed");
|
||||
|
||||
if (template_default_arg.nsottstring(new Hello_int()) != 140)
|
||||
throw new RuntimeException("nsott test 9 failed");
|
||||
|
||||
// %template(nsott) nsott<int>;
|
||||
if (template_default_arg.nsottint(new Hello_int(), 1) != 150)
|
||||
throw new RuntimeException("nsott test 10 failed");
|
||||
|
||||
if (template_default_arg.nsottint(new Hello_int()) != 150)
|
||||
throw new RuntimeException("nsott test 11 failed");
|
||||
|
||||
// %template(nsott) nsott<double>;
|
||||
if (template_default_arg.nsott(new Hello_int(), 1.0) != 160)
|
||||
throw new RuntimeException("nsott test 12 failed");
|
||||
|
||||
if (template_default_arg.nsott(new Hello_int()) != 160)
|
||||
throw new RuntimeException("nsott test 13 failed");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue