summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGareth Francis <gfrancis.dev@gmail.com>2020-09-12 16:57:44 +0100
committerGareth Francis <gfrancis.dev@gmail.com>2020-09-12 17:04:28 +0100
commit6db3ab0d050397e57bff654ca183b92d67b1b704 (patch)
tree3e92c2180d7aa6f5dc80a56a5c45e5a3276b46d9
parentbeb1d8498d4927bcf203e8ba564d9cbe7569fde1 (diff)
downloadswig-6db3ab0d050397e57bff654ca183b92d67b1b704.tar.gz
Add test for wchar_t members to li_std_string.i
-rw-r--r--Examples/test-suite/csharp/li_std_wstring_runme.cs7
-rw-r--r--Examples/test-suite/li_std_wstring.i5
-rw-r--r--Examples/test-suite/python/li_std_wstring_runme.py6
3 files changed, 18 insertions, 0 deletions
diff --git a/Examples/test-suite/csharp/li_std_wstring_runme.cs b/Examples/test-suite/csharp/li_std_wstring_runme.cs
index 8b7ba1b30..c96c8c723 100644
--- a/Examples/test-suite/csharp/li_std_wstring_runme.cs
+++ b/Examples/test-suite/csharp/li_std_wstring_runme.cs
@@ -75,6 +75,13 @@ public class runme
check_equal(li_std_wstring.test_ccvalue(x), "abc");
check_equal(li_std_wstring.test_wchar_overload(x), "abc");
+ // Member variables
+ var s = new wchar_test_struct();
+ s.wchar_t_member = h;
+ check_equal(s.wchar_t_member, h);
+ s.wchar_t_ptr_member = x;
+ check_equal(s.wchar_t_ptr_member, "abc");
+
{
// Unicode strings
string[] test_strings = {
diff --git a/Examples/test-suite/li_std_wstring.i b/Examples/test-suite/li_std_wstring.i
index 55d45383e..a790ca7e0 100644
--- a/Examples/test-suite/li_std_wstring.i
+++ b/Examples/test-suite/li_std_wstring.i
@@ -70,6 +70,11 @@ size_t size_wstring(const std::wstring& s) {
return s.size();
}
+struct wchar_test_struct {
+ wchar_t wchar_t_member;
+ wchar_t* wchar_t_ptr_member;
+};
+
%}
#endif
diff --git a/Examples/test-suite/python/li_std_wstring_runme.py b/Examples/test-suite/python/li_std_wstring_runme.py
index ef2085c66..ca8dc3184 100644
--- a/Examples/test-suite/python/li_std_wstring_runme.py
+++ b/Examples/test-suite/python/li_std_wstring_runme.py
@@ -54,6 +54,12 @@ check_equal(li_std_wstring.test_value(x), x)
check_equal(li_std_wstring.test_ccvalue(x), "abc")
check_equal(li_std_wstring.test_wchar_overload(x), "abc")
+ts = li_std_wstring.wchar_test_struct()
+ts.wchar_t_member = h
+check_equal(ts.wchar_t_member, h)
+ts.wchar_t_ptr_member = s
+check_equal(ts.wchar_t_ptr_member, s)
+
################### Python specific
# Byte strings only converted in Python 2