示例#1
0
        public void ValidateModel()
        {
            IEnumerable <SiteFormField> data = new List <SiteFormField> {
                new SiteFormField {
                    Name = "DATA[EDU_NAME]", Value = "Анатомия мышечной системы: практическое занятие на макете"
                },
                new SiteFormField {
                    Name = "DATA[NAME]", Value = "Илья"
                },
                new SiteFormField {
                    Name = "DATA[PHONE][]", Value = "89031453412"
                },
                new SiteFormField {
                    Name = "DATA[EMAIL][]", Value = "*****@*****.**"
                },
                new SiteFormField {
                    Name = "DATA[PRICE]", Value = ""
                }
            };

            var             map = new TypeAdapterConfig();
            Map_FormToModel m   = new Map_FormToModel(map);

            var controller = new SignUpController(map, null, null);

            var result = controller.GivenFromSiteForm(data);

            Assert.IsInstanceOfType(result.Result, typeof(OkResult));

            IEnumerable <SiteFormField> data2 = new List <SiteFormField> {
                new SiteFormField {
                    Name = "DATA[NAME]", Value = "Илья"
                },
                new SiteFormField {
                    Name = "DATA[EMAIL][]", Value = "*****@*****.**"
                }
            };

            var controller2 = new SignUpController(map, null, null);

            dynamic result2 = controller.GivenFromSiteForm(data2);

            Assert.IsInstanceOfType(result2.Result, typeof(BadRequestObjectResult));

            Assert.AreEqual(result2.Result.Value.Count, 1);

            Assert.AreEqual(result2.Result.Value["Данные формы"][0], "Не указан телефон пользователя");
        }
示例#2
0
        public void MapModel()
        {
            IEnumerable <SiteFormField> fullData = new List <SiteFormField> {
                new SiteFormField {
                    Name = "pay", Value = "some value"
                },
                new SiteFormField {
                    Name = "ID", Value = "6868"
                },
                new SiteFormField {
                    Name = "DATA[EDU_NAME]", Value = "Анатомия мышечной системы: практическое занятие на макете"
                },
                new SiteFormField {
                    Name = "DATA[EDU_TYPE]", Value = "Дистанционное"
                },
                new SiteFormField {
                    Name = "DATA[PRICE]", Value = "15000"
                },
                new SiteFormField {
                    Name = "TYPE", Value = "Семинары"
                },
                new SiteFormField {
                    Name = "GUID_EVENT", Value = "654654-987"
                },
                new SiteFormField {
                    Name = "DATA[SUBJECT]", Value = "F"
                },
                new SiteFormField {
                    Name = "DATA[NAME]", Value = "Илья"
                },
                new SiteFormField {
                    Name = "DATA[PHONE][]", Value = "89031453412"
                },
                new SiteFormField {
                    Name = "DATA[EMAIL][]", Value = "*****@*****.**"
                },
                new SiteFormField {
                    Name = "DATA[CITY]", Value = "Москва"
                },
                new SiteFormField {
                    Name = "DATA[DATE]", Value = "18.02.2019"
                },
                new SiteFormField {
                    Name = "DATA[AGREE]", Value = "1"
                },
                new SiteFormField {
                    Name = "sessid", Value = "18bdeb34311d9a1b884127f52f4e9b77"
                }
            };

            var             map = new TypeAdapterConfig();
            Map_FormToModel m   = new Map_FormToModel(map);

            var model = fullData.Adapt <SiteFormModel>(map);

            Assert.AreEqual(model.Contact.City, "Москва");
            Assert.AreEqual(model.Contact.Email, "*****@*****.**");
            Assert.AreEqual(model.Contact.Name, "Илья");
            Assert.AreEqual(model.Contact.Phone, "89031453412");

            Assert.AreEqual(model.Lead.Agree, true);
            Assert.AreEqual(model.Lead.Date, new DateTime(2019, 2, 18));
            Assert.AreEqual(model.Lead.EducationForm, "Дистанционное");
            Assert.AreEqual(model.Lead.EducationType, "Семинары");
            Assert.AreEqual(model.Lead.Guid, "654654-987");
            Assert.AreEqual(model.Lead.isPerson, true);
            Assert.AreEqual(model.Lead.Name, "Анатомия мышечной системы: практическое занятие на макете");
            Assert.AreEqual(model.Lead.Pay, "some value");
            Assert.AreEqual(model.Lead.Price, 15000);


            IEnumerable <SiteFormField> minData = new List <SiteFormField>();

            var model2 = minData.Adapt <SiteFormModel>(map);

            Assert.AreEqual(model2.Lead.Agree, false);
            Assert.AreEqual(model2.Lead.Price, 0);
            Assert.AreEqual(model2.Lead.Name, null);
            Assert.AreEqual(model2.Lead.Date, default(DateTime));
        }