Beispiel #1
0
 private void IsDriveCdRom(VolumeDeviceInfo vinfo)
 {
     Assert.That(vinfo.DriveType, Is.EqualTo(DriveType.CdRom));
     Assert.That(vinfo.Disk.Extents, Is.Null);
     Assert.That(vinfo.Disk.Device.VendorId, Is.Empty);
     Assert.That(vinfo.Disk.Device.ProductId, Is.EqualTo("NECVMWar VMware IDE CDR10"));
     Assert.That(vinfo.Disk.Device.ProductRevision, Is.EqualTo("1.00"));
     Assert.That(vinfo.Disk.Device.SerialNumber, Is.EqualTo("3031303030303030303"));
     Assert.That(vinfo.Disk.Device.BusType, Is.EqualTo(BusType.Atapi));
     Assert.That(vinfo.Disk.Device.HasCommandQueueing, Is.False);
     Assert.That(vinfo.Disk.Device.ScsiDeviceType, Is.EqualTo(ScsiDeviceType.CdRomDevice));
     Assert.That(vinfo.Disk.Device.ScsiDeviceModifier, Is.EqualTo(0));
     Assert.That(vinfo.Disk.Device.GuidFlags, Is.EqualTo(DeviceGuidFlags.None));  // Windows XP doesn't support GUIDs
     Assert.That(vinfo.Disk.Device.Guid.ToString(), Is.EqualTo("00000000-0000-0000-0000-000000000000"));
     Assert.That(vinfo.Disk.IsRemovableMedia, Is.True);
     Assert.That(vinfo.Disk.IsMediaPresent, Is.True);
     Assert.That(vinfo.Disk.IsReadOnly, Is.True);
     Assert.That(vinfo.Disk.Geometry.Cylinders, Is.EqualTo(904));
     Assert.That(vinfo.Disk.Geometry.TracksPerCylinder, Is.EqualTo(64));
     Assert.That(vinfo.Disk.Geometry.SectorsPerTrack, Is.EqualTo(32));
     Assert.That(vinfo.Disk.Geometry.BytesPerSector, Is.EqualTo(2048));
     Assert.That(vinfo.Disk.Geometry.BytesPerPhysicalSector, Is.EqualTo(vinfo.Disk.Geometry.BytesPerSector)); // Not supported on WinXP
     Assert.That(vinfo.Disk.HasSeekPenalty, Is.EqualTo(BoolUnknown.Unknown));
     Assert.That(vinfo.Partition.Style, Is.EqualTo(PartitionStyle.MasterBootRecord));
     Assert.That(vinfo.Partition.Number, Is.EqualTo(0));
     Assert.That(vinfo.Partition.Offset, Is.EqualTo(0));
     Assert.That(vinfo.Partition.Length, Is.EqualTo(3794823168));
     Assert.That(((VolumeDeviceInfo.IMbrPartition)vinfo.Partition).Type, Is.EqualTo(11));
     Assert.That(((VolumeDeviceInfo.IMbrPartition)vinfo.Partition).Bootable, Is.False);
     Assert.That(((VolumeDeviceInfo.IMbrPartition)vinfo.Partition).MbrSectorsOffset, Is.EqualTo(0));
     Assert.That(vinfo.FileSystem.Label, Is.EqualTo("winxpsp3_090429"));
     Assert.That(vinfo.FileSystem.Serial, Is.EqualTo("1686-338B"));
     Assert.That(vinfo.FileSystem.Name, Is.EqualTo("CDFS"));
     Assert.That((int)vinfo.FileSystem.Flags, Is.EqualTo(0x00080005));
 }
Beispiel #2
0
 private void IsDrivePhys0(VolumeDeviceInfo vinfo)
 {
     IsPhysicalDrive0(vinfo);
     Assert.That(vinfo.Disk.Extents, Is.Null);
     Assert.That(vinfo.Partition.Style, Is.EqualTo(PartitionStyle.MasterBootRecord));
     Assert.That(vinfo.Partition.Number, Is.EqualTo(0));
     Assert.That(vinfo.Partition.Offset, Is.EqualTo(0));
     Assert.That(vinfo.Partition.Length, Is.EqualTo(10737418240));
     Assert.That(((VolumeDeviceInfo.IMbrPartition)vinfo.Partition).Type, Is.EqualTo(0));
     Assert.That(((VolumeDeviceInfo.IMbrPartition)vinfo.Partition).Bootable, Is.False);
     Assert.That(((VolumeDeviceInfo.IMbrPartition)vinfo.Partition).MbrSectorsOffset, Is.EqualTo(0));
     Assert.That(vinfo.FileSystem, Is.Null);
 }
