public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { Dictionary<string, object> analyzerDict = serializer.Deserialize<Dictionary<string, object>>(reader); Dictionary<string, object> fieldDict = JsonConvert.DeserializeObject<Dictionary<string, object>>(analyzerDict.First().Value.ToString()); KeywordAnalyzer analyzer = new KeywordAnalyzer(analyzerDict.First().Key); AnalyzerBase.Deserialize(analyzer, fieldDict); return analyzer; }
public void PASS_Create() { KeywordAnalyzer analyzer = new KeywordAnalyzer("name") { Version = 4.6, }; Assert.IsNotNull(analyzer); Assert.AreEqual("name", analyzer.Name); Assert.AreEqual(4.6, analyzer.Version); }
public void PASS_Serialize() { KeywordAnalyzer analyzer = new KeywordAnalyzer("name") { Version = 4.6, }; string json = JsonConvert.SerializeObject(analyzer); Assert.IsNotNull(json); string expectedJson = "{\"name\":{\"type\":\"keyword\",\"version\":4.6}}"; Assert.AreEqual(expectedJson, json); }