Skip to content

Commit df94ada

Browse files
author
Vyacheslav
committed
feat:
Helper tests: + Test GetPropertyValue #14
1 parent 2ff860b commit df94ada

File tree

1 file changed

+47
-0
lines changed

1 file changed

+47
-0
lines changed

Src/Tests/HelperFixture.cs

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -199,5 +199,52 @@ public void GetPropertyPtrTest()
199199
Assert.That(new IntPtr(helpClass2Ptr), Is.EqualTo(new IntPtr((byte*)wrap2.Ptr + 12 + HelpClassHelper.SizeOf)));
200200
}
201201
}
202+
203+
[Test]
204+
public void GetPropertyValueTest()
205+
{
206+
unsafe
207+
{
208+
var wrap2 = new Struct.HelpStructWrapper();
209+
var helpStructRef = new HelpStruct()
210+
{
211+
Int32 = 45,
212+
Int64 = 4564564564,
213+
HelpClass = new HelpClass()
214+
{
215+
Int32 = 12,
216+
Int64 = 321123,
217+
HelpStruct2 = new HelpStruct2(321, 98746512),
218+
HelpClass2 = new HelpClass()
219+
}
220+
};
221+
wrap2.Fill(in helpStructRef);
222+
wrap2.HelpClass2 = new IntPtr(4823);
223+
224+
var int64Value = HelpStructHelper.GetInt64Value(wrap2.Ptr);
225+
Assert.That(int64Value, Is.EqualTo(4564564564));
226+
227+
var int32Value = HelpStructHelper.GetInt32Value(wrap2.Ptr);
228+
Assert.That(int32Value, Is.EqualTo(45));
229+
230+
var helpClassValue = HelpStructHelper.GetHelpClassValue(wrap2.Ptr);
231+
var helpClassValue2 = HelpStructHelper.GetHelpClassValue(wrap2.Ptr);
232+
Assert.That(!Is.ReferenceEquals(helpClassValue, helpClassValue2));
233+
Assert.That(helpClassValue.Int32, Is.EqualTo(12));
234+
Assert.That(helpClassValue.Int64, Is.EqualTo(321123));
235+
Assert.That(helpClassValue.HelpStruct2, Is.EqualTo(new HelpStruct2(321, 98746512)));
236+
Assert.That(helpClassValue.HelpClass2, Is.EqualTo(null));
237+
238+
Assert.That(helpClassValue.Int32, Is.EqualTo(helpClassValue2.Int32));
239+
Assert.That(helpClassValue.Int64, Is.EqualTo(helpClassValue2.Int64));
240+
Assert.That(helpClassValue.HelpStruct2, Is.EqualTo(helpClassValue.HelpStruct2));
241+
Assert.That(helpClassValue.HelpClass2, Is.EqualTo(helpClassValue.HelpClass2));
242+
243+
var helpClass2Value = HelpStructHelper.GetHelpClass2Value(wrap2.Ptr);
244+
Assert.That(helpClass2Value, Is.EqualTo(new IntPtr(4823)));
245+
246+
wrap2.Dispose();
247+
}
248+
}
202249
}
203250
}

0 commit comments

Comments
 (0)