public void ParsingSpecialUnicodeCharacter()
        {
            var jsonObjectDict = new Dictionary <string, JsonValue>();

            jsonObjectDict.Add("Test", JsonStringValue.FromString("/\b\f\n\r\t\"\\\ud834\uDD1E"));
            Assert.That(JsonObjectValue.FromDictionary(jsonObjectDict).ToString(), Is.EqualTo("{\"Test\":\"\\/\\b\\f\\n\\r\\t\\\"\\\\𝄞\"}"));
        }
Esempio n. 2
0
        public void AddOverridableAttributeWhichIsNotAvailable()
        {
            EventPayloadBuilder builder = new EventPayloadBuilder(new Dictionary <string, JsonValue>(), mockLogger);

            builder.AddOverridableAttribute("Overridable", JsonStringValue.FromString("Changed"));

            Assert.That(builder.Build(), Is.EqualTo("{\"Overridable\":\"Changed\"}"));
        }
Esempio n. 3
0
        public void SingleElementListJsonString()
        {
            ICollection <JsonValue> list = new Collection <JsonValue>();

            list.Add(JsonStringValue.FromString("Test"));

            Assert.That(JsonArrayValue.FromList(list).ToString(), Is.EqualTo("[\"Test\"]"));
        }
        public void MultipleElementObjectJsonString()
        {
            // given
            var jsonObjectDict = new Dictionary <string, JsonValue>();

            jsonObjectDict.Add("Test", JsonBooleanValue.FromValue(false));
            jsonObjectDict.Add("Test2", JsonStringValue.FromString("Value"));

            Assert.That(JsonObjectValue.FromDictionary(jsonObjectDict).ToString(), Is.EqualTo("{\"Test\":false,\"Test2\":\"Value\"}"));
        }
Esempio n. 5
0
        public void AddOverridableAttributeWhichIsAlreadyAvailable()
        {
            Dictionary <string, JsonValue> dict = new Dictionary <string, JsonValue>();

            dict.Add("timestamp", JsonStringValue.FromString("Changed"));

            EventPayloadBuilder builder = new EventPayloadBuilder(dict, mockLogger);

            builder.AddOverridableAttribute("timestamp", JsonStringValue.FromString("ComingFromAgent"));

            Assert.That(builder.Build(), Is.EqualTo("{\"timestamp\":\"Changed\",\"dt.overridden_keys\":[\"timestamp\"]}"));
        }
Esempio n. 6
0
        public void AddNonOverridableAttributeWhichIsAlreadyAvailable()
        {
            Dictionary <string, JsonValue> dict = new Dictionary <string, JsonValue>();

            dict.Add("dt.sid", JsonStringValue.FromString("MySession"));

            EventPayloadBuilder builder = new EventPayloadBuilder(dict, mockLogger);

            builder.AddNonOverridableAttribute("dt.sid", JsonStringValue.FromString("ComingFromAgent"));

            Assert.That(builder.Build(), Is.EqualTo("{\"dt.sid\":\"ComingFromAgent\"}"));
        }
Esempio n. 7
0
        public void RemovingReservedValuesAtInitializing()
        {
            Dictionary <string, JsonValue> dict = new Dictionary <string, JsonValue>();

            dict.Add("dt", JsonStringValue.FromString("Removed"));
            dict.Add("dt.hello", JsonStringValue.FromString("Removed"));
            dict.Add("dt.type", JsonStringValue.FromString("Okay"));

            EventPayloadBuilder builder = new EventPayloadBuilder(dict, mockLogger);

            Assert.That(builder.Build(), Is.EqualTo("{\"dt.type\":\"Okay\"}"));
        }
Esempio n. 8
0
        public EventPayloadBuilder AddOverridableAttribute(string key, JsonValue value)
        {
            if (value != null)
            {
                if (attributes.ContainsKey(key))
                {
                    overriddenKeys.Add(JsonStringValue.FromString(key));
                }
                else
                {
                    attributes[key] = value;
                }
            }

            return(this);
        }
Esempio n. 9
0
        public void SendBizEventWithValidPayload()
        {
            // given
            var          target    = CreateSession().Build();
            const string eventType = "SomeType";

            Dictionary <string, JsonValue> attributes = new Dictionary <string, JsonValue>();

            attributes.Add("value", JsonStringValue.FromString("Test"));

            // when
            target.SendBizEvent(eventType, attributes);

            // then
            mockLogger.Received(1).Debug($"{target} SendBizEvent({eventType},{attributes})");
            mockBeacon.Received(1).SendBizEvent("SomeType", attributes);
        }
Esempio n. 10
0
        /// <summary>
        ///     Helper method for converting a simple JSON token to a JSON value.
        /// </summary>
        /// <param name="token">the token to convert to a JSON value</param>
        /// <returns>the converted JSON value</returns>
        private static JsonValue TokenToSimpleJsonValue(JsonToken token)
        {
            switch (token.TokenType)
            {
            case JsonTokenType.LITERAL_NULL:
                return(JsonNullValue.Null);

            case JsonTokenType.LITERAL_BOOLEAN:
                return(JsonBooleanValue.FromLiteral(token.Value));

            case JsonTokenType.VALUE_STRING:
                return(JsonStringValue.FromString(token.Value));

            case JsonTokenType.VALUE_NUMBER:
                return(JsonNumberValue.FromNumberLiteral(token.Value));

            default:
                throw new JsonParserException($"Internal parser error: Unexpected JSON token \"{token}\"");
            }
        }
Esempio n. 11
0
 public void ValueReturnsValueOfFromStringMethod()
 {
     Assert.That(JsonStringValue.FromString("").Value, Is.EqualTo(""));
     Assert.That(JsonStringValue.FromString("a").Value, Is.EqualTo("a"));
     Assert.That(JsonStringValue.FromString("foobar").Value, Is.EqualTo("foobar"));
 }
Esempio n. 12
0
 public void FromStringReturnsNullIfArgumentIsNull()
 {
     Assert.That(JsonStringValue.FromString(null), Is.Null);
 }
Esempio n. 13
0
 public void IsStringType()
 {
     Assert.That(JsonStringValue.FromString("").ValueType, Is.EqualTo(JsonValueType.STRING));
 }
 public void AnyValueJsonString()
 {
     Assert.That(JsonStringValue.FromString("Test").ToString(), Is.EqualTo("\"Test\""));
 }
 public void EmptyValueJsonString()
 {
     Assert.That(JsonStringValue.FromString("").ToString(), Is.EqualTo("\"\""));
 }