public void CanDeserializeErrorsField()
        {
            var msg = new Message("Dummy");

            msg.AddError("error1");
            msg.AddError("error2");

            var str          = UnityTestProtocolMessageBuilder.Serialize(msg);
            var deserialized = UnityTestProtocolMessageBuilder.Deserialize(str);

            Assert.That(deserialized.GetErrors(), Is.EqualTo(new[] { "error1", "error2" }));
        }
        public void FieldsSerializedInCertainOrder()
        {
            var msg = new Message("Dummy");

            msg["ykey"] = "y";
            msg["xkey"] = "x";

            var str          = UnityTestProtocolMessageBuilder.Serialize(msg);
            var deserialized = UnityTestProtocolMessageBuilder.Deserialize(str);

            var keys = deserialized.data.Keys.Cast <string>();

            Assert.That(keys.Skip(keys.Count() - 2), Is.EqualTo(new[] { "ykey", "xkey" }));
        }
        public void CanDeserializeMessageStartsWithEndOfLine()
        {
            var msg = new Message("Dummy");

            msg["ykey"] = "y";
            msg["xkey"] = "x";

            var str          = UnityTestProtocolMessageBuilder.Serialize(msg);
            var deserialized = UnityTestProtocolMessageBuilder.Deserialize($"\n{str}");

            var keys = deserialized.data.Keys.Cast <string>();

            Assert.That(keys.Skip(keys.Count() - 2), Is.EqualTo(new[] { "ykey", "xkey" }));
        }
Exemple #4
0
        public static IEnumerable <Message> Read(TextReader reader, Predicate <Message> predicate)
        {
            string line;

            while ((line = reader.ReadLine()) != null)
            {
                if (line.StartsWith("##utp:"))
                {
                    var message = UnityTestProtocolMessageBuilder.Deserialize(line);
                    if (predicate(message))
                    {
                        yield return(message);
                    }
                }
            }
        }
Exemple #5
0
        private Message ProcessTestOutput(XmlNode testEvent)
        {
            var stream = testEvent.Attributes ? ["stream"];

            if (stream == null || stream.Value != "Out" && stream.Value != "Progress" && stream.Value != "Error")
            {
                return(WarningMessage.Create($"Unexpected test-output event: {testEvent.OuterXml}"));
            }

            if (testEvent.InnerText.StartsWith("##utp"))
            {
                return(UnityTestProtocolMessageBuilder.Deserialize(testEvent.InnerText));
            }

            if (stream.Value == "Error")
            {
                return(ErrorMessage.Create(testEvent.InnerText.TrimEnd()));
            }

            return(InfoMessage.Create(testEvent.InnerText.TrimEnd()));
        }