public async Task NewlyAddedBasketShouldBeinRepository() { var basketRepository = new InMemoryBasketRepository(null); var newBasket = new Basket { UserId = _testUserId, Id = _testBasketId }; //Add a new basket to in memory list and fetch and check await basketRepository.Add(newBasket); var basketInfo = (await basketRepository.Find(new BasketFilterObject())).First(); basketInfo.UserId.ShouldBe(_testUserId); basketInfo.Id.ShouldBe(_testBasketId); //get by id an check values var basketGetById = (await basketRepository.Get(_testBasketId)); basketGetById.UserId.ShouldBe(_testUserId); basketGetById.Id.ShouldBe(_testBasketId); var newBasket2 = new Basket() { UserId = _testUserId1, Id = _testBasketId1 }; //add a new Basket- There should be two baskets now. await basketRepository.Add(newBasket2); var basketFounSearchInfo = (await basketRepository.Find(new BasketFilterObject { BasketId = _testBasketId1 })).First(); basketFounSearchInfo.UserId.ShouldBe(_testUserId1); basketFounSearchInfo.Id.ShouldBe(_testBasketId1); var basketCount = (await basketRepository.Find(new BasketFilterObject())).Count(); basketCount.ShouldBe(2); }
public async Task ShouldCreateAndReturnaBasketForUserIfNotABasketPresent() { var inMemoryBasketRepo = new InMemoryBasketRepository(_mockBasketLogger.Object); var basketService = new BasketService(inMemoryBasketRepo, _catalogService, _mockServiceLogger.Object); await basketService.GetOrCreateBasketforUserAsync(_testUserId1); var basketinRepo = (await inMemoryBasketRepo.Find(new BasketFilterObject { UserId = _testUserId1 })).First(); basketinRepo.UserId.ShouldBe(_testUserId1); }
public async Task ShouldCreateMultipleBaskets() { var inMemoryBasketRepo = new InMemoryBasketRepository(_mockBasketLogger.Object); var basketService = new BasketService(inMemoryBasketRepo, _catalogService, _mockServiceLogger.Object); await basketService.GetOrCreateBasketforUserAsync("user1"); await basketService.GetOrCreateBasketforUserAsync("user2"); await basketService.GetOrCreateBasketforUserAsync("user3"); var basketCount = (await inMemoryBasketRepo.Find(new BasketFilterObject { })).Count; basketCount.ShouldBe(3); }