Beispiel #3
0
 private void IsDriveFloppyB(VolumeDeviceInfo vinfo)
 {
     Assert.That(vinfo.Disk.Extents, Is.Null);
     Assert.That(vinfo.DriveType, Is.EqualTo(DriveType.Floppy));
     Assert.That(vinfo.Disk.Device, Is.Null);
     Assert.That(vinfo.Disk.IsRemovableMedia, Is.True);
     Assert.That(vinfo.Disk.IsMediaPresent, Is.False);
     Assert.That(vinfo.Disk.IsReadOnly, Is.True);
     Assert.That(vinfo.Disk.Geometry, Is.Null);
     Assert.That(vinfo.Disk.HasSeekPenalty, Is.EqualTo(BoolUnknown.Unknown));
     Assert.That(vinfo.Partition, Is.Null);
     Assert.That(vinfo.FileSystem, Is.Null);
 }
        public void BootPartition()
        {
            // Checks that in general we can query the volume information.
            VolumeDeviceInfo volumeInfo = VolumeDeviceInfo.Create(@"\\.\BootPartition");

            Assert.That(volumeInfo.Path, Is.EqualTo(@"\\.\BootPartition"));
            Assert.That(volumeInfo.DriveType, Is.EqualTo(DriveType.Fixed));
            Assert.That(volumeInfo.Volume.DriveLetter, Is.Not.Null.Or.Empty);
            Assert.That(volumeInfo.Volume.DevicePath, Is.Not.Null.Or.Empty);
            Assert.That(volumeInfo.Disk.IsMediaPresent, Is.True);
            Assert.That(volumeInfo.Disk.IsReadOnly, Is.False);
            Assert.That(volumeInfo.FileSystem.Label, Is.Not.Null);
            Assert.That(volumeInfo.FileSystem.Serial, Is.Not.Null);
            Assert.That(volumeInfo.FileSystem.Name, Is.Not.Null);
        }
Beispiel #5
0
 private void IsHarddiskVolume4(VolumeDeviceInfo vinfo)
 {
     IsPhysicalDrive0(vinfo);
     Assert.That(vinfo.Disk.Extents.Length, Is.EqualTo(1));
     Assert.That(vinfo.Disk.Extents[0].Device, Is.EqualTo(@"\\.\PhysicalDrive0"));
     Assert.That(vinfo.Disk.Extents[0].StartingOffset, Is.EqualTo(vinfo.Partition.Offset));
     Assert.That(vinfo.Disk.Extents[0].ExtentLength, Is.EqualTo(vinfo.Partition.Length));
     Assert.That(vinfo.Partition.Style, Is.EqualTo(PartitionStyle.MasterBootRecord));
     Assert.That(vinfo.Partition.Number, Is.EqualTo(3));
     Assert.That(vinfo.Partition.Offset, Is.EqualTo(315846819840));
     Assert.That(vinfo.Partition.Length, Is.EqualTo(4225761280));
     Assert.That(((VolumeDeviceInfo.IMbrPartition)vinfo.Partition).Type, Is.EqualTo(130));  // Linux
     Assert.That(((VolumeDeviceInfo.IMbrPartition)vinfo.Partition).Bootable, Is.False);
     Assert.That(((VolumeDeviceInfo.IMbrPartition)vinfo.Partition).MbrSectorsOffset, Is.EqualTo(125366274));
     Assert.That(vinfo.FileSystem, Is.Null);
 }
