コード例 #1
0
 public void EncodeDecode_100Times_OutputMatchesOriginal()
 {
     Prop.ForAll <byte[]>(bytes =>
     {
         Z85.FromZ85String(Z85.ToZ85String(bytes, autoPad: true));
     }
                          ).QuickCheckThrowOnFailure();
 }
コード例 #2
0
        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);
        }
コード例 #3
0
        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);
        }
コード例 #4
0
        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);
        }
コード例 #5
0
        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);
        }
コード例 #6
0
        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);
        }
コード例 #7
0
        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);
        }