Example #1
0
        public static (string, Dictionary <string, string>) ParseInput(string input)
        {
            if (input == null)
            {
                return(string.Empty, new Dictionary <string, string> {
                });
            }
            var BLANK_SPACE = new char[1] {
                ' '
            };

            var inputParts = input.Split(BLANK_SPACE, 2, StringSplitOptions.RemoveEmptyEntries);
            var name       = inputParts.Length > 0 ? inputParts[0] : string.Empty;
            var args       = inputParts.Length > 1
                    ? TupleConverters.JsonToDict(inputParts[1])
                    : new Dictionary <string, string> {
            };

            return(name, args);
        }
Example #2
0
        public void JsonToDict()
        {
            var s   = "bar";
            var i   = 1;
            var t   = ("A", ("A.a", "A.b"));
            var a   = new int[] { 1, 2, 3, 4 };
            var arg = new Dictionary <string, object>
            {
                { "s", s },
                { "i", i },
                { "t", t },
                { "a", a }
            };

            var json   = JsonConvert.SerializeObject(arg);
            var result = TupleConverters.JsonToDict(json);

            Assert.AreEqual(4, result.Count);
            Assert.AreEqual(JsonConvert.SerializeObject(s), result["s"]);
            Assert.AreEqual(JsonConvert.SerializeObject(i), result["i"]);
            Assert.AreEqual(JsonConvert.SerializeObject(t), result["t"]);
            Assert.AreEqual(JsonConvert.SerializeObject(a), result["a"]);
        }