Beispiel #6
0
 private void IsHarddiskVolume3(VolumeDeviceInfo vinfo)
 {
     IsPhysicalDrive0(vinfo);
     Assert.That(vinfo.Disk.Extents.Length, Is.EqualTo(1));
     Assert.That(vinfo.Disk.Extents[0].Device, Is.EqualTo(@"\\.\PhysicalDrive0"));
     Assert.That(vinfo.Disk.Extents[0].StartingOffset, Is.EqualTo(vinfo.Partition.Offset));
     Assert.That(vinfo.Disk.Extents[0].ExtentLength, Is.EqualTo(vinfo.Partition.Length));
     Assert.That(vinfo.Partition.Style, Is.EqualTo(PartitionStyle.MasterBootRecord));
     Assert.That(vinfo.Partition.Number, Is.EqualTo(4));
     Assert.That(vinfo.Partition.Offset, Is.EqualTo(251659288576));
     Assert.That(vinfo.Partition.Length, Is.EqualTo(64187531264));
     Assert.That(((VolumeDeviceInfo.IMbrPartition)vinfo.Partition).Type, Is.EqualTo(131));  // Linux
     Assert.That(((VolumeDeviceInfo.IMbrPartition)vinfo.Partition).Bootable, Is.False);
     Assert.That(((VolumeDeviceInfo.IMbrPartition)vinfo.Partition).MbrSectorsOffset, Is.EqualTo(1));
     Assert.That(vinfo.FileSystem, Is.Null);
 }
        public void ObjectEquality()
        {
            VolumeDeviceInfo bootPart  = VolumeDeviceInfo.Create(@"\\.\BootPartition");
            VolumeDeviceInfo bootDrive = VolumeDeviceInfo.Create(bootPart.Volume.DevicePath);

            // Object Equality
            Assert.That(bootPart, Is.EqualTo(bootDrive));
            Assert.That(bootDrive, Is.EqualTo(bootPart));
            Assert.That(bootPart.Equals(bootDrive));
            Assert.That(bootDrive.Equals(bootPart));
            Assert.That(bootPart.ToString(), Is.EqualTo(bootDrive.ToString()));
            Assert.That(bootPart.GetHashCode(), Is.EqualTo(bootDrive.GetHashCode()));

            // Reference Equality
            Assert.That(bootPart != bootDrive);
            Assert.That(bootDrive != bootPart);
            Assert.That(ReferenceEquals(bootPart, bootDrive), Is.False);
        }
Beispiel #8
0
 private void IsDriveBoot(VolumeDeviceInfo vinfo)
 {
     IsPhysicalDrive0(vinfo);
     Assert.That(vinfo.Disk.Extents.Length, Is.EqualTo(1));
     Assert.That(vinfo.Disk.Extents[0].Device, Is.EqualTo(@"\\.\PhysicalDrive0"));
     Assert.That(vinfo.Disk.Extents[0].StartingOffset, Is.EqualTo(vinfo.Partition.Offset));
     Assert.That(vinfo.Disk.Extents[0].ExtentLength, Is.EqualTo(vinfo.Partition.Length));
     Assert.That(vinfo.Partition.Style, Is.EqualTo(PartitionStyle.MasterBootRecord));
     Assert.That(vinfo.Partition.Number, Is.EqualTo(1));
     Assert.That(vinfo.Partition.Offset, Is.EqualTo(32256));
     Assert.That(vinfo.Partition.Length, Is.EqualTo(42935929344));
     Assert.That(((VolumeDeviceInfo.IMbrPartition)vinfo.Partition).Type, Is.EqualTo(7));
     Assert.That(((VolumeDeviceInfo.IMbrPartition)vinfo.Partition).Bootable, Is.True);
     Assert.That(((VolumeDeviceInfo.IMbrPartition)vinfo.Partition).MbrSectorsOffset, Is.EqualTo(63));
     Assert.That(vinfo.FileSystem.Label, Is.Empty);
     Assert.That(vinfo.FileSystem.Serial, Is.EqualTo("544D-DD66"));
     Assert.That(vinfo.FileSystem.Name, Is.EqualTo("NTFS"));
     Assert.That((int)vinfo.FileSystem.Flags, Is.EqualTo(0x000700FF));
 }
Beispiel #9
0
 private void IsDriveFloppyA(VolumeDeviceInfo vinfo)
 {
     Assert.That(vinfo.Disk.Extents, Is.Null);
     Assert.That(vinfo.DriveType, Is.EqualTo(DriveType.Floppy));
     Assert.That(vinfo.Disk.Device, Is.Null);
     Assert.That(vinfo.Disk.IsRemovableMedia, Is.True);
     Assert.That(vinfo.Disk.IsMediaPresent, Is.True);
     Assert.That(vinfo.Disk.IsReadOnly, Is.False);
     Assert.That(vinfo.Disk.Geometry.Cylinders, Is.EqualTo(80));
     Assert.That(vinfo.Disk.Geometry.TracksPerCylinder, Is.EqualTo(2));
     Assert.That(vinfo.Disk.Geometry.SectorsPerTrack, Is.EqualTo(18));
     Assert.That(vinfo.Disk.Geometry.BytesPerSector, Is.EqualTo(512));
     Assert.That(vinfo.Disk.Geometry.BytesPerPhysicalSector, Is.EqualTo(vinfo.Disk.Geometry.BytesPerSector));
     Assert.That(vinfo.Disk.HasSeekPenalty, Is.EqualTo(BoolUnknown.Unknown));
     Assert.That(vinfo.Partition, Is.Null);
     Assert.That(vinfo.FileSystem.Label, Is.EqualTo("FLOPPY"));
     Assert.That(vinfo.FileSystem.Serial, Is.EqualTo("6C26-C2C2"));
     Assert.That(vinfo.FileSystem.Name, Is.EqualTo("FAT"));
     Assert.That((int)vinfo.FileSystem.Flags, Is.EqualTo(0x06));
 }
Beispiel #10
0
 private void IsMultiPartDrive(VolumeDeviceInfo vinfo)
 {
     Assert.That(vinfo.DriveType, Is.EqualTo(DriveType.Fixed));
     Assert.That(vinfo.Disk.Extents.Length, Is.EqualTo(2));   // This is a spanning volume
     Assert.That(vinfo.Disk.Extents[0].Device, Is.EqualTo(@"\\.\PhysicalDrive3"));
     Assert.That(vinfo.Disk.Extents[0].StartingOffset, Is.EqualTo(32256));
     Assert.That(vinfo.Disk.Extents[0].ExtentLength, Is.EqualTo(4294967296));
     Assert.That(vinfo.Disk.Extents[1].Device, Is.EqualTo(@"\\.\PhysicalDrive3"));
     Assert.That(vinfo.Disk.Extents[1].StartingOffset, Is.EqualTo(8589966848));
     Assert.That(vinfo.Disk.Extents[1].ExtentLength, Is.EqualTo(7514095616));
     Assert.That(vinfo.Partition, Is.Null); // This is a multipartition, no single partition. Need to get from the physical drive
     Assert.That(vinfo.FileSystem.Label, Is.EqualTo("Simple"));
     Assert.That(vinfo.FileSystem.Serial, Is.EqualTo("54D5-9860"));
     Assert.That(vinfo.FileSystem.Name, Is.EqualTo("NTFS"));
     Assert.That((int)vinfo.FileSystem.Flags, Is.EqualTo(0x700FF));
     Assert.That(vinfo.FileSystem.BytesPerSector, Is.EqualTo(512));
     Assert.That(vinfo.FileSystem.SectorsPerCluster, Is.EqualTo(8));
     Assert.That(vinfo.FileSystem.TotalBytes, Is.EqualTo(11809058816));
     Assert.That(vinfo.FileSystem.TotalFreeBytes, Is.EqualTo(11784658944));
     Assert.That(vinfo.FileSystem.UserFreeBytes, Is.EqualTo(11784658944));
 }
Beispiel #11
0
 private void IsMirrorDrive(VolumeDeviceInfo vinfo)
 {
     Assert.That(vinfo.DriveType, Is.EqualTo(DriveType.Fixed));
     Assert.That(vinfo.Disk.Extents.Length, Is.EqualTo(2));   // This is a mirrored volume
     Assert.That(vinfo.Disk.Extents[0].Device, Is.EqualTo(@"\\.\PhysicalDrive2"));
     Assert.That(vinfo.Disk.Extents[0].StartingOffset, Is.EqualTo(28672));
     Assert.That(vinfo.Disk.Extents[0].ExtentLength, Is.EqualTo(10732175360));
     Assert.That(vinfo.Disk.Extents[1].Device, Is.EqualTo(@"\\.\PhysicalDrive1"));
     Assert.That(vinfo.Disk.Extents[1].StartingOffset, Is.EqualTo(28672));
     Assert.That(vinfo.Disk.Extents[1].ExtentLength, Is.EqualTo(10732175360));
     Assert.That(vinfo.Partition, Is.Null); // This is a multivolume, no single partition. Need to get from the physical drive
     Assert.That(vinfo.FileSystem.Label, Is.EqualTo("MIRROR"));
     Assert.That(vinfo.FileSystem.Serial, Is.EqualTo("28E7-CE46"));
     Assert.That(vinfo.FileSystem.Name, Is.EqualTo("NTFS"));
     Assert.That((int)vinfo.FileSystem.Flags, Is.EqualTo(0x700FF));
     Assert.That(vinfo.FileSystem.BytesPerSector, Is.EqualTo(512));
     Assert.That(vinfo.FileSystem.SectorsPerCluster, Is.EqualTo(8));
     Assert.That(vinfo.FileSystem.TotalBytes, Is.EqualTo(10732171264));
     Assert.That(vinfo.FileSystem.TotalFreeBytes, Is.EqualTo(10675417088));
     Assert.That(vinfo.FileSystem.UserFreeBytes, Is.EqualTo(10675417088));
 }
Beispiel #12
0
 private void IsVirtCdRom(VolumeDeviceInfo vinfo)
 {
     Assert.That(vinfo.DriveType, Is.EqualTo(DriveType.CdRom));
     Assert.That(vinfo.Disk.Extents, Is.Null);
     Assert.That(vinfo.Disk.Device.VendorId, Is.EqualTo("ELBY    "));
     Assert.That(vinfo.Disk.Device.ProductId, Is.EqualTo("CLONEDRIVE      "));
     Assert.That(vinfo.Disk.Device.ProductRevision, Is.EqualTo("1.4 "));
     Assert.That(vinfo.Disk.Device.SerialNumber, Is.EqualTo("\r("));
     Assert.That(vinfo.Disk.Device.BusType, Is.EqualTo(BusType.Scsi));
     Assert.That(vinfo.Disk.Device.HasCommandQueueing, Is.False);
     Assert.That(vinfo.Disk.Device.ScsiDeviceType, Is.EqualTo(ScsiDeviceType.CdRomDevice));
     Assert.That(vinfo.Disk.Device.ScsiDeviceModifier, Is.EqualTo(0));
     Assert.That(vinfo.Disk.Device.GuidFlags, Is.EqualTo(DeviceGuidFlags.None));
     Assert.That(vinfo.Disk.Device.Guid, Is.EqualTo(Guid.Empty));
     Assert.That(vinfo.Disk.IsRemovableMedia, Is.True);
     Assert.That(vinfo.Disk.IsMediaPresent, Is.False);
     Assert.That(vinfo.Disk.IsReadOnly, Is.True);
     Assert.That(vinfo.Disk.Geometry, Is.Null);
     Assert.That(vinfo.Disk.HasSeekPenalty, Is.EqualTo(BoolUnknown.Unknown));
     Assert.That(vinfo.Partition, Is.Null);
     Assert.That(vinfo.FileSystem, Is.Null);
 }
Beispiel #13
0
 public void IsPhysicalDrive0(VolumeDeviceInfo vinfo)
 {
     Assert.That(vinfo.DriveType, Is.EqualTo(DriveType.Fixed));
     Assert.That(vinfo.Disk.Device.VendorId, Is.Empty);
     Assert.That(vinfo.Disk.Device.ProductId, Is.EqualTo("HGST HEJ423232H9E300"));
     Assert.That(vinfo.Disk.Device.ProductRevision, Is.EqualTo("F6BOA170"));
     Assert.That(vinfo.Disk.Device.SerialNumber, Is.EqualTo("2020202020203646303030304e46304758334338"));
     Assert.That(vinfo.Disk.Device.BusType, Is.EqualTo(BusType.Sata));
     Assert.That(vinfo.Disk.Device.HasCommandQueueing, Is.False);
     Assert.That(vinfo.Disk.Device.ScsiDeviceType, Is.EqualTo(ScsiDeviceType.DirectAccessDevice));
     Assert.That(vinfo.Disk.Device.ScsiDeviceModifier, Is.EqualTo(0));
     Assert.That(vinfo.Disk.Device.GuidFlags, Is.EqualTo(DeviceGuidFlags.None));
     Assert.That(vinfo.Disk.Device.Guid, Is.EqualTo(Guid.Empty));
     Assert.That(vinfo.Disk.IsRemovableMedia, Is.False);
     Assert.That(vinfo.Disk.IsMediaPresent, Is.True);
     Assert.That(vinfo.Disk.IsReadOnly, Is.False);
     Assert.That(vinfo.Disk.Geometry.Cylinders, Is.EqualTo(41345));
     Assert.That(vinfo.Disk.Geometry.TracksPerCylinder, Is.EqualTo(240));
     Assert.That(vinfo.Disk.Geometry.SectorsPerTrack, Is.EqualTo(63));
     Assert.That(vinfo.Disk.Geometry.BytesPerSector, Is.EqualTo(512));
     Assert.That(vinfo.Disk.Geometry.BytesPerPhysicalSector, Is.EqualTo(4096));
     Assert.That(vinfo.Disk.HasSeekPenalty, Is.EqualTo(BoolUnknown.True));
 }
