Ejemplo n.º 1
0
        public void ReadHits_WithValidKustoResponse_ReturnsAllHitsParsed()
        {
            using var hitsTable = GetTestTable();

            var query = new QueryData("query", "index");

            var stubKustoResponse = new Mock <KustoResponseDataSet>();
            var kustoTableData    = new KustoResponseDataTable(hitsTable, WellKnownDataSet.PrimaryResult);
            var logger            = new Mock <ILogger <KustoResponseParser> >();

            stubKustoResponse.Setup(res => res["hits"]).Returns(kustoTableData);
            var kustoResponseParser = new KustoResponseParser(logger.Object, false, stubMetric);
            var result = kustoResponseParser.ReadHits(stubKustoResponse.Object, query).ToList();

            Assert.AreEqual(2, result.Count);

            Assert.AreEqual(result[0].Index, "index");
            Assert.AreEqual(result[1].Index, "index");

            var expectedHitSource1 = new JObject
            {
                { "column1", "r1c1" },
                { "column2", "r1c2" },
            };

            Assert.AreEqual(result[0].Source, expectedHitSource1);

            var expectedHitSource2 = new JObject
            {
                { "column1", "r2c1" },
                { "column2", "r2c2" },
            };

            Assert.AreEqual(result[1].Source, expectedHitSource2);
        }
Ejemplo n.º 2
0
        public void ReadHits_WithNoHitsInKustoResponse_ReturnsEmptyHits()
        {
            using var anyTable = GetTestTable();
            anyTable.TableName = "not_hits";

            var query = new QueryData("query", "index");

            var stubKustoResponse = new Mock <KustoResponseDataSet>();
            var logger            = new Mock <ILogger <KustoResponseParser> >();
            var kustoTableData    = new KustoResponseDataTable(anyTable, WellKnownDataSet.PrimaryResult);

            stubKustoResponse.SetupGet(ds => ds["no_hits"]).Returns(kustoTableData);
            var kustoResponseParser = new KustoResponseParser(logger.Object, false, stubMetric);

            var result = kustoResponseParser.ReadHits(stubKustoResponse.Object, query).ToList();

            Assert.AreEqual(0, result.Count);
        }