public async Task GetAllAsync_ReturnsEmptyList_WhenNoBottlesReturnedFromCollection() { //Arrange var mockCursor = CreateAndSetUpMockCursor(new List <BottleMongoModel>()); var mockCollection = CreateAndSetupMockMongoCollection(mockCursor.Object); _mockDbContext.SetupGet(c => c.Collection).Returns(mockCollection.Object); var repo = new BottleMongoRepository(_mockDbContext.Object, _toMongoModelMapper, _toDomainModelMapper); //Act var result = await repo.GetAllAsync(); //Assert Assert.IsEmpty(result); }
public async Task GetAllAsync_ReturnsListContainingAllBottles_WhenBottlesReturnedFromCollection() { //Arrange var mongoBottleListReturnedByCollection = new List <BottleMongoModel> { new BottleMongoModel { BottleId = new ObjectId("507f1f77bcf86cd799439010"), Name = "bottle1" }, new BottleMongoModel { BottleId = new ObjectId("507f1f77bcf86cd799439011"), Name = "bottle2" } }; var mockCursor = CreateAndSetUpMockCursor(mongoBottleListReturnedByCollection); var mockCollection = CreateAndSetupMockMongoCollection(mockCursor.Object); _mockDbContext.SetupGet(c => c.Collection).Returns(mockCollection.Object); var expectedDomainBottleList = new List <BottleDomainModel> { new BottleDomainModel { BottleId = "507f1f77bcf86cd799439010", Name = "bottle1" }, new BottleDomainModel { BottleId = "507f1f77bcf86cd799439011", Name = "bottle2" } }; var repo = new BottleMongoRepository(_mockDbContext.Object, _toMongoModelMapper, _toDomainModelMapper); //Act var result = await repo.GetAllAsync(); //Assert Assert.AreEqual(expectedDomainBottleList[0].BottleId, result.ToList()[0].BottleId); Assert.AreEqual(expectedDomainBottleList[0].Name, result.ToList()[0].Name); Assert.AreEqual(expectedDomainBottleList[1].BottleId, result.ToList()[1].BottleId); Assert.AreEqual(expectedDomainBottleList[1].Name, result.ToList()[1].Name); }