@@ -2025,8 +2025,7 @@ public void TestOptionalIntPtr()
20252025 }
20262026
20272027 [ Test ]
2028- [ Ignore ( "https://github.com/mono/CppSharp/issues/1730" ) ]
2029- public void TestString ( )
2028+ public void TestValueTypeStringMember ( )
20302029 {
20312030 var test = new CSharp . ValueType ( ) ;
20322031 Assert . AreEqual ( string . Empty , test . StringMember ) ;
@@ -2036,4 +2035,29 @@ public void TestString()
20362035 Assert . AreEqual ( "test" , test . StringMember ) ;
20372036 Assert . AreEqual ( "test2" , test . CharPtrMember ) ;
20382037 }
2038+
2039+ [ Test ]
2040+ [ Ignore ( "https://github.com/mono/CppSharp/issues/1786" ) ]
2041+ public void TestValueTypeStringMemberDefaulted ( )
2042+ {
2043+ CSharp . ValueType test = default ;
2044+ Assert . AreEqual ( string . Empty , test . StringMember ) ;
2045+ Assert . AreEqual ( null , test . CharPtrMember ) ;
2046+ test . StringMember = "test" ;
2047+ test . CharPtrMember = "test2" ;
2048+ Assert . AreEqual ( "test" , test . StringMember ) ;
2049+ Assert . AreEqual ( "test2" , test . CharPtrMember ) ;
2050+ }
2051+
2052+ [ Test ]
2053+ public void TestValueTypeStringMemberDefaultedCtor ( )
2054+ {
2055+ var test = new CSharp . ValueTypeNoCtor ( ) ;
2056+ Assert . AreEqual ( string . Empty , test . StringMember ) ;
2057+ Assert . AreEqual ( null , test . CharPtrMember ) ;
2058+ test . StringMember = "test" ;
2059+ test . CharPtrMember = "test2" ;
2060+ Assert . AreEqual ( "test" , test . StringMember ) ;
2061+ Assert . AreEqual ( "test2" , test . CharPtrMember ) ;
2062+ }
20392063}
0 commit comments