aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIsaac Pascual Monells <isaac.pascual@globalzitro.com>2019-07-08 12:49:28 +0200
committerIsaac Pascual Monells <isaac.pascual@globalzitro.com>2019-07-08 12:49:28 +0200
commitf1f98348b430c3e6c7083eb62158a79ca9a36869 (patch)
tree69e98626e83f917e35e91b9376f12372b40f2108
parent63497c8d0eb9c5eefab0a5bc880f2801cb6cb595 (diff)
downloadswig-f1f98348b430c3e6c7083eb62158a79ca9a36869.tar.gz
Add nested_inheritance_interface test for csharp
-rw-r--r--Examples/test-suite/csharp/nested_inheritance_interface_runme.cs32
1 files changed, 32 insertions, 0 deletions
diff --git a/Examples/test-suite/csharp/nested_inheritance_interface_runme.cs b/Examples/test-suite/csharp/nested_inheritance_interface_runme.cs
new file mode 100644
index 000000000..ca0f01595
--- /dev/null
+++ b/Examples/test-suite/csharp/nested_inheritance_interface_runme.cs
@@ -0,0 +1,32 @@
+using System;
+using System.Collections.Generic;
+using nested_inheritance_interfaceNamespace;
+
+public class nested_inheritance_interface_runme {
+
+ static string SortArrayToString(string[] types) {
+ Array.Sort<string>(types);
+ return string.Join(" ", types);
+ }
+
+ static string SortArrayToString(Type[] types) {
+ List<string> stypes = new List<string>();
+ foreach (Type t in types)
+ stypes.Add(t.Name);
+ return SortArrayToString(stypes.ToArray());
+ }
+
+ public static void Main() {
+ Type[] BNInterfaces = typeof(B.N).GetInterfaces();
+ string expectedInterfacesString = "IASwigInterface IDisposable";
+ string actualInterfacesString = SortArrayToString(BNInterfaces);
+ if (expectedInterfacesString != actualInterfacesString)
+ throw new Exception("Expected interfaces for " + typeof(B.N).Name + ": \n" + expectedInterfacesString + "\n" + "Actual interfaces: \n" + actualInterfacesString);
+
+ if (!typeof(IASwigInterface).IsInterface)
+ throw new Exception(typeof(IASwigInterface).Name + " should be an interface but is not");
+
+ // overloaded methods check
+ B.N d = new B.N();
+ }
+}