Beispiel #1
0
        /// <summary>
        /// Parse out the objects in the case array.  The structure is 
        ///   {
        ///      "cases" : [
        ///        {
        ///          "testActions" : [ ]
        ///          "age" : 0,
        ///          "className" : "System.IO.Tests.FileInfo_Open_fm",
        ///          "duration" : 0.0014904,
        ///          "errorDetails" : null,
        ///          "errorStackTrace" : null,
        ///          "failedSince" : 0,
        ///          "name" : "FileModeAppendExisting",
        ///          "skipped" : false,
        ///          "skippedMessage" : null,
        ///          "status" : "PASSED",
        ///          "stderr" : null,
        ///          "stdout" : null
        ///        },
        /// </summary>
        private static void ProcessSuite(JsonReader reader, List<string> list, Func<string, string, bool> statusFilter)
        {
            Debug.Assert(reader.TokenType == JsonToken.StartObject);

            var foundCases = false;
            while (reader.Read())
            {
                if (reader.IsProperty("cases"))
                {
                    foundCases = true;
                    break;
                }
            }

            if (!foundCases || !reader.Read(JsonToken.StartArray))
            {
                return;
            }

            ProcessCasesArray(reader, list, statusFilter);

            reader.ReadTillEndOfObject();
            reader.Read();
        }