Example #1
0
        public void GivenPropertyWithSpace_WhenGetMeasurements_ThenSingleMeasurementReturned_Test()
        {
            var time  = DateTime.UtcNow;
            var token = JToken.FromObject(new JsonWidget {
                MyProperty = "data", Time = time
            });

            var template = new JsonPathContentTemplate
            {
                TypeName            = "space",
                TypeMatchExpression = "$..[?(@['My Property'])]",
                DeviceIdExpression  = "$.['My Property']",
                TimestampExpression = "$.Time",
                Values = new List <JsonPathValueExpression>
                {
                    new JsonPathValueExpression {
                        ValueName = "prop", ValueExpression = "$.['My Property']", Required = false
                    },
                },
            };

            var result = template.GetMeasurements(token).ToArray();

            Assert.NotNull(result);
            Assert.Collection(result, m =>
            {
                Assert.Equal("space", m.Type);
                Assert.Equal(time, m.OccurrenceTimeUtc);
                Assert.Equal("data", m.DeviceId);
                Assert.Null(m.PatientId);
                Assert.Null(m.EncounterId);
                Assert.Null(m.CorrelationId);
                Assert.Collection(m.Properties, p =>
                {
                    Assert.Equal("prop", p.Name);
                    Assert.Equal("data", p.Value);
                });
            });
        }