public void BitExtractor_GetBits_FourBit_Success() { byte[] data = new byte[] { 0x48, 0x45, 0x4C, 0x4C, 0x4F }; BitExtractor fourBit = new BitExtractor(data, BitsToEncode.Four); Assert.AreEqual(0xF4, fourBit.GetBits(0)); Assert.AreEqual(0xF8, fourBit.GetBits(1)); }
public void BitExtractor_GetBits_EightBit_Success() { byte[] data = new byte[] { 0x48, 0x45, 0x4C, 0x4C, 0x4F }; BitExtractor eightBit = new BitExtractor(data, BitsToEncode.Eight); Assert.AreEqual(0x48, eightBit.GetBits(0)); Assert.AreEqual(0x45, eightBit.GetBits(1)); }
public void BitExtractor_GetBits_IndexTooLarge_Throws() { byte[] data = new byte[] { 0x48, 0x45, 0x4C, 0x4C, 0x4F }; BitExtractor oneBit = new BitExtractor(data, BitsToEncode.One); oneBit.GetBits(40); }
public void BitExtractor_GetBits_NegativeIndex_Throws() { byte[] data = new byte[] { 0x48, 0x45, 0x4C, 0x4C, 0x4F }; BitExtractor oneBit = new BitExtractor(data, BitsToEncode.One); oneBit.GetBits(-1); }
public void BitExtractor_GetBits_InvalidBitsEnum_Throws() { byte[] data = new byte[] { 0x48, 0x45, 0x4C, 0x4C, 0x4F }; BitExtractor oneBit = new BitExtractor(data, (BitsToEncode)3); oneBit.GetBits(5); }
public void BitExtractor_GetBits_TwoBit_Success() { byte[] data = new byte[] { 0x48, 0x45, 0x4C, 0x4C, 0x4F }; BitExtractor twoBit = new BitExtractor(data, BitsToEncode.Two); Assert.AreEqual(0xFD, twoBit.GetBits(0)); Assert.AreEqual(0xFC, twoBit.GetBits(1)); Assert.AreEqual(0xFE, twoBit.GetBits(2)); Assert.AreEqual(0xFC, twoBit.GetBits(3)); }
public void BitExtractor_GetBits_OneBit_Success() { byte[] data = new byte[] { 0x48, 0x45, 0x4C, 0x4C, 0x4F }; BitExtractor oneBit = new BitExtractor(data, BitsToEncode.One); Assert.AreEqual(0xFE, oneBit.GetBits(0)); Assert.AreEqual(0xFF, oneBit.GetBits(1)); Assert.AreEqual(0xFE, oneBit.GetBits(2)); Assert.AreEqual(0xFE, oneBit.GetBits(3)); Assert.AreEqual(0xFF, oneBit.GetBits(4)); Assert.AreEqual(0xFE, oneBit.GetBits(5)); Assert.AreEqual(0xFE, oneBit.GetBits(6)); Assert.AreEqual(0xFE, oneBit.GetBits(7)); }