Beispiel #1
0
        public void FromDataContractValid()
        {
            var extraFields = new Dictionary <string, Object>
            {
                { IntFieldName, (Int64)0 },
                { FloatFieldName, (Double)0.0 },
                { StringFieldName, "" },
                { DateFieldName, "2000-01-10" },
                { TimeFieldName, "10:09:08" },
                { EnumFieldName, EnumValueA }
            };
            var pointDataContract = new PointWithIdDataContract
            {
                Id    = SampleGuid,
                TagId = CompleteTag.Id,
                Date  = SampleDate,
                Extra = extraFields
            };
            var point = Point.FromDataContract(pointDataContract, AllTags);

            Assert.Equal(point.Id, pointDataContract.Id);
            Assert.Equal(point.TagId, CompleteTag.Id);
            Assert.Equal(point.Date.DateTime, new DateTime(2000, 10, 1));
            var pointJsonExtraList = pointDataContract.Extra.Keys.ToList();

            pointJsonExtraList.Sort();
            var pointExtraList = point.Extra.Keys.ToList();

            pointExtraList.Sort();
            Assert.Equal(pointJsonExtraList, pointExtraList);
        }
Beispiel #2
0
        public void FromDataContractUnknownTag()
        {
            var pointDataContract = new PointWithIdDataContract
            {
                Id    = SampleGuid,
                TagId = "unknownTag",
                Date  = SampleDate,
                Extra = new Dictionary <string, Object>()
            };

            Assert.Throws <PointValidationException>(
                () => Point.FromDataContract(pointDataContract, AllTags));
        }
Beispiel #3
0
        public void FromDataContractMissingProperty()
        {
            var pointDataContract = new PointWithIdDataContract
            {
                Id    = SampleGuid,
                TagId = CompleteTag.Id,
                Date  = SampleDate,
                Extra = new Dictionary <string, Object>()
            };

            Assert.Throws <PointValidationException>(
                () => Point.FromDataContract(pointDataContract, AllTags));
        }
Beispiel #4
0
        public void FromDataContractUnknownProperty()
        {
            var pointDataContract = new PointWithIdDataContract
            {
                Id    = SampleGuid,
                TagId = EmptyTag.Id,
                Date  = SampleDate,
                Extra = new Dictionary <string, Object>
                {
                    { "unknownField", "value" }
                }
            };

            Assert.Throws <PointValidationException>(
                () => Point.FromDataContract(pointDataContract, AllTags));
        }
Beispiel #5
0
 public static Point FromDataContract(
     PointWithIdDataContract input, Dictionary <string, Tag> tags)
 {
     return(FromFields(input.Id, input.TagId, input.Date, input.Extra, tags));
 }