public void Match_TestSimpleObjectWithList()
        {
            var regex = @"^(?<Id>\d+)"
                        + @",(?<Name>.+)"
                        + @",(?<Value>\d+(\.\d+)?)"
                        + @",(?<Enabled>(true|1|false|0))"
                        + @"(,(?<ExternalIds>\d+))*"
                        + @"$";
            var mapper   = new RegexMap <TestSimpleModel>(regex);
            var value    = "123,Bonjour,3.1415,true,4,5,6";
            var expected = new TestSimpleModel
            {
                Id          = 123,
                Name        = "Bonjour",
                Value       = 3.1415m,
                Enabled     = true,
                ExternalIds = new List <int>
                {
                    4, 5, 6
                }
            };
            var result = mapper.Match(value);

            expected.ShouldDeepEqual(result);
        }
示例#2
0
        public void DynamicSerializer_WriteReadArrayOfModels()
        {
            TestSimpleModel[] data = new TestSimpleModel[] {
                new TestSimpleModel()
                {
                    Data = "d1"
                },
                new TestSimpleModel()
                {
                    Data = "d2"
                },
                new TestSimpleModel()
                {
                    Data = "d3"
                },
                new TestSimpleModel()
                {
                    Data = "d4"
                },
            };

            DataBuffer b = new DataBuffer();

            DynamicSerializer.Instance.Write <TestSimpleModel[]>(b, data);

            b.Seek(0);
            var result = DynamicSerializer.Instance.Read <TestSimpleModel[]>(b);

            Assert.IsNotNull(result);
            Assert.AreEqual(result.Length, data.Length);
            for (int i = 0; i < result.Length; i++)
            {
                Assert.AreEqual(result[i].Data, data[i].Data);
            }
        }
        public void Match_TestSimpleObject()
        {
            var mapper =
                new RegexMap <TestSimpleModel>(
                    @"^(?<Id>\d+),(?<Name>.+),(?<Value>\d+(\.\d+)?),(?<Enabled>(true|false))$");
            var value    = "123,Bonjour,3.1415,true";
            var expected = new TestSimpleModel
            {
                Id          = 123,
                Name        = "Bonjour",
                Value       = 3.1415m,
                Enabled     = true,
                ExternalIds = null,
            };
            var result = mapper.Match(value);

            expected.ShouldDeepEqual(result);
        }