public void SaveSpecialOrderShouldSaveOrderCorrect() { var options = new DbContextOptionsBuilder <WAGDbContext>() .UseInMemoryDatabase(databaseName: "Save_Special_Order_Db") .Options; var dbContext = new WAGDbContext(options); var user = new WAGUser() { UserName = "******", }; dbContext.Users.Add(user); dbContext.SaveChanges(); var makeSpecialOrderViewModel = new MakeSpecialOrderViewModel() { OrderInfo = "Test order info" }; var service = new OrderService(dbContext, null); service.SaveSpecialOrder(user, makeSpecialOrderViewModel); var savedSpecialOrder = dbContext.Orders.FirstOrDefault(); Assert.NotNull(savedSpecialOrder); Assert.Equal(makeSpecialOrderViewModel.OrderInfo, savedSpecialOrder.OrderInfo); Assert.Equal(user, savedSpecialOrder.WAGUser); }
public void DeleteOrderShouldDeleteOrderCorrect() { var options = new DbContextOptionsBuilder <WAGDbContext>() .UseInMemoryDatabase(databaseName: "Delete_Order_Db") .Options; var dbContext = new WAGDbContext(options); var service = new OrderService(dbContext, null); var user = new WAGUser() { UserName = "******", }; dbContext.Users.Add(user); dbContext.SaveChanges(); var order = new Order() { OrderInfo = "Test order info", WAGUser = user, }; dbContext.Orders.Add(order); dbContext.SaveChanges(); Assert.Contains(order, dbContext.Orders); var orderId = dbContext.Orders.LastOrDefault().Id; service.DeleteOrder(orderId); Assert.DoesNotContain(order, dbContext.Orders); }
public void SaveOrder(WAGUser user, MakeOrderViewModel makeOrderViewModel) { var artwork = ArtisticWorkService.GetArtisticWorkById(makeOrderViewModel.ArtWorkId); if (makeOrderViewModel.TelephoneNumberForContact == null) { makeOrderViewModel.TelephoneNumberForContact = user.PhoneNumber; } if (makeOrderViewModel.DeliveryAddress == null) { makeOrderViewModel.DeliveryAddress = user.Address; } var order = new Order() { WAGUser = user, ArtisticWork = artwork, OrderInfo = makeOrderViewModel.OrderInfo, TelephoneNumberForContact = makeOrderViewModel.TelephoneNumberForContact, DeliveryAddress = makeOrderViewModel.DeliveryAddress, CreatedOn = DateTime.UtcNow }; this.DbContext.Orders.Add(order); this.DbContext.SaveChanges(); }
public void GetOrderByIdShouldReturnsOrderById() { var options = new DbContextOptionsBuilder <WAGDbContext>() .UseInMemoryDatabase(databaseName: "Get_Order_ById_Db") .Options; var dbContext = new WAGDbContext(options); var service = new OrderService(dbContext, null); var user = new WAGUser() { UserName = "******", }; dbContext.Users.Add(user); dbContext.SaveChanges(); var userId = dbContext.Users.LastOrDefault().Id; var order = new Order() { OrderInfo = "Test order info", WAGUser = user, }; dbContext.Orders.Add(order); dbContext.SaveChanges(); var orderId = dbContext.Orders.LastOrDefault().Id; var wantedOrder = service.GetOrderById(orderId); Assert.Equal(order, wantedOrder); }
public async Task <IdentityResult> RemoveUserFromRoleAsync(WAGUser user, string role) { var result = new IdentityResult(); if (user != null && this.RoleManager.RoleExistsAsync(role).Result&& UserManager.IsInRoleAsync(user, role).Result) { result = await this.UserManager.RemoveFromRoleAsync(user, role); } return(result); }
public async Task <IdentityResult> CreateUserAsync(RegisterInputViewModel registerInputViewModel) { var user = new WAGUser() { UserName = registerInputViewModel.UserName, FirstName = registerInputViewModel.FirstName, LastName = registerInputViewModel.LastName, City = registerInputViewModel.City, Email = registerInputViewModel.Email, PhoneNumber = registerInputViewModel.PhoneNumber, Address = registerInputViewModel.Address }; return(await this.UserManager.CreateAsync(user, registerInputViewModel.Password)); }
public void EditUserProfile(WAGUser user, EditUserProfileInputViewModel editUserProfileInputViewModel) { var userToUpdate = this.DbContext.Users.FirstOrDefault(u => u == user); if (userToUpdate != null) { userToUpdate.FirstName = editUserProfileInputViewModel.FirstName; userToUpdate.LastName = editUserProfileInputViewModel.LastName; userToUpdate.Email = editUserProfileInputViewModel.Email; userToUpdate.PhoneNumber = editUserProfileInputViewModel.PhoneNumber; userToUpdate.City = editUserProfileInputViewModel.City; userToUpdate.Address = editUserProfileInputViewModel.Address; } this.DbContext.SaveChanges(); }
public void GetUserOrdersShouldReturnsUsersOrders() { var options = new DbContextOptionsBuilder <WAGDbContext>() .UseInMemoryDatabase(databaseName: "Get_User_Orders_Db") .Options; var dbContext = new WAGDbContext(options); var service = new OrderService(dbContext, null); var user = new WAGUser() { UserName = "******", }; dbContext.Users.Add(user); dbContext.SaveChanges(); var userId = dbContext.Users.LastOrDefault().Id; var firstOrder = new Order() { OrderInfo = "First", WAGUser = user, }; var secondOrder = new Order() { OrderInfo = "Second", WAGUser = user, }; dbContext.Orders.Add(firstOrder); dbContext.Orders.Add(secondOrder); dbContext.SaveChanges(); var userOrders = service.GetUserOrders(userId); var ordersCount = dbContext .Users .FirstOrDefault(u => u.Id == userId) .Orders.Count(); Assert.Equal(ordersCount, userOrders.Count); Assert.Contains(firstOrder, userOrders); Assert.Contains(secondOrder, userOrders); }
public async Task <IdentityResult> AddUserInRoleAsync(WAGUser user, string role) { var result = new IdentityResult(); if (user != null) { if (this.RoleManager.RoleExistsAsync(role).Result) { if (!UserManager.IsInRoleAsync(user, role).Result) { result = await this.UserManager.AddToRoleAsync(user, role); } } } return(result); }
public void SaveOrderShouldSaveOrderCorrect() { var options = new DbContextOptionsBuilder <WAGDbContext>() .UseInMemoryDatabase(databaseName: "Save_Order_Db") .Options; var dbContext = new WAGDbContext(options); var user = new WAGUser() { UserName = "******", }; dbContext.Users.Add(user); dbContext.SaveChanges(); var makeOrderViewModel = new MakeOrderViewModel() { ArtWorkId = 5, OrderInfo = "Test order info", }; var artisticWorkService = new Mock <IArtisticWorkService>(); artisticWorkService .Setup(a => a.GetArtisticWorkById(makeOrderViewModel.ArtWorkId)) .Returns(new ArtisticWork() { Id = 5 }); var service = new OrderService(dbContext, artisticWorkService.Object); service.SaveOrder(user, makeOrderViewModel); var savedOrder = dbContext.Orders.LastOrDefault(); Assert.NotNull(savedOrder); Assert.Equal(makeOrderViewModel.ArtWorkId, savedOrder.ArtisticWorkId); Assert.Equal(makeOrderViewModel.OrderInfo, savedOrder.OrderInfo); }
public IActionResult Register(RegisterInputViewModel registerInputViewModel) { if (!ModelState.IsValid) { return(this.View(registerInputViewModel)); } WAGUser userNew = mapper.Map <WAGUser>(registerInputViewModel); var registerResult = this.UserAccountService.CreateUserAsync(userNew, registerInputViewModel.Password).Result; if (!registerResult.Succeeded) { registerInputViewModel.UnsuccessfulRegistrationMessage = UnsuccessfulRegistrationMessage; return(this.View(registerInputViewModel)); } var currUser = this.UserAccountService.GetUserByUserName(registerInputViewModel.UserName); this.UserAccountService.AddUserInRoleAsync(currUser, GlobalConstants.UserRole).GetAwaiter().GetResult(); return(RedirectToAction("Login", "UserAccount")); }
private static async Task SeedUserInRoles(UserManager <WAGUser> userManager) { if (!userManager.Users.Any()) { var user = new WAGUser { UserName = "******", Email = "*****@*****.**", FirstName = "AdminFirstName", LastName = "AdminLastName", }; var password = "******"; var userCreated = await userManager.CreateAsync(user, password); if (userCreated.Succeeded) { await userManager.AddToRoleAsync(user, GlobalConstants.AdminRole); await userManager.AddToRoleAsync(user, GlobalConstants.UserRole); } } }
public void SaveSpecialOrder(WAGUser user, MakeSpecialOrderViewModel makeSpecialOrderViewModel) { if (makeSpecialOrderViewModel.TelephoneNumberForContact == null) { makeSpecialOrderViewModel.TelephoneNumberForContact = user.PhoneNumber; } if (makeSpecialOrderViewModel.DeliveryAddress == null) { makeSpecialOrderViewModel.DeliveryAddress = user.Address; } var order = new Order() { WAGUser = user, OrderInfo = makeSpecialOrderViewModel.OrderInfo, TelephoneNumberForContact = makeSpecialOrderViewModel.TelephoneNumberForContact, DeliveryAddress = makeSpecialOrderViewModel.DeliveryAddress, CreatedOn = DateTime.UtcNow }; this.DbContext.Orders.Add(order); this.DbContext.SaveChanges(); }
public void ChangePassword(WAGUser user, string currPassword, string newPassword) { var result = this.UserManager.ChangePasswordAsync(user, currPassword, newPassword).Result; }
public async Task <IdentityResult> CreateUserAsync(WAGUser userModel, string userParssword) { return(await this.UserManager.CreateAsync(userModel, userParssword)); }