コード例 #1
0
 public void EncodeDecode_100Times_OutputMatchesOriginal()
 {
     Prop.ForAll <byte[]>(bytes =>
     {
         Z85.FromZ85String(Z85.ToZ85String(bytes, autoPad: true));
     }
                          ).QuickCheckThrowOnFailure();
 }
コード例 #2
0
        public void FromZ85String_OutputSizeIsCorrect()
        {
            var encodedText        = "ABCDE12345";
            var expectedDecodeSize = 8; // 5 characters decode to 4 bytes

            var output = Z85.FromZ85String(encodedText);

            Assert.AreEqual(expectedDecodeSize, output.Length);
        }
コード例 #3
0
        public void FromZ85String_HelloWorld_Success()
        {
            var encodedString  = "HelloWorld";
            var expectedOutput = new byte[] { 0x86, 0x4F, 0xD2, 0x6F, 0xB5, 0x59, 0xF7, 0x5B };

            var output = Z85.FromZ85String(encodedString);

            CollectionAssert.AreEqual(expectedOutput, output);
        }
コード例 #4
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);
        }
コード例 #5
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);
        }
コード例 #6
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);
        }
コード例 #7
0
        public void FromZ85String_PaddingCharacterIncorrectValue_ThrowsException()
        {
            var encodedText = "InvalidChr4"; // Padding char must be 0, 1, 2 or 3

            var output = Z85.FromZ85String(encodedText);
        }
コード例 #8
0
        public void FromZ85String_PaddingCharacterNotDigit_ThrowsException()
        {
            var encodedText = "IllegalChrA"; // Padding char must be 0, 1, 2 or 3

            var output = Z85.FromZ85String(encodedText);
        }
コード例 #9
0
        public void FromZ85String_InputSizeIncorrect_ThrowsException()
        {
            var encodedText = "WrongSize"; // Length - 1 not divisible by 5

            var output = Z85.FromZ85String(encodedText);
        }