public async void Check11CreatePostOk() { using (var db = new SampleWebAppDb()) { //SETUP var snap = new DbSnapShot(db); var service = new CreateServiceAsync <Post, DetailPostDtoAsync>(db); var setupService = new CreateSetupServiceAsync <Post, DetailPostDtoAsync>(db); //ATTEMPT var dto = await setupService.GetDtoAsync(); dto.Title = Guid.NewGuid().ToString(); dto.Content = "something to fill it as can't be empty"; dto.Bloggers.SelectedValue = db.Blogs.First().BlogId.ToString("D"); dto.UserChosenTags.FinalSelection = db.Tags.OrderBy(x => x.TagId).Take(2).ToList().Select(x => x.TagId.ToString("D")).ToArray(); var status = await service.CreateAsync(dto); //VERIFY status.IsValid.ShouldEqual(true, status.Errors); snap.CheckSnapShot(db, 1, 2); var post = db.Posts.Include(x => x.Tags).OrderByDescending(x => x.PostId).First(); post.Title.ShouldEqual(dto.Title); post.BlogId.ShouldEqual(db.Blogs.First().BlogId); CollectionAssert.AreEqual(db.Tags.OrderBy(x => x.TagId).Take(2).Select(x => x.TagId), post.Tags.Select(x => x.TagId)); } }
public async void Perf11CreatePostOk() { using (var db = new SampleWebAppDb()) { //SETUP var service = new CreateServiceAsync <Post, DetailPostDtoAsync>(db); var setupService = new CreateSetupServiceAsync <Post, DetailPostDtoAsync>(db); //ATTEMPT var dto = await setupService.GetDtoAsync(); dto.Title = Guid.NewGuid().ToString(); dto.Content = "something to fill it as can't be empty"; dto.Bloggers.SelectedValue = db.Blogs.First().BlogId.ToString("D"); dto.UserChosenTags.FinalSelection = db.Tags.Take(2).ToList().Select(x => x.TagId.ToString("D")).ToArray(); var status = await service.CreateAsync(dto); dto.LogSpecificName("End"); //VERIFY status.IsValid.ShouldEqual(true, status.Errors); foreach (var log in dto.LogOfCalls) { Console.WriteLine(log); } } }
public async Task Check10CreateSetupDtoOk() { using (var db = new SampleWebAppDb()) { //SETUP var service = new CreateSetupServiceAsync(db); //ATTEMPT var result = await service.GetDtoAsync <SimplePostDtoAsync>(); //VERIFY result.ShouldNotEqualNull(); } }
public async void Check01CreateSetupFlowOk() { using (var db = new SampleWebAppDb()) { //SETUP var service = new CreateSetupServiceAsync <Tag, SimpleTagDtoAsync>(db); //ATTEMPT var dto = await service.GetDtoAsync(); //VERIFY dto.FunctionsCalledCommaDelimited.ShouldEqual("SetupSecondaryDataAsync"); } }
public async void Check01CreateSetupFlowOk() { using (var db = new SampleWebAppDb()) { //SETUP var service = new CreateSetupServiceAsync<Tag, SimpleTagDtoAsync>(db); //ATTEMPT var dto = await service.GetDtoAsync(); //VERIFY dto.FunctionsCalledCommaDelimited.ShouldEqual("SetupSecondaryDataAsync"); } }
public async void Check10CreateSetupServiceOk() { using (var db = new SampleWebAppDb()) { //SETUP var service = new CreateSetupServiceAsync <Post, DetailPostDtoAsync>(db); //ATTEMPT var dto = await service.GetDtoAsync(); //VERIFY dto.Bloggers.KeyValueList.Count.ShouldEqual(db.Blogs.Count() + 1); dto.UserChosenTags.AllPossibleOptions.Count.ShouldEqual(db.Tags.Count()); } }
public async void Perf10CreateSetupServiceOk() { using (var db = new SampleWebAppDb()) { //SETUP var service = new CreateSetupServiceAsync <Post, DetailPostDtoAsync>(db); //ATTEMPT var dto = await service.GetDtoAsync(); dto.LogSpecificName("End"); //VERIFY foreach (var log in dto.LogOfCalls) { Console.WriteLine(log); } } }
public async void Check13CreateFailRunsSetupSecondaryDataAgainOk() { using (var db = new SampleWebAppDb()) { //SETUP var service = new CreateServiceAsync <Post, DetailPostDtoAsync>(db); var setupService = new CreateSetupServiceAsync <Post, DetailPostDtoAsync>(db); //ATTEMPT var dto = await setupService.GetDtoAsync(); dto.Title = Guid.NewGuid().ToString(); dto.Content = null; //this will fail dto.Bloggers.SelectedValue = db.Blogs.First().BlogId.ToString("D"); dto.UserChosenTags.FinalSelection = db.Tags.Take(2).ToList().Select(x => x.TagId.ToString("D")).ToArray(); var status = await service.CreateAsync(dto); //VERIFY status.IsValid.ShouldEqual(false); dto.Bloggers.KeyValueList.Count.ShouldEqual(db.Blogs.Count() + 1); dto.UserChosenTags.AllPossibleOptions.Count.ShouldEqual(db.Tags.Count()); } }
public async void Perf10CreateSetupServiceOk() { using (var db = new SampleWebAppDb()) { //SETUP var service = new CreateSetupServiceAsync<Post, DetailPostDtoAsync>(db); //ATTEMPT var dto = await service.GetDtoAsync(); dto.LogSpecificName("End"); //VERIFY foreach (var log in dto.LogOfCalls) { Console.WriteLine(log); } } }
public async void Perf11CreatePostOk() { using (var db = new SampleWebAppDb()) { //SETUP var service = new CreateServiceAsync<Post, DetailPostDtoAsync>(db); var setupService = new CreateSetupServiceAsync<Post, DetailPostDtoAsync>(db); //ATTEMPT var dto = await setupService.GetDtoAsync(); dto.Title = Guid.NewGuid().ToString(); dto.Content = "something to fill it as can't be empty"; dto.Bloggers.SelectedValue = db.Blogs.First().BlogId.ToString("D"); dto.UserChosenTags.FinalSelection = db.Tags.Take(2).ToList().Select(x => x.TagId.ToString("D")).ToArray(); var status = await service.CreateAsync(dto); dto.LogSpecificName("End"); //VERIFY status.IsValid.ShouldEqual(true, status.Errors); foreach (var log in dto.LogOfCalls) { Console.WriteLine(log); } } }
public async Task Check10CreateSetupDtoOk() { using (var db = new SampleWebAppDb()) { //SETUP var service = new CreateSetupServiceAsync(db); //ATTEMPT var result = await service.GetDtoAsync<SimplePostDtoAsync>(); //VERIFY result.ShouldNotEqualNull(); } }