public void async_crud_process_succeeds() { var entityId = 707; var userStatus = _fixture.PubsDbContext.ApplicationUserStatuses.FirstOrDefault(x => x.Id == 1001); var entity = new ApplicationUser(new DateTime(2021, 08, 15)) { Id = entityId, UserName = "******", UserPrincipalName = "*****@*****.**", FirstName = "User", MiddleName = "J.", LastName = "Test", EmailAddress = "*****@*****.**", PhoneNumber = "3039876543" }; entity.UpdateApplicationUserStatus(userStatus); var savedEntity = _repository.AddAsync(entity).Result; var updatedEntity = _repository.GetByIdAsync(entity.Id).Result; using (new AssertionScope()) { savedEntity.Should().NotBeNull(); savedEntity.Id.Should().Be(entityId); savedEntity.FirstName.Should().Be("User"); savedEntity.PhoneNumber.Should().Be("3039876543"); savedEntity.IsActive.Should().BeTrue(); updatedEntity.Should().NotBeNull(); updatedEntity.Id.Should().Be(entityId); updatedEntity.FirstName.Should().Be("User"); updatedEntity.PhoneNumber.Should().Be("3039876543"); updatedEntity.FirstName = "UnitUnit"; updatedEntity.LastName = "LastName"; _ = _repository.UpdateAsync(updatedEntity); updatedEntity = _repository.GetByIdAsync(updatedEntity.Id).Result; updatedEntity.FirstName.Should().Be("UnitUnit"); updatedEntity.LastName.Should().Be("LastName"); _ = _repository.DeleteAsync(updatedEntity); _repository.GetByIdAsync(entityId).Result.Should().BeNull(); } }
public bool CreateDefaults() { //bool AnswerRepositoryIsEmpty = AnswerRepository.Select().Count() == 0; //bool AnswerRepositoryIsEmpty = AnswerRepository.FindBy(item=>item.Description=="zzzz").Count() == 0; bool AnswerRepositoryIsEmpty = AnswerRepository.FindAllAsync().GetAwaiter().GetResult().Count() == 0; if (AnswerRepositoryIsEmpty == false) { return(false); } bool CategoryRepositoryIsEmpty = CategoryRepository.FindAllAsync().GetAwaiter().GetResult().Count() == 0; bool EarningRepositoryIsEmpty = EarningRepository.FindAllAsync().GetAwaiter().GetResult().Count() == 0; bool QuestionRepositoryIsEmpty = QuestionRepository.FindAllAsync().GetAwaiter().GetResult().Count() == 0; bool TagRepositoryIsEmpty = TagRepository.FindAllAsync().GetAwaiter().GetResult().Count() == 0; //bool ApplicationUserRepositoryIsEmpty = ApplicationUserRepository.All().Count() == 0; bool ApplicationUserRepositoryIsEmpty = ApplicationUserRepository.FindAllAsync().GetAwaiter().GetResult().Count() == 0; ////aboutIsEmpty = false; //if (CategoryRepositoryIsEmpty == false) return false; if (CategoryRepositoryIsEmpty) { try { string[] categoryNames = new string[] { "Categoryname1", "Categoryname2" }; foreach (var item in categoryNames) { var newItem = new Category { CreatedDate = DateTime.Now, UpdatedDate = DateTime.Now, Name = item, ImageOrIcon = "https://img.icons8.com/nolan/64/bug.png" }; CategoryRepository.AddAsync(newItem).GetAwaiter().GetResult(); } Commit(); } catch (Exception e) { throw e; Console.WriteLine("{0} Exception caught.", e.Message); } } if (TagRepositoryIsEmpty) { try { string[] tagNames = new string[] { "tag1", "tag2", "tag3", "tag4" }; foreach (var item in tagNames) { var newItem = new Tag { CreatedDate = DateTime.Now, UpdatedDate = DateTime.Now, Name = item }; TagRepository.AddAsync(newItem).GetAwaiter().GetResult(); } Commit(); } catch (Exception e) { throw e; Console.WriteLine("{0} Exception caught.", e.Message); } } if (ApplicationUserRepositoryIsEmpty) { try { string[] userNames = new string[] { "User1", "User2", "User3", "User4" }; foreach (var item in userNames) { var newItem = new ApplicationUser { Id = Guid.NewGuid().ToString(), CreatedDate = DateTime.Now, UpdatedDate = DateTime.Now, FacebookName = item, ProfilePicture = "SeedPicture", ProfilePictureWeb = "https://img.icons8.com/nolan/64/user.png", ConcurrencyStamp = Guid.NewGuid().ToString(), SecurityStamp = Guid.NewGuid().ToString("N").ToUpper(), NormalizedEmail = item.ToLower() + "@asqme.com", Email = item.ToLower() + "@asqme.com", NormalizedUserName = item.ToLower() + "@asqme.com", UserName = item.ToLower() + "@asqme.com", }; //var newItem2 = new ApplicationUser //{ // CreatedDate = DateTime.Now, // UpdatedDate = DateTime.Now, // FacebookName = "FacebookName", // ProfilePicture = "SeedPicture", // ProfilePictureWeb = "https://img.icons8.com/nolan/64/user.png", // ConcurrencyStamp = Guid.NewGuid().ToString(), // SecurityStamp = Guid.NewGuid().ToString(), // NormalizedEmail = AppSettings.Value.AdminEmail, // Email = AppSettings.Value.AdminEmail, // NormalizedUserName = AppSettings.Value.AdminEmail, // UserName = AppSettings.Value.AdminEmail, //}; ApplicationUserRepository.AddAsync(newItem).GetAwaiter().GetResult(); //UserManager.CreateAsync(newItem2).GetAwaiter().GetResult(); } Commit(); } catch (Exception e) { throw e; Console.WriteLine("{0} Exception caught.", e.Message); } } if (QuestionRepositoryIsEmpty) { try { var users = ApplicationUserRepository.FindAllAsync().GetAwaiter().GetResult().ToList(); var tags = TagRepository.FindAllAsync().GetAwaiter().GetResult().ToList(); var categories = CategoryRepository.FindAllAsync().GetAwaiter().GetResult().ToList(); foreach (var item in tags) { var newItem = new Question { CreatedDate = DateTime.Now, UpdatedDate = DateTime.Now, Title = "Question Title", Description = "Question Description", ApplicationUserId = users[new Random().Next(0, users.Count() - 1)].Id, SolverAnswerId = int.MinValue, CategoryId = categories[new Random().Next(0, categories.Count() - 1)].Id }; QuestionRepository.AddAsync(newItem).GetAwaiter().GetResult(); //Commit(); //Id = QuestionTagRepository.All().Count() + 1, //CreatedDate = DateTime.Now, //UpdatedDate = DateTime.Now, var newItem2 = new QuestionTag { QuestionId = newItem.Id, TagId = tags[new Random().Next(0, tags.Count() - 1)].Id }; QuestionTagRepository.AddAsync(newItem2).GetAwaiter().GetResult(); } Commit(); } catch (Exception e) { throw e; Console.WriteLine("{0} Exception caught.", e.Message); } } if (AnswerRepositoryIsEmpty) { var users = ApplicationUserRepository.FindAllAsync().GetAwaiter().GetResult().ToList(); var questions = QuestionRepository.FindAllAsync().GetAwaiter().GetResult().ToList(); try { foreach (var item in questions) { var newItem = new Answer { CreatedDate = DateTime.Now, UpdatedDate = DateTime.Now, QuestionId = item.Id, ApplicationUserId = users[new Random().Next(0, users.Count() - 1)].Id, Description = "Answer Description" }; AnswerRepository.AddAsync(newItem).GetAwaiter().GetResult(); Commit(); item.SolverAnswerId = newItem.Id; QuestionRepository.UpdateAsync(item).GetAwaiter().GetResult(); Commit(); } } catch (Exception e) { throw e; Console.WriteLine("{0} Exception caught.", e.Message); } } if (EarningRepositoryIsEmpty) { try { var users = ApplicationUserRepository.FindAllAsync().GetAwaiter().GetResult().ToList(); //var earningsTypes = new string[] { "Received", "Sent" }; var earningsTypes = Enum.GetValues(typeof(Earning.EarningType)); foreach (var item in users) { foreach (var item2 in users) { var newItem = new Earning { CreatedDate = DateTime.Now, UpdatedDate = DateTime.Now, EarningsType = (Earning.EarningType)earningsTypes.GetValue(new Random().Next(earningsTypes.Length)), Amount = 1m, SenderId = users.Where(u => u.Id != item.Id).ToList() [new Random().Next(0, users.Count() - 2)].Id, ApplicationUserId = item.Id }; EarningRepository.AddAsync(newItem).GetAwaiter().GetResult(); } Commit(); } } catch (Exception e) { throw e; Console.WriteLine("{0} Exception caught.", e.Message); } } //Commit(); if (CategoryRepositoryIsEmpty || TagRepositoryIsEmpty || ApplicationUserRepositoryIsEmpty || QuestionRepositoryIsEmpty || AnswerRepositoryIsEmpty || EarningRepositoryIsEmpty) { return(true); } else { return(false); } }