public void DecodeArrayOfTagsWithNulls() { var expectedBytes = new byte[] { 21, 6, 3, 10, 1, 0, 10, 3 }; var array = new ILTagILInt[] { new ILTagILInt(1), null, new ILTagILInt(3) }; var compound = new ILTagArrayOfILTag <ILTagILInt>(array); byte[] encodedBytes = compound.EncodedBytes; Assert.AreEqual(expectedBytes, encodedBytes); using var ms = new MemoryStream(encodedBytes); var value = ms.DecodeTagArray <ILTagILInt>(); Assert.AreEqual(array, value); }
private static void GuaranteeBijectiveBehavior(ILTagBool[] array) { var ilarray = new ILTagArrayOfILTag <ILTagBool>(array); var encodedBytes = ilarray.EncodedBytes; using var ms = new MemoryStream(encodedBytes); var value = ms.DecodeTagArray <ILTagBool>(); CompareArrays <ILTagBool, bool>(array, value); var newEncodedBytes = new ILTagArrayOfILTag <ILTagBool>(value).EncodedBytes; Assert.AreEqual(encodedBytes, newEncodedBytes); }