mirror of https://github.com/dahall/Vanara.git
Updated tests for recent changes
parent
56abc66d2f
commit
935fc50bf9
|
@ -63,7 +63,7 @@
|
||||||
<Compile Include="InteropServices\SafeCoTaskMemStringTests.cs" />
|
<Compile Include="InteropServices\SafeCoTaskMemStringTests.cs" />
|
||||||
<Compile Include="InteropServices\SafeHGlobalHandleTests.cs" />
|
<Compile Include="InteropServices\SafeHGlobalHandleTests.cs" />
|
||||||
<Compile Include="InteropServices\StrPtrTests.cs" />
|
<Compile Include="InteropServices\StrPtrTests.cs" />
|
||||||
<Compile Include="InteropServices\StructMarshalerTests.cs" />
|
<None Include="InteropServices\StructMarshalerTests.cs" />
|
||||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
@ -144,7 +144,7 @@ namespace Vanara.Extensions.Tests
|
||||||
Assert.That(h, Is.Not.EqualTo(IntPtr.Zero));
|
Assert.That(h, Is.Not.EqualTo(IntPtr.Zero));
|
||||||
var chSz = 2;
|
var chSz = 2;
|
||||||
Assert.That(a, Is.EqualTo(chSz * (rs[0].Length + 1) * rs.Length + ((rs.Length + 1) * IntPtr.Size) + i));
|
Assert.That(a, Is.EqualTo(chSz * (rs[0].Length + 1) * rs.Length + ((rs.Length + 1) * IntPtr.Size) + i));
|
||||||
var ro = h.ToIEnum<IntPtr>(rs.Length, i).Select(p => Marshal.ReadIntPtr(p)).ToArray();
|
var ro = h.ToIEnum<IntPtr>(rs.Length, i).ToArray();
|
||||||
Assert.That(ro, Has.None.EqualTo(IntPtr.Zero));
|
Assert.That(ro, Has.None.EqualTo(IntPtr.Zero));
|
||||||
for (var i = 0; i < ro.Length; i++)
|
for (var i = 0; i < ro.Length; i++)
|
||||||
Assert.That(StringHelper.GetString(ro[i], CharSet.Unicode), Is.EqualTo(rs[i]));
|
Assert.That(StringHelper.GetString(ro[i], CharSet.Unicode), Is.EqualTo(rs[i]));
|
||||||
|
@ -154,7 +154,7 @@ namespace Vanara.Extensions.Tests
|
||||||
Assert.That(h, Is.Not.EqualTo(IntPtr.Zero));
|
Assert.That(h, Is.Not.EqualTo(IntPtr.Zero));
|
||||||
chSz = 1;
|
chSz = 1;
|
||||||
Assert.That(a, Is.EqualTo(chSz * (rs[0].Length + 1) * rs.Length + ((rs.Length + 1) * IntPtr.Size) + i));
|
Assert.That(a, Is.EqualTo(chSz * (rs[0].Length + 1) * rs.Length + ((rs.Length + 1) * IntPtr.Size) + i));
|
||||||
ro = h.ToIEnum<IntPtr>(rs.Length, i).Select(p => Marshal.ReadIntPtr(p)).ToArray();
|
ro = h.ToIEnum<IntPtr>(rs.Length, i).ToArray();
|
||||||
Assert.That(ro, Has.None.EqualTo(IntPtr.Zero));
|
Assert.That(ro, Has.None.EqualTo(IntPtr.Zero));
|
||||||
for (var i = 0; i < ro.Length; i++)
|
for (var i = 0; i < ro.Length; i++)
|
||||||
Assert.That(StringHelper.GetString(ro[i], CharSet.Ansi), Is.EqualTo(rs[i]));
|
Assert.That(StringHelper.GetString(ro[i], CharSet.Ansi), Is.EqualTo(rs[i]));
|
||||||
|
|
|
@ -20,14 +20,20 @@ namespace Vanara.Extensions.Tests
|
||||||
public void GetPropertyValueTest()
|
public void GetPropertyValueTest()
|
||||||
{
|
{
|
||||||
var dt = DateTime.Today;
|
var dt = DateTime.Today;
|
||||||
|
// Has public value
|
||||||
Assert.That(dt.GetPropertyValue("Ticks", 0L), Is.EqualTo(dt.Ticks));
|
Assert.That(dt.GetPropertyValue("Ticks", 0L), Is.EqualTo(dt.Ticks));
|
||||||
Assert.That(dt.GetPropertyValue("InternalTicks", 0L), Is.EqualTo(dt.Ticks));
|
Assert.That(dt.GetPropertyValue<long>("Ticks"), Is.EqualTo(dt.Ticks));
|
||||||
Assert.That(dt.GetPropertyValue<long?>("Tacks"), Is.Null);
|
// Has private value
|
||||||
Assert.That(dt.GetPropertyValue<string>("Ticks"), Is.Null);
|
Assert.That(dt.GetPropertyValue<long>("InternalTicks"), Is.EqualTo(dt.Ticks));
|
||||||
Assert.That(dt.GetPropertyValue<ulong>("Ticks", 0), Is.EqualTo((ulong)0));
|
// Bad propname
|
||||||
Assert.That(dt.GetPropertyValue<byte>("Ticks"), Is.EqualTo((byte)0));
|
Assert.That(() => dt.GetPropertyValue<long?>("Tacks"), Throws.Exception);
|
||||||
|
Assert.That(() => dt.GetPropertyValue<long?>("Tacks", null), Is.Null);
|
||||||
|
// Diff ret type
|
||||||
|
Assert.That(() => dt.GetPropertyValue<string>("Ticks"), Throws.Exception);
|
||||||
|
Assert.That(dt.GetPropertyValue("Ticks", string.Empty), Is.EqualTo(string.Empty));
|
||||||
|
// Has null val
|
||||||
var x = new X();
|
var x = new X();
|
||||||
Assert.That(x.GetPropertyValue<string>("Str", ""), Is.EqualTo(""));
|
Assert.That(x.GetPropertyValue("Str", ""), Is.Null);
|
||||||
}
|
}
|
||||||
|
|
||||||
[TestCase(typeof(string), typeof(char))]
|
[TestCase(typeof(string), typeof(char))]
|
||||||
|
|
|
@ -125,11 +125,11 @@ namespace Vanara.InteropServices.Tests
|
||||||
Assert.That(() => ms.Write(bytes, -1, 8), Throws.TypeOf<ArgumentOutOfRangeException>());
|
Assert.That(() => ms.Write(bytes, -1, 8), Throws.TypeOf<ArgumentOutOfRangeException>());
|
||||||
Assert.That(() => ms.Write(bytes, 1, -8), Throws.TypeOf<ArgumentOutOfRangeException>());
|
Assert.That(() => ms.Write(bytes, 1, -8), Throws.TypeOf<ArgumentOutOfRangeException>());
|
||||||
Assert.That(() => ms.Write(new byte[22]), Throws.ArgumentException);
|
Assert.That(() => ms.Write(new byte[22]), Throws.ArgumentException);
|
||||||
Assert.That(() => ms.Write(0L), Throws.ArgumentException);
|
|
||||||
ms.Write((SafeHGlobalHandle) null);
|
ms.Write((SafeHGlobalHandle) null);
|
||||||
Assert.That(ms.Position, Is.Zero);
|
Assert.That(ms.Position, Is.Zero);
|
||||||
ms.Write((string[]) null);
|
ms.Write((string[]) null);
|
||||||
Assert.That(ms.Position, Is.Zero);
|
Assert.That(ms.Position, Is.Zero);
|
||||||
|
Assert.That(() => ms.Write(0L), Throws.Nothing);
|
||||||
}
|
}
|
||||||
using (var m = new SafeHGlobalHandle(100))
|
using (var m = new SafeHGlobalHandle(100))
|
||||||
using (var ms = new MarshalingStream((IntPtr)m, m.Size))
|
using (var ms = new MarshalingStream((IntPtr)m, m.Size))
|
||||||
|
|
Loading…
Reference in New Issue