Пример #1
0
    public static StringBuilder AsJson(object?input, JsonSerializerSettings settings, List <ToAppend> appends, VerifySettings verifySettings)
    {
        if (appends.Any())
        {
            var dictionary = new DictionaryWrapper <string, object>();
            if (input == null)
            {
                dictionary.Add("target", "null");
            }
            else
            {
                dictionary.Add("target", input);
            }

            input = dictionary;
            foreach (var append in appends)
            {
                dictionary[append.Name] = append.Data;
            }
        }

        var serializer = JsonSerializer.Create(settings);

        var builder = new StringBuilder();

        using StringWriter stringWriter = new(builder)
              {
                  NewLine = "\n"
              };

        using JsonTextWriterEx writer = new(stringWriter, builder, verifySettings.Context);
        serializer.Serialize(writer, input);
        return(builder);
    }
}
Пример #2
0
            public void AddTwice_StringObject()
            {
                string key    = "kk";
                object value  = new object();
                var    target = new DictionaryWrapper <string, object>(new System.Collections.Hashtable());

                target.Add(key, value);
                target.Add(key, value);
            }
Пример #3
0
            public void AddTwice_StringInt()
            {
                string key    = "kk";
                int    value  = 42;
                var    target = new DictionaryWrapper <string, int>(new System.Collections.Hashtable());

                target.Add(key, value);
                target.Add(key, value);
            }
Пример #4
0
            public void GetNoKey_StringObject()
            {
                string key    = "kk";
                object value  = new object();
                var    target = new DictionaryWrapper <string, object>(new System.Collections.Hashtable());

                target.Add(key, value);
                var result = target["aa"];
            }
Пример #5
0
            public void AddOnce_StringObject()
            {
                string key    = "kk";
                object value  = new object();
                var    target = new DictionaryWrapper <string, object>(new System.Collections.Hashtable());

                target.Add(key, value);
                Assert.IsTrue(target.Count == 1);
            }
Пример #6
0
            public void GetValid_StringObject()
            {
                string key    = "kk";
                object value  = new object();
                var    target = new DictionaryWrapper <string, object>(new System.Collections.Hashtable());

                target.Add(key, value);
                var result = target[key];

                Assert.AreSame(result, value);
            }
Пример #7
0
            public void GetValid_StringInt()
            {
                string key    = "kk";
                int    value  = 42;
                var    target = new DictionaryWrapper <string, int>(new System.Collections.Hashtable());

                target.Add(key, value);
                var result = target[key];

                Assert.AreEqual(result, value);
            }
Пример #8
0
        public void DictionaryWrapperTest()
        {
            IDictionary<string,int> genericDict = new Dictionary<string,int>();
            genericDict.Add("aa", 1);
            IDictionary dictionary = new DictionaryWrapper<string,int>(genericDict);
            dictionary.Add("bb", 2);

            Assert.AreEqual( 1, dictionary["aa"]);
            Assert.AreEqual(2, dictionary["bb"]);

            dictionary.Remove("aa");
            Assert.AreEqual(false, dictionary.Contains("aa"));

            foreach (DictionaryEntry entry in dictionary) {
                Assert.AreEqual(2, entry.Value);
                Assert.AreEqual("bb", entry.Key);
            }
        }
Пример #9
0
        public void DictionaryWrapperTest()
        {
            IDictionary <string, int> genericDict = new Dictionary <string, int>();

            genericDict.Add("aa", 1);
            IDictionary dictionary = new DictionaryWrapper <string, int>(genericDict);

            dictionary.Add("bb", 2);

            Assert.AreEqual(1, dictionary["aa"]);
            Assert.AreEqual(2, dictionary["bb"]);

            dictionary.Remove("aa");
            Assert.AreEqual(false, dictionary.Contains("aa"));

            foreach (DictionaryEntry entry in dictionary)
            {
                Assert.AreEqual(2, entry.Value);
                Assert.AreEqual("bb", entry.Key);
            }
        }