public void PASS_Serializer() { MissingFilter filter = new MissingFilter("field"); string json = JsonConvert.SerializeObject(filter); Assert.IsNotNull(json); string expectedJson = "{\"missing\":{\"field\":\"field\"}}"; Assert.AreEqual(expectedJson, json); }
public void PASS_CreateFilter() { MissingFilter filter = new MissingFilter("field"); Assert.IsNotNull(filter); Assert.AreEqual("field", filter.Field); Assert.AreEqual(false, filter.Existence); Assert.AreEqual(false, filter.NullValue); }
public void PASS_Serializer_Existence_NullValue() { MissingFilter filter = new MissingFilter("field") { Existence = true, NullValue = true }; string json = JsonConvert.SerializeObject(filter); Assert.IsNotNull(json); string expectedJson = "{\"missing\":{\"field\":\"field\",\"existence\":true,\"null_value\":true}}"; Assert.AreEqual(expectedJson, json); }
public void FAIL_CreateFilter_Field() { try { MissingFilter filter = new MissingFilter(null); Assert.Fail(); } catch (ArgumentNullException ex) { Assert.AreEqual("field", ex.ParamName); } }
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { Dictionary<string, object> fieldDict = serializer.Deserialize<Dictionary<string, object>>(reader); if (fieldDict.ContainsKey(FilterTypeEnum.Missing.ToString())) fieldDict = JsonConvert.DeserializeObject<Dictionary<string, object>>(fieldDict.First().Value.ToString()); MissingFilter filter = new MissingFilter(fieldDict.GetString(_FIELD)); filter.Existence = fieldDict.GetBool(_EXISTENCE, _EXISTENCE_DEFAULT); filter.NullValue = fieldDict.GetBool(_NULL_VALUE, _NULL_VALUE_DEFAULT); filter.CacheKey = fieldDict.GetStringOrDefault(FilterSerializer._CACHE_KEY); filter.FilterName = fieldDict.GetStringOrDefault(FilterSerializer._FILTER_NAME); return filter; }