public JsonDict ToJson() { var dict = new JsonDict(); // Strings if (HumanReadable != null) { dict["HumanReadable"] = HumanReadable; } if (Icon != null) { dict["Icon"] = Icon; } if (PropName != null) { dict["PropName"] = PropName; } // Functions if (UrlFunction != null) { dict["UrlFunction"] = new JsonRaw(UrlFunction); } if (ShowIconFunction != null) { dict["ShowIconFunction"] = new JsonRaw(ShowIconFunction); } return(dict); }
public void Create() { JsonRaw raw = new JsonRaw("Test"); Assert.AreEqual("Test", raw.Content); Assert.AreEqual("Test", raw.ToString()); }
public void GetHashCodeShouldEqualOnSameContent() { JsonRaw r1 = new JsonRaw("Test"); JsonRaw r2 = new JsonRaw("Test"); JsonRaw r3 = new JsonRaw("Test1"); Assert.AreEqual(r1.GetHashCode(), r2.GetHashCode()); Assert.AreNotEqual(r1.GetHashCode(), r3.GetHashCode()); }
public void EqualsShouldEqualOnSameContent() { JsonRaw r1 = new JsonRaw("Test"); JsonRaw r2 = new JsonRaw("Test"); Assert.AreEqual(r1, r2); Assert.AreNotEqual(r1, null); Assert.IsFalse(r1.Equals(null)); }
private void CreateUnloadFile(DataBus dataBus, string releaseName, string unloadName) { JSCodeRunner codeRunner = new JSCodeRunner(); codeRunner.Include("JSCode\\JsonEncode.js"); codeRunner.Include("JSCode\\CreateUnloadRecord.js"); string codeToRun = " return CreateUnloadRecord(\"" + unloadName + "\",\"" + releaseName + "\");"; JsonRaw unloadEntity = codeRunner.Run <JsonRaw>(dataBus, codeToRun); }
private object CreateValue(JsonReader reader, Type objectType, object existingValue, JsonConverter memberConverter) { JsonConverter converter; if (memberConverter != null) { return(memberConverter.ReadJson(reader, objectType, GetInternalSerializer())); } if (objectType != null && Serializer.HasClassConverter(objectType, out converter)) { return(converter.ReadJson(reader, objectType, GetInternalSerializer())); } if (objectType != null && Serializer.HasMatchingConverter(objectType, out converter)) { return(converter.ReadJson(reader, objectType, GetInternalSerializer())); } if (objectType == typeof(JsonRaw)) { return(JsonRaw.Create(reader)); } do { switch (reader.TokenType) { // populate a typed object or generic dictionary/array // depending upon whether an objectType was supplied case JsonToken.StartObject: return(CreateObject(reader, objectType, existingValue)); case JsonToken.StartArray: return(CreateList(reader, objectType, existingValue, null)); case JsonToken.Integer: case JsonToken.Float: case JsonToken.String: case JsonToken.Boolean: case JsonToken.Date: // convert empty string to null automatically if (reader.Value is string && string.IsNullOrEmpty((string)reader.Value) && objectType != null && ReflectionUtils.IsNullable(objectType)) { return(null); } return(EnsureType(reader.Value, objectType)); case JsonToken.StartConstructor: case JsonToken.EndConstructor: string constructorName = reader.Value.ToString(); return(constructorName); case JsonToken.Null: case JsonToken.Undefined: if (objectType == typeof(DBNull)) { return(DBNull.Value); } return(null); case JsonToken.Comment: // ignore break; default: throw new JsonSerializationException("Unexpected token while deserializing object: " + reader.TokenType); } } while (reader.Read()); throw new JsonSerializationException("Unexpected end when deserializing object."); }