Implement basic C++ virtual method test case for C

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/gsoc2012-c@13478 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
Leif Middelschulte 2012-07-31 21:08:39 +00:00
commit ffb2b6b73b
2 changed files with 20 additions and 0 deletions

View file

@ -16,6 +16,7 @@ CPP_TEST_CASES += \
cpp_basic_class \
cpp_basic_class_enum \
cpp_basic_class_method \
cpp_basic_class_virtual_method \
cpp_basic_class_var_pub_member_atom \
cpp_basic_class_var_pub_member_class \
cpp_basic_global_enum \

View file

@ -0,0 +1,19 @@
#include <assert.h>
#include "cpp_basic_class_virtual_method/cpp_basic_class_virtual_method_proxy.h"
int main()
{
BaseClass *bc = new_BaseClass();
NonMethodOverwritingClass *noc = new_NonMethodOverwritingClass();
MethodOverwritingClass *oc = new_MethodOverwritingClass();
assert(BaseClass_myInt(bc) == 0xba53);
assert(NonMethodOverwritingClass_myInt(noc) == 0xba53);
assert(MethodOverwritingClass_myInt(oc) == 0xa173123d);
delete_BaseClass(bc);
delete_NonMethodOverwritingClass(noc);
delete_MethodOverwritingClass(oc);
return 0;
}