public async Task EditCustomer_CommandHandle_UpdatesExistingCustomer() { //Arrange var customer = new AllMarkt.Entities.Customer { Address = "address", PhoneNumber = "0123654789" }; AllMarktContextIM.Customers.Add(customer); await AllMarktContextIM.SaveChangesAsync(); var existingCustomer = AllMarktContextIM.Customers.First(); var editCustomerCommand = new EditCustomerCommand { Id = existingCustomer.Id, Address = "editedAddress", PhoneNumber = "0147852369" }; //Act await _editCustomerCommandHandler.Handle(editCustomerCommand, CancellationToken.None); //Assert AllMarktContextIM.Customers.Should().Contain(x => x.Id == editCustomerCommand.Id); customer.Address.Should().Be(editCustomerCommand.Address); customer.PhoneNumber.Should().Be(editCustomerCommand.PhoneNumber); }
public async Task EditUserCommandHandler_Change_ShopUser_Into_AdminUser() { //Arrange var user = await CreateUserWithRoleAsync(UserRole.Shop); var shop = new Shop { User = user }; await AllMarktContextIM.Shops.AddAsync(shop); await AllMarktContextIM.SaveChangesAsync(); var editUserCommand = CreateEditUserCommand(user.Id, "Admin"); //Act await _editUserCommandHandler.Handle(editUserCommand, CancellationToken.None); //Assert AllMarktContextIM.Users.Should() .Contain(u => u.Email == editUserCommand.Email && u.DisplayName == editUserCommand.DisplayName && u.UserRole == (UserRole)Enum.Parse(typeof(UserRole), editUserCommand.UserRole) ); var shopFound = await AllMarktContextIM.Shops.FindAsync(user.Id); shopFound.Should().BeNull(); AllMarktContextIM.Admins.Should().Contain(a => a.UserId == user.Id); }
public async Task DeleteShopCommentCommandHandle_DeletesExistingShopComment() { //Arrange AllMarktContextIM.ShopComments.Add(new AllMarkt.Entities.ShopComment { Rating = 5, Text = "test" }); await AllMarktContextIM.SaveChangesAsync(); var existingShopComment = await AllMarktContextIM.ShopComments.FirstAsync(); var deleteShopCommentCommand = new DeleteShopCommentCommand { Id = existingShopComment.Id }; //Act await _deleteShopCommentCommandHandler.Handle(deleteShopCommentCommand, CancellationToken.None); //Assert AllMarktContextIM.ShopComments .Should() .NotContain(ShopComments => ShopComments.Id == deleteShopCommentCommand.Id); }
public async Task DeleteOrderCommandHandler_DeletesExistingOrder() { //Arrange var order = new AllMarkt.Entities.Order { DeliveryAddress = "Test Address", AWB = "Test AWB" }; AllMarktContextIM.Orders.Add(order); await AllMarktContextIM.SaveChangesAsync(); var existingOrder = AllMarktContextIM.Orders.First(); var deleteOrderCommand = new DeleteOrderCommand { Id = existingOrder.Id }; //Act await _deleteOrderCommandHandler.Handle(deleteOrderCommand, CancellationToken.None); //Assert AllMarktContextIM.Orders .Should().NotContain(x => x.Id == existingOrder.Id); }
public async Task Setup_Add2UsersForPrivateMessagesTest() { if (!AllMarktContextIM.Users.Any(user => user.Email == "*****@*****.**")) { AllMarktContextIM.Users.Add(new AllMarkt.Entities.User { Email = "*****@*****.**", Password = "******", DisplayName = "user1", ReceivedMessages = new List <AllMarkt.Entities.PrivateMessage>(), SentMessages = new List <AllMarkt.Entities.PrivateMessage>() }); } if (!AllMarktContextIM.Users.Any(user => user.Email == "*****@*****.**")) { AllMarktContextIM.Users.Add(new AllMarkt.Entities.User { Email = "*****@*****.**", Password = "******", DisplayName = "user2", ReceivedMessages = new List <AllMarkt.Entities.PrivateMessage>(), SentMessages = new List <AllMarkt.Entities.PrivateMessage>() }); } await AllMarktContextIM.SaveChangesAsync(); }
public async Task DeleteUserCommandHandler_DeleteExistingUser_And_Asociated_UserRole_AdminObject() { //Arrange var newUser = GetNewUser(); await AllMarktContextIM.Users.AddAsync(newUser); await AllMarktContextIM.SaveChangesAsync(); var adminUser = new AllMarkt.Entities.Admin { User = newUser }; await AllMarktContextIM.Admins.AddAsync(adminUser); await AllMarktContextIM.SaveChangesAsync(); var existingUser = AllMarktContextIM.Users.First(); var deleteUserCommand = new DeleteUserCommand { Id = existingUser.Id }; //Act await _deleteUserCommandHandler.Handle(deleteUserCommand, CancellationToken.None); //Assert AllMarktContextIM.Users .Should() .NotContain(u => u.Id == deleteUserCommand.Id); AllMarktContextIM.Admins .Should() .BeEmpty(); }
public async Task EditOrderCommandHandler_UpdatesExistingOrder() { //Arrange Shop seller = new Shop(); Customer buyer = new Customer(); AllMarktContextIM.Shops.Add(seller); AllMarktContextIM.Customers.Add(buyer); await AllMarktContextIM.SaveChangesAsync(); var order = new AllMarkt.Entities.Order { Seller = seller, Buyer = buyer, AdditionalNotes = "Test Notes", DeliveryAddress = "Test Address", DeliveryPhoneNumber = "01234567890", TotalPrice = 1, TimeOfOrder = DateTime.Now, OrderStatus = Status.Registered, AWB = "Test AWB", }; OrderItem orderItem = new OrderItem { Order = order }; order.OrderItems = new List <OrderItem> { orderItem }; AllMarktContextIM.Orders.Add(order); AllMarktContextIM.OrderItems.Add(orderItem); await AllMarktContextIM.SaveChangesAsync(); var existingOrder = AllMarktContextIM.Orders.Where(o => o.Id == order.Id).FirstOrDefault(); var editOrderCommand = new EditOrderCommand { Id = existingOrder.Id, AdditionalNotes = "Test Notes", DeliveryAddress = "Edit Address", DeliveryPhoneNumber = "0123456789", TotalPrice = 1, OrderStatus = Status.Registered, AWB = "Edit AWB" }; //Act await _editOrderCommandHandler.Handle(editOrderCommand, CancellationToken.None); // AllMarktContextIM.Orders.Should().Contain(x => x.Id == editOrderCommand.Id); order.DeliveryAddress.Should().Be(editOrderCommand.DeliveryAddress); order.AWB.Should().Be(editOrderCommand.AWB); }
public async Task GetCustomerByUserIdQueryHandler_ReturnsExisting_UserById() { //Arrange var user1 = new AllMarkt.Entities.User { Email = "*****@*****.**", Password = "******", DisplayName = "name1", UserRole = UserRole.Customer }; var customer = new AllMarkt.Entities.Customer { Address = "address1", PhoneNumber = "0123654789", UserId = user1.Id, User = user1, Orders = null }; await AllMarktContextIM.Users.AddAsync(user1); await AllMarktContextIM.Customers.AddAsync(customer); await AllMarktContextIM.SaveChangesAsync(); //Act var result = await _getCustomerByUserIdQueryHandler.Handle(new GetCustomerByUserIdQuery { Id = user1.Id }, CancellationToken.None); //Assert result.UserDisplayName.Should().Be("name1"); result.Address.Should().Be("address1"); result.PhoneNumber.Should().Be("0123654789"); }
public async Task GetAllCustomersQueryHandler_ReturnsCustomers() { //Arrange var user = new AllMarkt.Entities.User { Email = "*****@*****.**", DisplayName = "tets" }; AllMarktContextIM.Users.Add(user); await AllMarktContextIM.SaveChangesAsync(); AllMarktContextIM.Customers.Add(new AllMarkt.Entities.Customer { User = user, UserId = user.Id, Address = "address", PhoneNumber = "0123456789", }); await AllMarktContextIM.SaveChangesAsync(); //Act var customers = await _getAllCustomersQueryHandler.Handle(new GetAllCustomersQuery(), CancellationToken.None); //assert customers.Count().Should().Be(1); }
public async Task DeleteProduct_CommandHandle_DeletesExistingProducty() { //Arrange var productCategory = new AllMarkt.Entities.ProductCategory { Name = "category", Description = "description" }; AllMarktContextIM.ProductCategories.Add(productCategory); await AllMarktContextIM.SaveChangesAsync(); AllMarktContextIM.Products.Add(new AllMarkt.Entities.Product { Name = "Test Name1", Description = "Test Description1", Price = 10, ImageURI = "", State = true, ProductCategory = productCategory }); await AllMarktContextIM.SaveChangesAsync(); var existingProduct = AllMarktContextIM.Products.First(); var deleteProductCommand = new DeleteProductCommand { Id = existingProduct.Id }; //Act await _deleteProductCommandHandler.Handle(deleteProductCommand, CancellationToken.None); //Assert AllMarktContextIM.Products .Should() .NotContain(product => product.Id == deleteProductCommand.Id); }
public async Task GetShopOrdersQueryHandle_Returns_ExistingOrders() { //Arrange AllMarkt.Entities.Shop seller = new AllMarkt.Entities.Shop { Address = "aaaaa", Comments = null, CUI = "aaaaddd", IBAN = "aaaaa", Orders = null, PhoneNumber = "0123654789", ProductCategories = null, ShopCategoryLink = null, SocialCapital = 4 }; AllMarktContextIM.Shops.Add(seller); await AllMarktContextIM.SaveChangesAsync(); AllMarkt.Entities.Order order = new AllMarkt.Entities.Order() { Seller = seller }; AllMarktContextIM.Orders.Add(order); await AllMarktContextIM.SaveChangesAsync(); //Act var result = await _getShopOrdersQueryHandler .Handle(new GetShopOrdersQuery() { ShopId = seller.Id }, CancellationToken.None); //Assert result.Count().Should().Be(1); }
public async Task GetShopsByCategoryIdQueryHandler_Returns_ExistingShops() { //Arrange var user = new AllMarkt.Entities.User { Email = "*****@*****.**", Password = "******", DisplayName = "name1", UserRole = UserRole.Shop }; await AllMarktContextIM.Users.AddAsync(user); await AllMarktContextIM.SaveChangesAsync(); var shop = new AllMarkt.Entities.Shop { ProductCategories = null, User = user, Address = "address", Comments = null, CUI = "RO123456789c", IBAN = new string('8', 24), PhoneNumber = "01234567891", SocialCapital = 23 }; var category = new AllMarkt.Entities.Category { Description = "Desc", Name = "Category1" }; await AllMarktContextIM.Shops.AddAsync(shop); await AllMarktContextIM.Categories.AddAsync(category); await AllMarktContextIM.SaveChangesAsync(); var link = new AllMarkt.Entities.ShopCategory { Shop = shop, ShopId = shop.Id, Category = category, CategoryId = category.Id }; await AllMarktContextIM.ShopCategories.AddAsync(link); await AllMarktContextIM.SaveChangesAsync(); shop.ShopCategoryLink.Add(link); category.ShopCategoryLink.Add(link); await AllMarktContextIM.SaveChangesAsync(); //Act var shopList = await _getShopsByCategoryIdQueryHandler.Handle(new GetShopsByCategoryIdQuery { Id = category.Id }, CancellationToken.None); //Assert shopList.Count().Should().Be(1); }
public async Task GetAllUsersQueryHandler_ReturnsExistingUsers() { //Arrange var user1 = new AllMarkt.Entities.User { Email = "*****@*****.**", Password = "******", DisplayName = "name1" }; var user2 = new AllMarkt.Entities.User { Email = "*****@*****.**", Password = "******", DisplayName = "name2" }; await AllMarktContextIM.Users.AddAsync(user1); await AllMarktContextIM.Users.AddAsync(user2); await AllMarktContextIM.SaveChangesAsync(); //Act var result = await _getAllUsersQueryHandler.Handle(new GetAllUsersQuery(), CancellationToken.None); //Assert result.Count().Should().Be(2); }
public async Task EditShop_CommandHandle_UpdatesExistingShop() { //Arrange var shop = new AllMarkt.Entities.Shop { Address = "address", PhoneNumber = "0123654789", IBAN = "SE3550000000054910000003" }; AllMarktContextIM.Shops.Add(shop); await AllMarktContextIM.SaveChangesAsync(); var existingShop = AllMarktContextIM.Shops.First(); var editShopCommand = new EditShopCommand { Id = existingShop.Id, Address = "editedAddress", IBAN = "RO3550000000054910000003", PhoneNumber = "0147852369" }; //Act await _editShopCommandHandler.Handle(editShopCommand, CancellationToken.None); //Assert AllMarktContextIM.Shops.Should().Contain(x => x.Id == editShopCommand.Id); shop.Address.Should().Be(editShopCommand.Address); shop.PhoneNumber.Should().Be(editShopCommand.PhoneNumber); shop.IBAN.Should().Be(editShopCommand.IBAN); }
public async Task EditProductCommentCommandHandle_UpdatesExistingProductComment() { //Arrange var productComment = new AllMarkt.Entities.ProductComment { Rating = 3, Text = "test" }; await AllMarktContextIM.ProductComments.AddAsync(productComment); await AllMarktContextIM.SaveChangesAsync(); var existingProductComments = await AllMarktContextIM.ProductComments.FirstAsync(); var editProductCommentsCommand = new EditProductCommentCommand { Id = existingProductComments.Id, Text = "test_edit" }; //Act await _editProductCommentCommandHandler.Handle(editProductCommentsCommand, CancellationToken.None); //Assert AllMarktContextIM.ProductComments .Should() .Contain(x => x.Id == editProductCommentsCommand.Id && x.Text == editProductCommentsCommand.Text); }
public async Task GetGetProductCommentsByProductIdQueryHandler_ReturnsExistingComments() { //Arrange var user = new AllMarkt.Entities.User { Email = "*****@*****.**", Password = "******", DisplayName = "UserTest" }; var product1 = new AllMarkt.Entities.Product { Name = "prodTest1", Description = "prodTestDescriere1", Price = 20 }; var product2 = new AllMarkt.Entities.Product { Name = "prodTest2", Description = "prodTestDescriere2", Price = 20 }; AllMarktContextIM.Users.Add(user); AllMarktContextIM.Products.Add(product1); AllMarktContextIM.Products.Add(product2); await AllMarktContextIM.SaveChangesAsync(); var productComment1 = new AllMarkt.Entities.ProductComment { Rating = 2, Text = "naspa rau", AddedBy = user, Product = product1, DateAdded = DateTime.UtcNow }; var productComment2 = new AllMarkt.Entities.ProductComment { Rating = 4, Text = "super fain", AddedBy = user, Product = product2, DateAdded = DateTime.UtcNow }; AllMarktContextIM.ProductComments.Add(productComment1); AllMarktContextIM.ProductComments.Add(productComment2); await AllMarktContextIM.SaveChangesAsync(); //Act var result = await _getProductCommentsQueryHandler.Handle(new GetProductCommentsByProductIdQuery(product1.Id), CancellationToken.None); //Assert result.Count().Should().Be(1); }
public async Task GetAllShopCommentsQueryHandler_ReturnsExistingComments() { //Arrange var user = new AllMarkt.Entities.User { Email = "*****@*****.**", Password = "******", DisplayName = "UserTest" }; var shop = new AllMarkt.Entities.Shop { Address = "aaaaa", Comments = null, CUI = "aaaaddd", IBAN = "aaaaa", Orders = null, PhoneNumber = "0123654789", ProductCategories = null, ShopCategoryLink = null, SocialCapital = 4, User = user }; AllMarktContextIM.Users.Add(user); AllMarktContextIM.Shops.Add(shop); await AllMarktContextIM.SaveChangesAsync(); AllMarktContextIM.ShopComments.Add(new AllMarkt.Entities.ShopComment { Rating = 2, Text = "naspa rau", AddedBy = user, Shop = shop, }); AllMarktContextIM.ShopComments.Add(new AllMarkt.Entities.ShopComment { Rating = 5, Text = "super fain", AddedBy = user, Shop = shop }); await AllMarktContextIM.SaveChangesAsync(); //Act var result = await _getAllShopCommentsQueryHandler.Handle(new GetAllShopCommentsQuery(), CancellationToken.None); //Assert result.Count().Should().Be(2); }
public async Task GetAllOrdersQueryHandler_Returns_ExistingOrders() { //Arrange AllMarkt.Entities.Order order = new AllMarkt.Entities.Order(); AllMarktContextIM.Orders.Add(order); await AllMarktContextIM.SaveChangesAsync(); //Act var result = await _getAllOrdersQueryHandler.Handle(new GetAllOrdersQuery(), CancellationToken.None); //Assert result.Count().Should().Be(1); }
public async Task AddOrderCommandHandle_AddsOrder() { //Arrange Shop seller = new Shop { Address = "aaaaa", Comments = null, CUI = "aaaaddd", IBAN = "aaaaa", Orders = null, PhoneNumber = "0123654789", ProductCategories = null, ShopCategoryLink = null, SocialCapital = 4 }; Customer buyer = new Customer(); AllMarktContextIM.Customers.Add(buyer); AllMarktContextIM.Shops.Add(seller); await AllMarktContextIM.SaveChangesAsync(); var addOrderCommand = new AddOrderCommand { ShopId = seller.Id, CustomerId = buyer.Id, DeliveryAddress = "Test Address", AWB = "Test AWB", OrderItems = new List <OrderItemViewModel>() { new OrderItemViewModel { Id = 1, Name = "Test Item", Amount = 1 } } }; //Act await _addOrderCommandHandler.Handle(addOrderCommand, CancellationToken.None); //Assert AllMarktContextIM.Orders .Should() .Contain(order => order.Seller.Id == addOrderCommand.ShopId && order.Buyer.Id == addOrderCommand.CustomerId && order.DeliveryAddress == addOrderCommand.DeliveryAddress && order.AWB == addOrderCommand.AWB); }
public async Task AddProductCommentCommandHandle_AddsShopComment() { //Arrange var productCategory = new AllMarkt.Entities.ProductCategory { Name = "category", Description = "description" }; AllMarktContextIM.ProductCategories.Add(productCategory); AllMarktContextIM.SaveChanges(); var user = new AllMarkt.Entities.User { Email = "*****@*****.**", Password = "******", DisplayName = "UserTest" }; var product = new AllMarkt.Entities.Product { Name = "testProduct", Description = "testDescription", Price = 20, ImageURI = "", State = true, ProductCategory = productCategory }; AllMarktContextIM.Users.Add(user); AllMarktContextIM.Products.Add(product); await AllMarktContextIM.SaveChangesAsync(); var addProductCommentCommand = new AddProductCommentCommand { Rating = 5, Text = "cel mai bun produs", ProductId = product.Id, AddedByUserId = user.Id }; //Act await _addProductCommentCommandHandler.Handle(addProductCommentCommand, CancellationToken.None); //Assert AllMarktContextIM.ProductComments .Should() .Contain(productComment => productComment.Rating == addProductCommentCommand.Rating && productComment.Text == addProductCommentCommand.Text && productComment.AddedBy.Id == addProductCommentCommand.AddedByUserId && productComment.Product.Id == addProductCommentCommand.ProductId); }
public async Task EditProduct_CommandHandle_UpdatesExistingProduct() { //Arrange var productCategory = new AllMarkt.Entities.ProductCategory { Name = "category", Description = "description" }; AllMarktContextIM.ProductCategories.Add(productCategory); await AllMarktContextIM.SaveChangesAsync(); var product = new AllMarkt.Entities.Product { Name = "Test Name1", Description = "Test Description1", Price = 10, ImageURI = "", State = true, ProductCategory = productCategory }; AllMarktContextIM.Products.Add(product); await AllMarktContextIM.SaveChangesAsync(); var existingProduct = AllMarktContextIM.Products.First(); var editProductCommand = new EditProductCommand { Id = existingProduct.Id, Name = "TestName_EDIT", Description = "TestDescription_EDIT", Price = 11, ImageURI = "abc", State = false, }; //Act await _editProductCommandHandler.Handle(editProductCommand, CancellationToken.None); //Assert AllMarktContextIM.Products.Should().Contain(x => x.Id == editProductCommand.Id); product.Name.Should().Be(editProductCommand.Name); product.Description.Should().Be(editProductCommand.Description); product.Price.Should().Be(editProductCommand.Price); product.ImageURI.Should().Be(editProductCommand.ImageURI); product.State.Should().Be(editProductCommand.State); }
private async Task <AllMarkt.Entities.User> CreateUserWithRoleAsync(UserRole role) { var user1 = new AllMarkt.Entities.User { Email = "*****@*****.**", Password = "******", DisplayName = "Name", UserRole = role }; await AllMarktContextIM.Users.AddAsync(user1); await AllMarktContextIM.SaveChangesAsync(); return(user1); }
public async Task EditPrivateMessageCommandHandler_UpdatesExistingPrivateMessage() { //arrange await Setup_Add2UsersForPrivateMessagesTest(); AllMarkt.Entities.User user1 = await AllMarktContextIM.Users.FirstOrDefaultAsync(user => user.Email == "*****@*****.**"); AllMarkt.Entities.User user2 = await AllMarktContextIM.Users.FirstOrDefaultAsync(user => user.Email == "*****@*****.**"); var privateMessage = new AllMarkt.Entities.PrivateMessage { Title = "stock is best medi gun", Text = "text", DateSent = DateTime.Now, DateRead = null, Sender = user1, Receiver = user2, DeletedBy = null }; await AllMarktContextIM.PrivateMessages.AddAsync(privateMessage); await AllMarktContextIM.SaveChangesAsync(); var existingPrivateMessage = await AllMarktContextIM.PrivateMessages.FirstOrDefaultAsync(PM => PM.Title == "stock is best medi gun"); var editPrivateMessageCommand = new EditPrivateMessageCommand { Id = existingPrivateMessage.Id, Title = "kritzkrieg is best medi gun", Text = existingPrivateMessage.Text, DateSent = existingPrivateMessage.DateSent, DateRead = existingPrivateMessage.DateRead, SenderId = existingPrivateMessage.Sender.Id, ReceiverId = existingPrivateMessage.Receiver.Id, DeletedBy = AllMarkt.Entities.DeletedBy.Receiver }; //Act await _editPrivateMessageCommandHandler.Handle(editPrivateMessageCommand, CancellationToken.None); //Assert AllMarktContextIM.PrivateMessages.Should().Contain(PM => PM.Id == editPrivateMessageCommand.Id); privateMessage.Title.Should().Be(editPrivateMessageCommand.Title); privateMessage.DeletedBy.Should().Be(editPrivateMessageCommand.DeletedBy); }
public async Task AddShopCommentCommandHandle_AddsShopComment() { //Arrange var user = new AllMarkt.Entities.User { Email = "*****@*****.**", Password = "******", DisplayName = "UserTest" }; var shop = new AllMarkt.Entities.Shop { Address = "aaaaa", Comments = null, CUI = "aaaaddd", IBAN = "aaaaa", Orders = null, PhoneNumber = "0123654789", ProductCategories = null, ShopCategoryLink = null, SocialCapital = 4 }; AllMarktContextIM.Users.Add(user); AllMarktContextIM.Shops.Add(shop); await AllMarktContextIM.SaveChangesAsync(); var addShopCommentCommand = new AddShopCommentCommand { Rating = 5, Text = "cel mai bun", ShopId = shop.Id, AddedByUserId = user.Id }; //Act await _addShopCommentCommandHandler.Handle(addShopCommentCommand, CancellationToken.None); //Assert AllMarktContextIM.ShopComments .Should() .Contain(shopComment => shopComment.Rating == addShopCommentCommand.Rating && shopComment.Text == addShopCommentCommand.Text && shopComment.AddedBy.Id == addShopCommentCommand.AddedByUserId && shopComment.Shop.Id == addShopCommentCommand.ShopId); }
public async Task GetAllShopsQueryHandler_IsNotEmpty() { //Arrange var user = new AllMarkt.Entities.User { Email = "*****@*****.**", DisplayName = "tets" }; AllMarktContextIM.Users.Add(user); await AllMarktContextIM.SaveChangesAsync(); AllMarktContextIM.Shops.Add(new AllMarkt.Entities.Shop { ProductCategories = null, User = user, Address = "address", Comments = null, CUI = "RO123456789c", IBAN = new string('8', 24), PhoneNumber = "01234567891", SocialCapital = 23 }); AllMarktContextIM.Shops.Add(new AllMarkt.Entities.Shop { ProductCategories = null, User = user, Address = "address 2", Comments = null, CUI = "RO12121212c", IBAN = new string('6', 24), PhoneNumber = "01234567891", SocialCapital = 5 }); await AllMarktContextIM.SaveChangesAsync(); //Act var shops = await _getAllShopsQueryHandler.Handle(new GetAllShopsQuery(), CancellationToken.None); //Assert shops.Count().Should().Be(2); }
public async Task DeleteUserCommandHandler_DeleteExistingUser() { //Arrange var newUser = GetNewUser(); await AllMarktContextIM.Users.AddAsync(newUser); await AllMarktContextIM.SaveChangesAsync(); var existingUser = AllMarktContextIM.Users.First(); var deleteUserCommand = new DeleteUserCommand { Id = existingUser.Id }; //Act await _deleteUserCommandHandler.Handle(deleteUserCommand, CancellationToken.None); //Assert AllMarktContextIM.Users .Should() .NotContain(u => u.Id == deleteUserCommand.Id); }
public async Task DisableUserCommandHandler_DisableStatusExistingUser() { //Arrange var newUser = GetNewUser(); await AllMarktContextIM.Users.AddAsync(newUser); await AllMarktContextIM.SaveChangesAsync(); var existingUser = AllMarktContextIM.Users.First(); var disableUserCommand = new DisableUserCommand { Id = existingUser.Id }; //Act await _disableUserCommandHandler.Handle(disableUserCommand, CancellationToken.None); //Assert var result = AllMarktContextIM.Users.FirstOrDefault(); (result != null && result.IsEnabled).Should().BeFalse(); }
public async Task GetUserByIdQueryHandler_ReturnsExisting_UserById() { //Arrange var user1 = new AllMarkt.Entities.User { Email = "*****@*****.**", Password = "******", DisplayName = "name1", UserRole = UserRole.Shop }; var shop = new AllMarkt.Entities.Shop { CUI = "3333", Address = "address1", PhoneNumber = "0147852369", Comments = null, IBAN = "SE3550000000054910000003", Orders = null, ProductCategories = null, SocialCapital = 3, User = user1, UserId = user1.Id }; await AllMarktContextIM.Users.AddAsync(user1); await AllMarktContextIM.Shops.AddAsync(shop); await AllMarktContextIM.SaveChangesAsync(); //Act var result = await _getShopByUserIdQueryHandler.Handle(new GetShopByUserIdQuery { UserId = user1.Id }, CancellationToken.None); //Assert result.UserDisplayName.Should().Be("name1"); result.Address.Should().Be("address1"); result.PhoneNumber.Should().Be("0147852369"); result.IBAN.Should().Be("SE3550000000054910000003"); result.SocialCapital.Equals(3); }
public async Task GetPrivateMessageByIdQueryHandler_ReturnsExisting_PrivateMessageById() { //Arrange await Setup_Add2UsersForPrivateMessagesTest(); AllMarkt.Entities.User user1 = await AllMarktContextIM.Users.FirstOrDefaultAsync(x => x.Email == "*****@*****.**"); AllMarkt.Entities.User user2 = await AllMarktContextIM.Users.FirstOrDefaultAsync(x => x.Email == "*****@*****.**"); var message = new AllMarkt.Entities.PrivateMessage { Title = "Title 1", Text = "Text 1", DateSent = DateTime.Now, DateRead = null, Sender = user1, Receiver = user2, DeletedBy = DeletedBy.Receiver }; await AllMarktContextIM.PrivateMessages.AddAsync(message); await AllMarktContextIM.SaveChangesAsync(); var idAndDisplayNameUser1 = new IdAndDisplayNameUserViewModel(user1); var idAndDisplayNameUser2 = new IdAndDisplayNameUserViewModel(user2); //Act var result = await _getPrivateMessageByIdQueryHandler.Handle(new GetPrivateMessageByIdQuery { Id = message.Id }, CancellationToken.None); //Assert result.Title.Should().Be("Title 1"); result.Text.Should().Be("Text 1"); result.DateRead.Should().Be(null); result.Sender.Should().BeEquivalentTo(idAndDisplayNameUser1); result.Receiver.Should().BeEquivalentTo(idAndDisplayNameUser2); result.DeletedBy.Should().Be(DeletedBy.Receiver); }
public async Task GetUserByIdQueryHandler_ReturnsExisting_UserById() { //Arrange var user = new AllMarkt.Entities.User { Email = "*****@*****.**", Password = "******", DisplayName = "name1", UserRole = UserRole.Shop }; await AllMarktContextIM.Users.AddAsync(user); await AllMarktContextIM.SaveChangesAsync(); //Act var result = await _getUserByIdQueryHandler.Handle(new GetUserByIdQuery { Id = user.Id }, CancellationToken.None); //Assert result.Email.Should().Be("*****@*****.**"); result.DisplayName.Should().Be("name1"); result.UserRole.Should().Be(nameof(UserRole.Shop)); }