Ejemplo n.º 1
0
        public void Check12CreateResetDtoOk()
        {
            using (var db = new SampleWebAppDb())
            {
                //SETUP
                var service = new CreateService(db);
                var dto     = new DetailPostDto();

                //ATTEMPT
                service.ResetDto(dto);

                //VERIFY
                dto.Bloggers.ShouldNotEqualNull();
                dto.Bloggers.KeyValueList.Count.ShouldNotEqual(0);
            }
        }
        public void Check26UpdateServiceResetWorksOk()
        {
            using (var db = new SampleWebAppDb())
            {
                //SETUP
                var service = new UpdateService <Post, DetailPostDto>(db);

                //ATTEMPT
                var dto = new DetailPostDto();
                service.ResetDto(dto);

                //VERIFY
                dto.Bloggers.KeyValueList.Count.ShouldEqual(db.Blogs.Count() + 1);
                dto.UserChosenTags.AllPossibleOptions.Count.ShouldEqual(db.Tags.Count());
            }
        }
Ejemplo n.º 3
0
        public ActionResult Create(DetailPostDto dto, ICreateService service)
        {
            if (!ModelState.IsValid)
                //model errors so return immediately
                return View(service.ResetDto(dto));

            var response = service.Create(dto);
            if (response.IsValid)
            {
                TempData["message"] = response.SuccessMessage;
                return RedirectToAction("Index");
            }

            //else errors, so copy the errors over to the ModelState and return to view
            response.CopyErrorsToModelState(ModelState, dto);
            return View(dto);
        }
Ejemplo n.º 4
0
        public ActionResult Edit(DetailPostDto dto, IUpdateService service)
        {
            if (!ModelState.IsValid)
            {
                //model errors so return immediately
                return(View(service.ResetDto(dto)));
            }

            var response = service.Update(dto);

            if (response.IsValid)
            {
                TempData["message"] = response.SuccessMessage;
                return(RedirectToAction("Index"));
            }

            //else errors, so copy the errors over to the ModelState and return to view
            response.CopyErrorsToModelState(ModelState, dto);
            return(View(dto));
        }
Ejemplo n.º 5
0
        public void Check10PostCopyKeysBackToDtoOk()
        {
            using (var db = new SampleWebAppDb())
            {
                //SETUP
                var timer = new Stopwatch();
                var post  = new Post {
                    PostId = 123
                };
                var dto = new DetailPostDto();

                //ATTEMPT
                timer.Start();
                dto.AfterCreateCopyBackKeysToDtoIfPresent(db, post);
                timer.Stop();

                Console.WriteLine("took {0:f3} ms", 1000.0 * timer.ElapsedTicks / Stopwatch.Frequency);
                //VERIFY
                dto.PostId.ShouldEqual(post.PostId);
            }
        }
        public void Check10PostCopyKeysBackToDtoOk()
        {
            using (var db = new SampleWebAppDb())
            {
                //SETUP
                var timer = new Stopwatch();
                var post = new Post{PostId = 123};
                var dto = new DetailPostDto();

                //ATTEMPT
                timer.Start();
                dto.AfterCreateCopyBackKeysToDtoIfPresent(db, post);
                timer.Stop();

                Console.WriteLine("took {0:f3} ms", 1000.0 * timer.ElapsedTicks / Stopwatch.Frequency);
                //VERIFY
                dto.PostId.ShouldEqual(post.PostId);
            }
        }
        public void Check26UpdateServiceResetWorksOk()
        {

            using (var db = new SampleWebAppDb())
            {
                //SETUP
                var service = new UpdateService<Post, DetailPostDto>(db);

                //ATTEMPT
                var dto = new DetailPostDto();
                service.ResetDto(dto);

                //VERIFY
                dto.Bloggers.KeyValueList.Count.ShouldEqual(db.Blogs.Count() + 1);
                dto.UserChosenTags.AllPossibleOptions.Count.ShouldEqual(db.Tags.Count());
            }
        }
        public void Check12CreateResetDtoOk()
        {
            using (var db = new SampleWebAppDb())
            {
                //SETUP
                var service = new CreateService(db);
                var dto = new DetailPostDto();

                //ATTEMPT
                service.ResetDto(dto);

                //VERIFY
                dto.Bloggers.ShouldNotEqualNull();
                dto.Bloggers.KeyValueList.Count.ShouldNotEqual(0);
            }
        }