2007-10-19 Marek Habersack <mhabersack@novell.com>
[mono.git] / mono / tests / pinvoke3.cs
index c9821b1704fbb0e79e9b802bf9d029eae322079c..981f542968455794f54d8d14c3ba8c2a7ef261e2 100644 (file)
@@ -873,6 +873,23 @@ public class Tests {
                return mono_test_marshal_inout_byval_class_delegate (new InOutByvalClassDelegate (delegate_test_byval_class_inout));
        }
 
+       /*
+        * Returning unicode strings
+        */
+       [return: MarshalAs(UnmanagedType.LPWStr)]
+       public delegate string ReturnUnicodeStringDelegate([MarshalAs(UnmanagedType.LPWStr)] string message);
+
+       [DllImport ("libtest", EntryPoint="mono_test_marshal_return_unicode_string_delegate")]
+       public static extern int mono_test_marshal_return_unicode_string_delegate (ReturnUnicodeStringDelegate d);
+
+       public static String return_unicode_string_delegate (string message) {
+               return message;
+       }
+
+       public static int test_0_marshal_return_unicode_string_delegate () {    
+               return mono_test_marshal_return_unicode_string_delegate (new ReturnUnicodeStringDelegate (return_unicode_string_delegate));
+       }
+
        /*
         * Returning string arrays
         */