예제 #1
0
 private byte[] Decode(EncodingNames fromEnc, string input)
 {
     return(fromEnc switch
     {
         EncodingNames.Base16 => Base16.Decode(input),
         EncodingNames.Base43 => Base43.Decode(input),
         EncodingNames.Base58 => Base58.Decode(input),
         EncodingNames.Base58Check => Base58.DecodeWithChecksum(input),
         EncodingNames.Base64 => Convert.FromBase64String(input),
         EncodingNames.UTF8 => Encoding.UTF8.GetBytes(input),
         EncodingNames.Unicode => Encoding.Unicode.GetBytes(input),
         _ => throw new ArgumentException("undefined encoding.")
     });
예제 #2
0
 public void Encode_ExceptionTest()
 {
     Assert.Throws <ArgumentNullException>(() => Base43.Encode(null));
 }
예제 #3
0
        public void EncodeTest(byte[] data, string expected)
        {
            string actual = Base43.Encode(data);

            Assert.Equal(expected, actual);
        }
예제 #4
0
        public void Decode_ExceptionTest(string invalid)
        {
            Exception ex = Assert.Throws <FormatException>(() => Base43.Decode(invalid));

            Assert.Contains("Input is not a valid Base-43 encoded string.", ex.Message);
        }
예제 #5
0
 public void DecodeTest(byte[] expected, string encoded)
 {
     byte[] actual = Base43.Decode(encoded);
     Assert.Equal(expected, actual);
 }
예제 #6
0
 public void IsValid_FailTest(string invalid)
 {
     Assert.False(Base43.IsValid(invalid));
 }
예제 #7
0
 public void IsValidTest(string b43)
 {
     Assert.True(Base43.IsValid(b43));
 }