mirror of https://github.com/dahall/Vanara.git
Added/updated tests for Kernel32
parent
4a4184ab87
commit
21c4311935
|
@ -33,7 +33,7 @@ namespace Vanara.PInvoke.Tests
|
|||
{
|
||||
var output = new List<string>();
|
||||
var attr = System.Reflection.TypeAttributes.SequentialLayout | System.Reflection.TypeAttributes.ExplicitLayout;
|
||||
foreach (var t in typeof(AdvApi32).GetNestedTypes(System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.NonPublic).
|
||||
foreach (var t in type.GetNestedTypes(System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.NonPublic).
|
||||
Where(t => t.IsValueType && !t.IsEnum && (t.Attributes & attr) != 0 && ((filters?.Length ?? 0) == 0 || filters.Any(s => t.Name.Contains(s)))))
|
||||
output.Add($"{t.Name} = {Marshal.SizeOf(t)}");
|
||||
output.Sort();
|
||||
|
|
|
@ -277,9 +277,9 @@ namespace Vanara.PInvoke.Tests
|
|||
[Test]
|
||||
public void GetLogicalDriveStringsTest()
|
||||
{
|
||||
var sb = new StringBuilder(1024);
|
||||
Assert.That(GetLogicalDriveStrings((uint)sb.Capacity, sb), Is.Not.Zero);
|
||||
TestContext.WriteLine(sb);
|
||||
var ie = Enumerable.Empty<string>();
|
||||
Assert.That(ie = GetLogicalDriveStrings(), Is.Not.Empty);
|
||||
ie.WriteValues();
|
||||
}
|
||||
|
||||
[Test]
|
||||
|
|
|
@ -11,5 +11,33 @@ namespace Vanara.PInvoke.Tests
|
|||
[TestFixture]
|
||||
public class IoApiSetTests
|
||||
{
|
||||
[Test]
|
||||
public void DeviceIoControlNoInOutTest()
|
||||
{
|
||||
using var hFile = CreateFile(@"\\.\C:", FileAccess.GENERIC_READ, System.IO.FileShare.Read,
|
||||
default, System.IO.FileMode.Open, 0);
|
||||
Assert.That(hFile, ResultIs.ValidHandle);
|
||||
Assert.True(DeviceIoControl(hFile, IOControlCode.FSCTL_IS_VOLUME_MOUNTED));
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void DeviceIoControlOutAndInTest()
|
||||
{
|
||||
using var hFile = CreateFile(TestCaseSources.WordDoc, FileAccess.GENERIC_READ | FileAccess.GENERIC_WRITE,
|
||||
System.IO.FileShare.None, default, System.IO.FileMode.Open, 0);
|
||||
Assert.That(hFile, ResultIs.ValidHandle);
|
||||
|
||||
Assert.That(DeviceIoControl(hFile, IOControlCode.FSCTL_GET_COMPRESSION, out COMPRESSION_FORMAT compr), ResultIs.Successful);
|
||||
Assert.That(DeviceIoControl(hFile, IOControlCode.FSCTL_SET_COMPRESSION, compr == COMPRESSION_FORMAT.COMPRESSION_FORMAT_NONE ? COMPRESSION_FORMAT.COMPRESSION_FORMAT_DEFAULT : COMPRESSION_FORMAT.COMPRESSION_FORMAT_NONE), ResultIs.Successful);
|
||||
Assert.That(DeviceIoControl(hFile, IOControlCode.FSCTL_GET_COMPRESSION, out COMPRESSION_FORMAT newcompr), ResultIs.Successful);
|
||||
Assert.That(compr, Is.Not.EqualTo(newcompr));
|
||||
Assert.That(DeviceIoControl(hFile, IOControlCode.FSCTL_SET_COMPRESSION, compr), ResultIs.Successful);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void StructSizeTest()
|
||||
{
|
||||
TestHelper.GetNestedStructSizes(typeof(Kernel32)).WriteValues();
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue