public void TestLongMessage() { var zw = ZeroWidthSpace; // this just makes expectedString shorter var expectedString = $"A{zw}B{zw}A{zw}B{zw}B{zw}B{zw}B{zw}B{zw}"; var expectedBareMessage = "ABABBBBB"; var expected = expectedString.GetEnumerator(); var longMessage = new AlphaLengthMessage(e1, "1011010110110110110110"); var unit2 = new AlphaLengthDeserializer(longMessage); while (unit2.MoveNext() && expected.MoveNext()) { Assert.AreEqual(expected.Current, unit2.Current); } expected.Dispose(); Assert.AreEqual(expectedString, new string(longMessage.ToArray())); var bareMessage = new string(longMessage.Where(c => c != ZeroWidthSpace).ToArray()); Assert.AreEqual(expectedBareMessage, bareMessage); }
public void SetUp() { d1 = new Dictionary <char, int> { ['A'] = 1, ['B'] = 2 }; d2 = new Dictionary <char, int> { [ZeroWidthSpace] = 1, ['_'] = 2, ['.'] = 3 }; e1 = new AlphaLengthSerializer(); e1.Encoders['1'].Encoding = d1; e1.Encoders['0'].Encoding = d2; m1 = new AlphaLengthMessage(e1, "1011"); unitUnderTest = new AlphaLengthDeserializer(m1); }