Add testcase for nested inner class deriving from a templated base class and defined outside of the outer class.
For languages that don't support nested class support, use flatnested. See issue #270
This commit is contained in:
parent
70a04c9ffe
commit
68a936a638
4 changed files with 79 additions and 0 deletions
27
Examples/test-suite/java/nested_template_base_runme.java
Normal file
27
Examples/test-suite/java/nested_template_base_runme.java
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
import nested_template_base.*;
|
||||
|
||||
public class nested_template_base_runme {
|
||||
|
||||
static {
|
||||
try {
|
||||
System.loadLibrary("nested_template_base");
|
||||
} catch (UnsatisfiedLinkError e) {
|
||||
System.err.println("Native code library failed to load. See the chapter on Dynamic Linking Problems in the SWIG Java documentation for help.\n" + e);
|
||||
System.exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
public static void main(String argv[]) {
|
||||
OuterC.InnerS ois = new OuterC.InnerS(123);
|
||||
OuterC.InnerC oic = new OuterC.InnerC();
|
||||
|
||||
// Check base method is available
|
||||
if (oic.outer(ois).getVal() != 123)
|
||||
throw new RuntimeException("Wrong value calling outer");
|
||||
|
||||
// Check non-derived class using base class
|
||||
if (oic.innerc().outer(ois).getVal() != 123)
|
||||
throw new RuntimeException("Wrong value calling innerc");
|
||||
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue