public void Test() { for (int i = 0; i < cards.Length; i++) { using (new AssertionScope()) { Assert.Multiple(() => { int count = Marshal.ConvertFromHexAscii(scrs[i], out byte[] response); Assert.AreEqual(8, count, $"Size - {cards[i]}"); Decoders.SecureDigital.SCR scr = Decoders.SecureDigital.Decoders.DecodeSCR(response); Assert.IsNotNull(scr, $"Decoded - {cards[i]}"); Assert.AreEqual(structure_version[i], scr.Structure, $"Version - {cards[i]}"); Assert.AreEqual(specification_version[i], scr.Spec, $"Specification version - {cards[i]}"); Assert.AreEqual(data_stat_after_erase[i], scr.DataStatusAfterErase, $"Data stat after erase - {cards[i]}"); Assert.AreEqual(sd_security[i], scr.Security, $"Security - {cards[i]}"); Assert.AreEqual((BusWidth)sd_bus_widths[i], scr.BusWidth, $"Bus widths - {cards[i]}"); Assert.AreEqual(sd_spec3[i], scr.Spec3, $"Spec 3 - {cards[i]}"); Assert.AreEqual(ex_security[i], scr.ExtendedSecurity, $"Extended security - {cards[i]}"); Assert.AreEqual(sd_spec4[i], scr.Spec4, $"Spec 4 - {cards[i]}"); Assert.AreEqual(sd_specx[i], scr.SpecX, $"Spec X - {cards[i]}"); Assert.AreEqual((CommandSupport)cmd_support[i], scr.CommandSupport, $"Command support - {cards[i]}"); Assert.AreEqual(mfg[i], scr.ManufacturerReserved, $"Manufacturer reserved - {cards[i]}"); }); } } }
public void Test() { for (int i = 0; i < cards.Length; i++) { int count = Marshal.ConvertFromHexAscii(csds[i], out byte[] response); Assert.AreEqual(16, count, $"Size - {cards[i]}"); Decoders.SecureDigital.CSD csd = Decoders.SecureDigital.Decoders.DecodeCSD(response); Assert.IsNotNull(csd, $"Decoded - {cards[i]}"); Assert.AreEqual(structure_versions[i], csd.Structure, $"Version - {cards[i]}"); Assert.AreEqual(taacs[i], csd.TAAC, $"TAAC - {cards[i]}"); Assert.AreEqual(nsacs[i], csd.NSAC, $"NSAC - {cards[i]}"); Assert.AreEqual(speeds[i], csd.Speed, $"Transfer speed - {cards[i]}"); Assert.AreEqual(classes[i], csd.Classes, $"Classes - {cards[i]}"); Assert.AreEqual(read_block_lengths[i], csd.ReadBlockLength, $"Read block length - {cards[i]}"); Assert.AreEqual(read_partial_blocks[i], csd.ReadsPartialBlocks, $"Reads partial blocks - {cards[i]}"); Assert.AreEqual(write_misaligned_block[i], csd.WriteMisalignment, $"Writes misaligned blocks - {cards[i]}"); Assert.AreEqual(read_misaligned_block[i], csd.ReadMisalignment, $"Reads misaligned blocks - {cards[i]}"); Assert.AreEqual(dsr_implemented[i], csd.DSRImplemented, $"DSR implemented - {cards[i]}"); Assert.AreEqual(card_sizes[i], csd.Size, $"Card size - {cards[i]}"); Assert.AreEqual(min_read_current[i], csd.ReadCurrentAtVddMin, $"Reading current at minimum Vdd - {cards[i]}"); Assert.AreEqual(max_read_current[i], csd.ReadCurrentAtVddMax, $"Reading current at maximum Vdd - {cards[i]}"); Assert.AreEqual(min_write_current[i], csd.WriteCurrentAtVddMin, $"Writing current at minimum Vdd - {cards[i]}"); Assert.AreEqual(max_write_current[i], csd.WriteCurrentAtVddMax, $"Writing current at maximum Vdd - {cards[i]}"); Assert.AreEqual(size_multiplier[i], csd.SizeMultiplier, $"Card size multiplier - {cards[i]}"); Assert.AreEqual(erase_block_enable[i], csd.EraseBlockEnable, $"Erase block enable - {cards[i]}"); Assert.AreEqual(erase_sector_sizes[i], csd.EraseSectorSize, $"Erase sector size - {cards[i]}"); Assert.AreEqual(write_protect_group_size[i], csd.WriteProtectGroupSize, $"Write protect group size - {cards[i]}"); Assert.AreEqual(write_protect_group_enable[i], csd.WriteProtectGroupEnable, $"Write protect group enable - {cards[i]}"); Assert.AreEqual(r2w_factors[i], csd.WriteSpeedFactor, $"Read to write factor - {cards[i]}"); Assert.AreEqual(file_format_group[i], csd.FileFormatGroup, $"File format group - {cards[i]}"); Assert.AreEqual(copy[i], csd.Copy, $"Copy - {cards[i]}"); Assert.AreEqual(permanent_write_protect[i], csd.PermanentWriteProtect, $"Permanent write protect - {cards[i]}"); Assert.AreEqual(temporary_write_protect[i], csd.TemporaryWriteProtect, $"Temporary write protect - {cards[i]}"); Assert.AreEqual(file_format[i], csd.FileFormat, $"File format - {cards[i]}"); } }
public void Test() { for (int i = 0; i < cards.Length; i++) { int count = Marshal.ConvertFromHexAscii(cids[i], out byte[] response); Assert.AreEqual(16, count, $"Size - {cards[i]}"); Decoders.SecureDigital.CID cid = Decoders.SecureDigital.Decoders.DecodeCID(response); Assert.IsNotNull(cid, $"Decoded - {cards[i]}"); Assert.AreEqual(manufacturers[i], cid.Manufacturer, $"Manufacturer - {cards[i]}"); Assert.AreEqual(applications[i], cid.ApplicationID, $"Application ID - {cards[i]}"); Assert.AreEqual(names[i], cid.ProductName, $"Product name - {cards[i]}"); Assert.AreEqual(revisions[i], cid.ProductRevision, $"Product revision - {cards[i]}"); Assert.AreEqual(serials[i], cid.ProductSerialNumber, $"Serial number - {cards[i]}"); Assert.AreEqual(dates[i], cid.ManufacturingDate, $"Manufacturing date - {cards[i]}"); Assert.AreEqual(crcs[i], cid.CRC, $"CRC - {cards[i]}"); } }