Beispiel #14
0
 private void IsPhysicalDrive0(VolumeDeviceInfo vinfo)
 {
     Assert.That(vinfo.DriveType, Is.EqualTo(DriveType.Fixed));
     Assert.That(vinfo.Disk.Device.VendorId, Is.Empty);
     Assert.That(vinfo.Disk.Device.ProductId, Is.EqualTo("VMware Virtual IDE Hard Drive"));
     Assert.That(vinfo.Disk.Device.ProductRevision, Is.EqualTo("00000001"));
     Assert.That(vinfo.Disk.Device.SerialNumber, Is.EqualTo("3030303030303030303"));
     Assert.That(vinfo.Disk.Device.BusType, Is.EqualTo(BusType.Ata));
     Assert.That(vinfo.Disk.Device.HasCommandQueueing, Is.False);
     Assert.That(vinfo.Disk.Device.ScsiDeviceType, Is.EqualTo(ScsiDeviceType.DirectAccessDevice));
     Assert.That(vinfo.Disk.Device.ScsiDeviceModifier, Is.EqualTo(0));
     Assert.That(vinfo.Disk.Device.GuidFlags, Is.EqualTo(DeviceGuidFlags.None));  // Windows XP doesn't support GUIDs
     Assert.That(vinfo.Disk.Device.Guid.ToString(), Is.EqualTo("00000000-0000-0000-0000-000000000000"));
     Assert.That(vinfo.Disk.IsRemovableMedia, Is.False);
     Assert.That(vinfo.Disk.IsMediaPresent, Is.True);
     Assert.That(vinfo.Disk.IsReadOnly, Is.False);
     Assert.That(vinfo.Disk.Geometry.Cylinders, Is.EqualTo(5221));
     Assert.That(vinfo.Disk.Geometry.TracksPerCylinder, Is.EqualTo(255));
     Assert.That(vinfo.Disk.Geometry.SectorsPerTrack, Is.EqualTo(63));
     Assert.That(vinfo.Disk.Geometry.BytesPerSector, Is.EqualTo(512));
     Assert.That(vinfo.Disk.Geometry.BytesPerPhysicalSector, Is.EqualTo(vinfo.Disk.Geometry.BytesPerSector)); // Not supported on WinXP
     Assert.That(vinfo.Disk.HasSeekPenalty, Is.EqualTo(BoolUnknown.Unknown));
 }
Beispiel #15
0
 public void IsPhysicalDrive0(VolumeDeviceInfo vinfo)
 {
     Assert.That(vinfo.DriveType, Is.EqualTo(DriveType.Fixed));
     Assert.That(vinfo.Disk.Device.VendorId, Is.EqualTo("VMware, "));
     Assert.That(vinfo.Disk.Device.ProductId, Is.EqualTo("VMware Virtual S"));
     Assert.That(vinfo.Disk.Device.ProductRevision, Is.EqualTo("1.0 "));
     Assert.That(vinfo.Disk.Device.SerialNumber, Is.Empty);
     Assert.That(vinfo.Disk.Device.BusType, Is.EqualTo(BusType.Scsi));
     Assert.That(vinfo.Disk.Device.HasCommandQueueing, Is.True);
     Assert.That(vinfo.Disk.Device.ScsiDeviceType, Is.EqualTo(ScsiDeviceType.DirectAccessDevice));
     Assert.That(vinfo.Disk.Device.ScsiDeviceModifier, Is.EqualTo(0));
     Assert.That(vinfo.Disk.Device.GuidFlags, Is.EqualTo(DeviceGuidFlags.None));
     Assert.That(vinfo.Disk.Device.Guid, Is.EqualTo(Guid.Empty));
     Assert.That(vinfo.Disk.IsRemovableMedia, Is.False);
     Assert.That(vinfo.Disk.IsMediaPresent, Is.True);
     Assert.That(vinfo.Disk.IsReadOnly, Is.False);
     Assert.That(vinfo.Disk.Geometry.Cylinders, Is.EqualTo(1468));
     Assert.That(vinfo.Disk.Geometry.TracksPerCylinder, Is.EqualTo(255));
     Assert.That(vinfo.Disk.Geometry.SectorsPerTrack, Is.EqualTo(56));
     Assert.That(vinfo.Disk.Geometry.BytesPerSector, Is.EqualTo(512));
     Assert.That(vinfo.Disk.Geometry.BytesPerPhysicalSector, Is.EqualTo(512));
     Assert.That(vinfo.Disk.HasSeekPenalty, Is.EqualTo(BoolUnknown.Unknown));
 }
