public void EncodeDecode_100Times_OutputMatchesOriginal() { Prop.ForAll <byte[]>(bytes => { Z85.FromZ85String(Z85.ToZ85String(bytes, autoPad: true)); } ).QuickCheckThrowOnFailure(); }
public void ToZ85String_HelloWorld_Success() { var bytes = new byte[] { 0x86, 0x4F, 0xD2, 0x6F, 0xB5, 0x59, 0xF7, 0x5B }; var expectedOutput = "HelloWorld"; var output = Z85.ToZ85String(bytes); Assert.AreEqual(expectedOutput, output); }
public void ToZ85String_PaddingRequired_OutputSizeIsCorrect() { var input = "HelloWorld"; var inputBytes = System.Text.Encoding.Default.GetBytes(input); var expectedEncodeSize = 15 + 1; // 4 bytes become 5, so with padding HelloWorld is 15 bytes encoded (+1 for padding value) var output = Z85.ToZ85String(inputBytes, true); Assert.AreEqual(expectedEncodeSize, output.Length); }
public void ToZ85String_NoPaddingRequired_OutputSizeIsCorrect() { var input = "ABCD1234"; var inputBytes = System.Text.Encoding.Default.GetBytes(input); var expectedEncodeSize = 10; // 4 bytes become 5 var output = Z85.ToZ85String(inputBytes); Assert.AreEqual(expectedEncodeSize, output.Length); }
public void EncodeDecode_PaddingRequired_Success() { var input = "HelloWorld"; // 10 bytes - NOT divisible by 4 with no remainder var inputBytes = System.Text.Encoding.Default.GetBytes(input); var outputBytes = Z85.FromZ85String(Z85.ToZ85String(inputBytes, true)); var output = System.Text.Encoding.Default.GetString(outputBytes); Assert.AreEqual(input, output); }
public void EncodeDecode_NoPaddingRequired_Success() { var input = "RiAZ3bax"; // 8 bytes - divisible by 4 with no remainder var inputBytes = System.Text.Encoding.Default.GetBytes(input); var outputBytes = Z85.FromZ85String(Z85.ToZ85String(inputBytes)); var output = System.Text.Encoding.Default.GetString(outputBytes); Assert.AreEqual(input, output); }
public void EncodeDecode_1000Times_Max50Kb_OutputMatchesOriginal() { var config = Configuration.QuickThrowOnFailure; config.MaxNbOfTest = 1000; config.StartSize = 0; config.EndSize = 51200; Prop.ForAll <byte[]>(bytes => { Z85.FromZ85String(Z85.ToZ85String(bytes, autoPad: true)); } ).Check(config); }