예제 #1
0
        public void TestDecodeEmpty()
        {
            var encoded = "";
            var result  = KvpParser.Decode(encoded);

            Assert.AreEqual(0, result.Count);
        }
        public static Dictionary <string, string> DecryptProfile(byte[] encrypted)
        {
            var decrypted = AesEcb.Decrypt(Key, encrypted);
            var encoded   = PaddingUtil.RemovePad(decrypted);
            var decoded   = KvpParser.Decode(System.Text.Encoding.ASCII.GetString(encoded));

            return(decoded);
        }
예제 #3
0
        public void TestDecodeSingle()
        {
            var encoded = "key=val";
            var result  = KvpParser.Decode(encoded);

            Assert.AreEqual(1, result.Count);
            Assert.AreEqual(result["key"], "val");
        }
예제 #4
0
        public void TestEncodeEmpty()
        {
            var obj = new Dictionary <string, string>();

            var encoded = KvpParser.Encode(obj);

            Assert.AreEqual(string.Empty, encoded);
        }
예제 #5
0
        public void TestDecodeEmptyValue()
        {
            var encoded = "a=&b=";
            var result  = KvpParser.Decode(encoded);

            Assert.AreEqual(2, result.Count);
            Assert.AreEqual(string.Empty, result["a"]);
            Assert.AreEqual(string.Empty, result["b"]);
        }
예제 #6
0
        public void TestDecodeMultiple()
        {
            var encoded = "key1=val1&key2=val2&key3=val3";
            var result  = KvpParser.Decode(encoded);

            Assert.AreEqual(3, result.Count);
            Assert.AreEqual(result["key1"], "val1");
            Assert.AreEqual(result["key2"], "val2");
            Assert.AreEqual(result["key3"], "val3");
        }
        public static string ProfileFor(string email)
        {
            var profile = new Dictionary <string, string>
            {
                { "email", email },
                { "uid", "10" },
                { "role", "user" }
            };

            return(KvpParser.Encode(profile));
        }
예제 #8
0
        public void TestEncodeSingle()
        {
            var obj = new Dictionary <string, string>
            {
                { "key", "value" }
            };

            var encoded = KvpParser.Encode(obj);

            Assert.AreEqual("key=value", encoded);
        }
예제 #9
0
        public void TestEncodeRemoveInvalidChars()
        {
            var obj = new Dictionary <string, string>
            {
                { "key1=", "=val1" },
                { "key2&", "val2&" }
            };

            var encoded = KvpParser.Encode(obj);

            Assert.AreEqual("key1=val1&key2=val2", encoded);
        }
예제 #10
0
        public void TestEncodeMultiple()
        {
            var obj = new Dictionary <string, string>
            {
                { "key1", "val1" },
                { "key2", "val2" },
                { "key3", "val3" }
            };

            var encoded = KvpParser.Encode(obj);

            Assert.AreEqual("key1=val1&key2=val2&key3=val3", encoded);
        }
예제 #11
0
 public void TestDecodeNull()
 {
     KvpParser.Decode(null);
 }
예제 #12
0
        public void TestDecodeInvalidFormatWhitespaceKey()
        {
            var encoded = " =";

            KvpParser.Decode(encoded);
        }
예제 #13
0
        public void TestDecodeInvalidFormatEmptyKey()
        {
            var encoded = "=";

            KvpParser.Decode(encoded);
        }
예제 #14
0
 public void TestEncodeNull()
 {
     KvpParser.Encode(null);
 }