Beispiel #16
0
 private void IsHarddiskVolume1(VolumeDeviceInfo vinfo)
 {
     IsPhysicalDrive0(vinfo);
     Assert.That(vinfo.Disk.Extents.Length, Is.EqualTo(1));
     Assert.That(vinfo.Disk.Extents[0].Device, Is.EqualTo(@"\\.\PhysicalDrive0"));
     Assert.That(vinfo.Disk.Extents[0].StartingOffset, Is.EqualTo(vinfo.Partition.Offset));
     Assert.That(vinfo.Disk.Extents[0].ExtentLength, Is.EqualTo(vinfo.Partition.Length));
     Assert.That(vinfo.Partition.Style, Is.EqualTo(PartitionStyle.MasterBootRecord));
     Assert.That(vinfo.Partition.Number, Is.EqualTo(1));
     Assert.That(vinfo.Partition.Offset, Is.EqualTo(1048576));
     Assert.That(vinfo.Partition.Length, Is.EqualTo(104857600));
     Assert.That(((VolumeDeviceInfo.IMbrPartition)vinfo.Partition).Type, Is.EqualTo(7));
     Assert.That(((VolumeDeviceInfo.IMbrPartition)vinfo.Partition).Bootable, Is.True);
     Assert.That(((VolumeDeviceInfo.IMbrPartition)vinfo.Partition).MbrSectorsOffset, Is.EqualTo(2048));
     Assert.That(vinfo.FileSystem.Label, Is.EqualTo("System Reserved"));
     Assert.That(vinfo.FileSystem.Serial, Is.EqualTo("D021-4443"));
     Assert.That(vinfo.FileSystem.Name, Is.EqualTo("NTFS"));
     Assert.That((int)vinfo.FileSystem.Flags, Is.EqualTo(0x03E700FF));
     Assert.That(vinfo.FileSystem.BytesPerSector, Is.EqualTo(512));
     Assert.That(vinfo.FileSystem.SectorsPerCluster, Is.EqualTo(8));
     Assert.That(vinfo.FileSystem.TotalBytes, Is.EqualTo(104853504));
     Assert.That(vinfo.FileSystem.TotalFreeBytes, Is.EqualTo(74989568));
     Assert.That(vinfo.FileSystem.UserFreeBytes, Is.EqualTo(74989568));
 }
Beispiel #17
0
 private void IsExtDrive(VolumeDeviceInfo vinfo)
 {
     IsPhysicalDrive1(vinfo);
     Assert.That(vinfo.Disk.Extents.Length, Is.EqualTo(1));
     Assert.That(vinfo.Disk.Extents[0].Device, Is.EqualTo(@"\\.\PhysicalDrive1"));
     Assert.That(vinfo.Disk.Extents[0].StartingOffset, Is.EqualTo(vinfo.Partition.Offset));
     Assert.That(vinfo.Disk.Extents[0].ExtentLength, Is.EqualTo(vinfo.Partition.Length));
     Assert.That(vinfo.Partition.Style, Is.EqualTo(PartitionStyle.MasterBootRecord));
     Assert.That(vinfo.Partition.Number, Is.EqualTo(1));
     Assert.That(vinfo.Partition.Offset, Is.EqualTo(1048576));
     Assert.That(vinfo.Partition.Length, Is.EqualTo(320070483968));
     Assert.That(((VolumeDeviceInfo.IMbrPartition)vinfo.Partition).Type, Is.EqualTo(7));
     Assert.That(((VolumeDeviceInfo.IMbrPartition)vinfo.Partition).Bootable, Is.False);
     Assert.That(((VolumeDeviceInfo.IMbrPartition)vinfo.Partition).MbrSectorsOffset, Is.EqualTo(2048));
     Assert.That(vinfo.FileSystem.Label, Is.EqualTo("WD320"));
     Assert.That(vinfo.FileSystem.Serial, Is.EqualTo("6C45-9ED2"));
     Assert.That(vinfo.FileSystem.Name, Is.EqualTo("NTFS"));
     Assert.That((int)vinfo.FileSystem.Flags, Is.EqualTo(0x03E700FF));
     Assert.That(vinfo.FileSystem.BytesPerSector, Is.EqualTo(512));
     Assert.That(vinfo.FileSystem.SectorsPerCluster, Is.EqualTo(8));
     Assert.That(vinfo.FileSystem.TotalBytes, Is.EqualTo(320070479872));
     Assert.That(vinfo.FileSystem.TotalFreeBytes, Is.EqualTo(292682526720));
     Assert.That(vinfo.FileSystem.UserFreeBytes, Is.EqualTo(292682526720));
 }
