diff options
| author | Lorry Tar Creator <lorry-tar-importer@baserock.org> | 2009-08-18 20:56:02 +0000 |
|---|---|---|
| committer | Lorry <lorry@roadtrain.codethink.co.uk> | 2012-09-25 16:59:08 +0000 |
| commit | 9f8a09ed743cedd9547bf0661d518647966ab114 (patch) | |
| tree | 9c7803d3b27a8ec22e91792ac7f7932efa128b20 /Examples/test-suite/java/char_strings_runme.java | |
| download | swig-tarball-master.tar.gz | |
Imported from /srv/lorry/lorry-area/swig-tarball/swig-1.3.40.tar.gz.HEADswig-1.3.40master
Diffstat (limited to 'Examples/test-suite/java/char_strings_runme.java')
| -rw-r--r-- | Examples/test-suite/java/char_strings_runme.java | 153 |
1 files changed, 153 insertions, 0 deletions
diff --git a/Examples/test-suite/java/char_strings_runme.java b/Examples/test-suite/java/char_strings_runme.java new file mode 100644 index 0000000..4f33315 --- /dev/null +++ b/Examples/test-suite/java/char_strings_runme.java @@ -0,0 +1,153 @@ +import char_strings.*; + +public class char_strings_runme { + + static { + try { + System.loadLibrary("char_strings"); + } 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); + } + } + + private static String CPLUSPLUS_MSG = "A message from the deep dark world of C++, where anything is possible."; + private static String OTHERLAND_MSG = "Little message from the safe world."; + + public static void main(String argv[]) { + + long count = 10000; + long i = 0; + + // get functions + for (i=0; i<count; i++) { + String str = char_strings.GetCharHeapString(); + if (!str.equals(CPLUSPLUS_MSG)) + throw new RuntimeException("Test char get 1 failed, iteration " + i); + char_strings.DeleteCharHeapString(); + } + + for (i=0; i<count; i++) { + String str = char_strings.GetConstCharProgramCodeString(); + if (!str.equals(CPLUSPLUS_MSG)) + throw new RuntimeException("Test char get 2 failed, iteration " + i); + char_strings.DeleteCharHeapString(); + } + + for (i=0; i<count; i++) { + String str = char_strings.GetCharStaticString(); + if (!str.equals(CPLUSPLUS_MSG)) + throw new RuntimeException("Test char get 3 failed, iteration " + i); + } + + for (i=0; i<count; i++) { + String str = char_strings.GetCharStaticStringFixed(); + if (!str.equals(CPLUSPLUS_MSG)) + throw new RuntimeException("Test char get 4 failed, iteration " + i); + } + + for (i=0; i<count; i++) { + String str = char_strings.GetConstCharStaticStringFixed(); + if (!str.equals(CPLUSPLUS_MSG)) + throw new RuntimeException("Test char get 5 failed, iteration " + i); + } + + // set functions + for (i=0; i<count; i++) { + if (!char_strings.SetCharHeapString(OTHERLAND_MSG + i, i)) + throw new RuntimeException("Test char set 1 failed, iteration " + i); + } + + for (i=0; i<count; i++) { + if (!char_strings.SetCharStaticString(OTHERLAND_MSG + i, i)) + throw new RuntimeException("Test char set 2 failed, iteration " + i); + } + + for (i=0; i<count; i++) { + if (!char_strings.SetCharArrayStaticString(OTHERLAND_MSG + i, i)) + throw new RuntimeException("Test char set 3 failed, iteration " + i); + } + + for (i=0; i<count; i++) { + if (!char_strings.SetConstCharHeapString(OTHERLAND_MSG + i, i)) + throw new RuntimeException("Test char set 4 failed, iteration " + i); + } + + for (i=0; i<count; i++) { + if (!char_strings.SetConstCharStaticString(OTHERLAND_MSG + i, i)) + throw new RuntimeException("Test char set 5 failed, iteration " + i); + } + + for (i=0; i<count; i++) { + if (!char_strings.SetConstCharArrayStaticString(OTHERLAND_MSG + i, i)) + throw new RuntimeException("Test char set 6 failed, iteration " + i); + } + + // get set function + for (i=0; i<count; i++) { + String ping = OTHERLAND_MSG + i; + String pong = char_strings.CharPingPong(ping); + if (!ping.equals(pong)) + throw new RuntimeException("Test PingPong 1 failed.\nExpected:" + ping + "\nReceived:" + pong); + } + + // variables + for (i=0; i<count; i++) { + char_strings.setGlobal_char(OTHERLAND_MSG + i); + if (!char_strings.getGlobal_char().equals(OTHERLAND_MSG + i)) + throw new RuntimeException("Test variables 1 failed, iteration " + i); + } + + for (i=0; i<count; i++) { + char_strings.setGlobal_char_array1(OTHERLAND_MSG + i); + if (!char_strings.getGlobal_char_array1().equals(OTHERLAND_MSG + i)) + throw new RuntimeException("Test variables 2 failed, iteration " + i); + } + + for (i=0; i<count; i++) { + char_strings.setGlobal_char_array2(OTHERLAND_MSG + i); + if (!char_strings.getGlobal_char_array2().equals(OTHERLAND_MSG + i)) + throw new RuntimeException("Test variables 3 failed, iteration " + i); + } + + for (i=0; i<count; i++) { + if (!char_strings.getGlobal_const_char().equals(CPLUSPLUS_MSG)) + throw new RuntimeException("Test variables 4 failed, iteration " + i); + } + + for (i=0; i<count; i++) { + if (!char_strings.getGlobal_const_char_array1().equals(CPLUSPLUS_MSG)) + throw new RuntimeException("Test variables 5 failed, iteration " + i); + } + + for (i=0; i<count; i++) { + if (!char_strings.getGlobal_const_char_array2().equals(CPLUSPLUS_MSG)) + throw new RuntimeException("Test variables 6 failed, iteration " + i); + } + + // char *& tests + for (i=0; i<count; i++) { + String str = char_strings.GetCharPointerRef(); + if (!str.equals(CPLUSPLUS_MSG)) + throw new RuntimeException("Test char pointer ref get failed, iteration " + i); + } + + for (i=0; i<count; i++) { + if (!char_strings.SetCharPointerRef(OTHERLAND_MSG + i, i)) + throw new RuntimeException("Test char pointer ref set failed, iteration " + i); + } + + for (i=0; i<count; i++) { + String str = char_strings.GetConstCharPointerRef(); + if (!str.equals(CPLUSPLUS_MSG)) + throw new RuntimeException("Test const char pointer ref get failed, iteration " + i); + } + + for (i=0; i<count; i++) { + if (!char_strings.SetConstCharPointerRef(OTHERLAND_MSG + i, i)) + throw new RuntimeException("Test const char pointer ref set failed, iteration " + i); + } + } +} + + |
