public async Task AddPrivateMessageCommandHandler_AddsMessage() { //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 == "*****@*****.**"); int before = AllMarktContextIM.PrivateMessages.Count(); var addPrivateMessageCommand = new AddPrivateMessageCommand { Title = "1 to 2", Text = "Hello", DateSent = DateTime.Now, DateRead = null, SenderId = user1.Id, ReceiverId = user2.Id }; //Act await _addPrivateMessageCommandHandler.Handle(addPrivateMessageCommand, CancellationToken.None); //Assert (AllMarktContextIM.PrivateMessages.Count() - before).Should().Be(1); }
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 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 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 GetAllReceivedPrivateMessagesQueryHandler_ReturnsEmpty() { //Arrange await Setup_Add2UsersForPrivateMessagesTest(); AllMarkt.Entities.User user1 = await AllMarktContextIM.Users.FirstOrDefaultAsync(x => x.Email == "*****@*****.**"); //Act var result = await _getAllReceivedPrivateMessagesWithUserIdQueryHandler.Handle(new GetAllReceivedPrivateMessagesByUserQuery(user1.Id), CancellationToken.None); //Assert result.Count().Should().Be(0); }
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 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 GetAllPrivateMessagesQueryHandler_ReturnsExactly2Items() { //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 == "*****@*****.**"); AllMarktContextIM.PrivateMessages.Add(new AllMarkt.Entities.PrivateMessage { Title = "Title 1", Text = "Text 1", DateSent = DateTime.Now, DateRead = DateTime.Now, Sender = user1, Receiver = user2 }); AllMarktContextIM.PrivateMessages.Add(new AllMarkt.Entities.PrivateMessage { Title = "Title 1", Text = "Text 1", DateSent = DateTime.Now, DateRead = DateTime.Now, Sender = user1, Receiver = user1 }); await AllMarktContextIM.SaveChangesAsync(); //Act var result = await _getAllPrivateMessagesHandler.Handle(new GetAllPrivateMessagesQuery(), CancellationToken.None); //Assert result.Count().Should().Be(2); }
public async Task DeletePrivateMessageCommandHandler_DeletesExistingPrivateMessage() { //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 == "*****@*****.**"); AllMarktContextIM.PrivateMessages.Add( new AllMarkt.Entities.PrivateMessage { Title = "oddly specific title", Text = "text", DateSent = DateTime.Now, DateRead = null, Sender = user1, Receiver = user2 }); await AllMarktContextIM.SaveChangesAsync(); var existingPrivateMessage = AllMarktContextIM.PrivateMessages.FirstOrDefaultAsync(user => user.Title == "oddly specific title"); var deletePrivateMessageCommand = new DeletePrivateMessageCommand { Id = existingPrivateMessage.Id }; //Act await _deletePrivateMessageCommandHandler.Handle(deletePrivateMessageCommand, CancellationToken.None); //Assert AllMarktContextIM.PrivateMessages .Should() .NotContain(privateMessage => privateMessage.Id == existingPrivateMessage.Id); }
public async Task <int> SetTestDataProductCategoriesQueryAsync() { var user = new AllMarkt.Entities.User { Email = "*****@*****.**", DisplayName = "tets" }; _allMarktContextIM.Users.Add(user); await _allMarktContextIM.SaveChangesAsync(); var shop1 = new AllMarkt.Entities.Shop { Address = "dddd", User = user, Comments = null, CUI = "ddd", IBAN = "dffddfdfd", Orders = null, PhoneNumber = "0123654789", ProductCategories = null, ShopCategoryLink = null, SocialCapital = 3 }; var shop2 = new AllMarkt.Entities.Shop { Address = "aaa", User = user, Comments = null, CUI = "ddd", IBAN = "aaaa", Orders = null, PhoneNumber = "0123654789", ProductCategories = null, ShopCategoryLink = null, SocialCapital = 2 }; _allMarktContextIM.Shops.Add(shop1); _allMarktContextIM.Shops.Add(shop2); await _allMarktContextIM.SaveChangesAsync(); _allMarktContextIM.ProductCategories.Add(new AllMarkt.Entities.ProductCategory { Description = "desc1", Name = "name1", Shop = shop1 }); _allMarktContextIM.ProductCategories.Add(new AllMarkt.Entities.ProductCategory { Description = "desc2", Name = "name2", Shop = shop1 }); _allMarktContextIM.ProductCategories.Add(new AllMarkt.Entities.ProductCategory { Description = "desc3", Name = "name3", Shop = shop2 }); await _allMarktContextIM.SaveChangesAsync(); return(shop1.Id); }