Beispiel #18
0
 private void IsBootDrive(VolumeDeviceInfo vinfo)
 {
     IsPhysicalDrive0(vinfo);
     Assert.That(vinfo.Disk.Extents.Length, Is.EqualTo(1));
     Assert.That(vinfo.Disk.Extents[0].Device, Is.EqualTo(@"\\.\PhysicalDrive0"));
     Assert.That(vinfo.Disk.Extents[0].StartingOffset, Is.EqualTo(vinfo.Partition.Offset));
     Assert.That(vinfo.Disk.Extents[0].ExtentLength, Is.EqualTo(vinfo.Partition.Length));
     Assert.That(vinfo.Partition.Style, Is.EqualTo(PartitionStyle.MasterBootRecord));
     Assert.That(vinfo.Partition.Number, Is.EqualTo(2));
     Assert.That(vinfo.Partition.Offset, Is.EqualTo(105906176));
     Assert.That(vinfo.Partition.Length, Is.EqualTo(251552333824));
     Assert.That(((VolumeDeviceInfo.IMbrPartition)vinfo.Partition).Type, Is.EqualTo(7));
     Assert.That(((VolumeDeviceInfo.IMbrPartition)vinfo.Partition).Bootable, Is.False);
     Assert.That(((VolumeDeviceInfo.IMbrPartition)vinfo.Partition).MbrSectorsOffset, Is.EqualTo(206848));
     Assert.That(vinfo.FileSystem.Label, Is.Empty);
     Assert.That(vinfo.FileSystem.Serial, Is.EqualTo("8C28-A8AD"));
     Assert.That(vinfo.FileSystem.Name, Is.EqualTo("NTFS"));
     Assert.That((int)vinfo.FileSystem.Flags, Is.EqualTo(0x03E700FF));
     Assert.That(vinfo.FileSystem.BytesPerSector, Is.EqualTo(512));
     Assert.That(vinfo.FileSystem.SectorsPerCluster, Is.EqualTo(8));
     Assert.That(vinfo.FileSystem.TotalBytes, Is.EqualTo(251552329728));
     Assert.That(vinfo.FileSystem.TotalFreeBytes, Is.EqualTo(176125943808));
     Assert.That(vinfo.FileSystem.UserFreeBytes, Is.EqualTo(176125943808));
 }
Beispiel #19
0
 private void IsBootDrive(VolumeDeviceInfo vinfo)
 {
     IsPhysicalDrive0(vinfo);
     Assert.That(vinfo.Disk.Extents.Length, Is.EqualTo(1));
     Assert.That(vinfo.Disk.Extents[0].Device, Is.EqualTo(@"\\.\PhysicalDrive0"));
     Assert.That(vinfo.Disk.Extents[0].StartingOffset, Is.EqualTo(vinfo.Partition.Offset));
     Assert.That(vinfo.Disk.Extents[0].ExtentLength, Is.EqualTo(vinfo.Partition.Length));
     Assert.That(vinfo.Partition.Style, Is.EqualTo(PartitionStyle.MasterBootRecord));
     Assert.That(vinfo.Partition.Number, Is.EqualTo(1));
     Assert.That(vinfo.Partition.Offset, Is.EqualTo(28672));
     Assert.That(vinfo.Partition.Length, Is.EqualTo(10725736448));
     Assert.That(((VolumeDeviceInfo.IMbrPartition)vinfo.Partition).Type, Is.EqualTo(7));
     Assert.That(((VolumeDeviceInfo.IMbrPartition)vinfo.Partition).Bootable, Is.True);
     Assert.That(((VolumeDeviceInfo.IMbrPartition)vinfo.Partition).MbrSectorsOffset, Is.EqualTo(56));
     Assert.That(vinfo.FileSystem.Label, Is.Empty);
     Assert.That(vinfo.FileSystem.Serial, Is.EqualTo("D444-C292"));
     Assert.That(vinfo.FileSystem.Name, Is.EqualTo("NTFS"));
     Assert.That((int)vinfo.FileSystem.Flags, Is.EqualTo(0x700FF));
     Assert.That(vinfo.FileSystem.BytesPerSector, Is.EqualTo(512));
     Assert.That(vinfo.FileSystem.SectorsPerCluster, Is.EqualTo(8));
     Assert.That(vinfo.FileSystem.TotalBytes, Is.EqualTo(10725732352));
     Assert.That(vinfo.FileSystem.TotalFreeBytes, Is.EqualTo(6526672896));
     Assert.That(vinfo.FileSystem.UserFreeBytes, Is.EqualTo(6526672896));
 }