コード例 #1
0
        public void Base64ToBufferConvertTest(int count)
        {
            var expectedBuffer = new byte[count];
            var r = new Random(count);

            r.NextBytes(expectedBuffer);
            var expectedBase64String = Convert.ToBase64String(expectedBuffer);
            var expectedBase64Chars  = expectedBase64String.ToCharArray();


            var inputOffset = r.Next(0, 100);
            var inputBuffer = new char[inputOffset + expectedBase64Chars.Length + inputOffset];

            expectedBase64Chars.CopyTo(inputBuffer, inputOffset);
            var inputString = new string('a', inputOffset) + expectedBase64String + new string('a', inputOffset);

            // base64 string -> buffer
            var outputBuffer = Base64Convert.ToBytes(inputString, inputOffset, expectedBase64String.Length);

            Assert.Equal(expectedBuffer, outputBuffer);

            // base64 buffer -> buffer
            outputBuffer = Base64Convert.ToBytes(inputBuffer, inputOffset, expectedBase64Chars.Length);
            Assert.Equal(expectedBuffer, outputBuffer);

            // base64 buffer -> buffer (copy)
            outputBuffer = new byte[expectedBuffer.Length];
            Base64Convert.Decode(new ArraySegment <char>(inputBuffer, inputOffset, expectedBase64Chars.Length), new ArraySegment <byte>(outputBuffer));
            Assert.Equal(expectedBuffer, outputBuffer);

            // base64 buffer -> buffer (copy)
            outputBuffer = new byte[expectedBuffer.Length];
            Base64Convert.Decode(inputString, inputOffset, expectedBase64Chars.Length, new ArraySegment <byte>(outputBuffer));
            Assert.Equal(expectedBuffer, outputBuffer);
        }
コード例 #2
0
        public void ToByteStringTest()
        {
            var baseNString = "eg==";
            var expected    = new byte[] { 122 };

            var actual = Base64Convert.ToBytes(baseNString);

            Assert.Equal(expected, actual);
        }
コード例 #3
0
        public void ToBytesByteArrayPartialTest()
        {
            var baseNCharBytes = "99eg==99".ToCharArray().Select(ch => (byte)ch).ToArray();
            var expected       = new byte[] { 122 };

            var actual = Base64Convert.ToBytes(baseNCharBytes, 2, baseNCharBytes.Length - 4);

            Assert.Equal(expected, actual);
        }
コード例 #4
0
        public void ToBytesByteArrayTest()
        {
            var baseNCharBytes = "eg==".ToCharArray().Select(ch => (byte)ch).ToArray();
            var expected       = new byte[] { 122 };

            var actual = Base64Convert.ToBytes(baseNCharBytes);

            Assert.Equal(expected, actual);
        }
コード例 #5
0
        public void ToBytesCharArrayPartialTest()
        {
            var baseNChars = "99eg==99".ToCharArray();
            var expected   = new byte[] { 122 };

            var actual = Base64Convert.ToBytes(baseNChars, 2, baseNChars.Length - 4);

            Assert.Equal(expected, actual);
        }
コード例 #6
0
        public void ToBytesCharArrayTest()
        {
            var baseNChars = "eg==".ToCharArray();
            var expected   = new byte[] { 122 };

            var actual = Base64Convert.ToBytes(baseNChars);

            Assert.Equal(expected, actual);
        }
コード例 #7
0
        public void ToBytesStringPartialTest()
        {
            var baseNString = "99eg==99";
            var expected    = new byte[] { 122 };

            var actual = Base64Convert.ToBytes(baseNString, 2, baseNString.Length - 4);

            Assert.Equal(expected, actual);
        }