public void GetPetsByOwnerGenderGroupCount() { // Arrange var mockProvider = new MockProvider(); var mockRepository = new Mock <IPetOwnerRepository>(); mockRepository.Setup(p => p.GetAllPetOwnerDetails()).Returns(mockProvider.GetMockPetOwnerResult()); var petService = new PetOwnerService(mockRepository.Object); // Act var result = petService.GetPetDetailsByGenderGroup(PetType.Cat); // Assert Assert.AreEqual(result.Count, 2); }
public void GetPetsByOwnerGenderEachGenderGroupAvailable() { // Arrange var mockProvider = new MockProvider(); var mockRepository = new Mock <IPetOwnerRepository>(); mockRepository.Setup(p => p.GetAllPetOwnerDetails()).Returns(mockProvider.GetMockPetOwnerResult()); var petService = new PetOwnerService(mockRepository.Object); // Act var result = petService.GetPetDetailsByGenderGroup(PetType.Cat); // Assert Assert.IsTrue(result.Any(r => r.GroupName == Constants.Gender.Male.ToString())); Assert.IsTrue(result.Any(r => r.GroupName == Constants.Gender.Female.ToString())); }
public void TestEmptyPetListExistsForSingleGroup() { // Arrange var mockProvider = new MockProvider(); var mockRepository = new Mock <IPetOwnerRepository>(); mockRepository.Setup(p => p.GetAllPetOwnerDetails()).Returns(mockProvider.GetMockPetOwnerSingleNullPetArrayResult()); var petService = new PetOwnerService(mockRepository.Object); // Act var result = petService.GetPetDetailsByGenderGroup(PetType.Cat); var maleGroupPetNames = result.Where(r => r.GroupName == Constants.Gender.Male.ToString()).SelectMany(m => m.PetNames); // Assert Assert.AreEqual(maleGroupPetNames.Count(), 0); }
public void TestOrderSequenceOfPetsForMaleOwner(int index) { // Arrange var mockProvider = new MockProvider(); var mockRepository = new Mock <IPetOwnerRepository>(); mockRepository.Setup(p => p.GetAllPetOwnerDetails()).Returns(mockProvider.GetMockPetOwnerResult()); var petService = new PetOwnerService(mockRepository.Object); // Act var result = petService.GetPetDetailsByGenderGroup(PetType.Cat); Assert.IsNotNull(result); var petNames = result.Where(r => r.GroupName == Constants.Gender.Male.ToString()).SelectMany(p => p.PetNames); var expectedResult = mockProvider.GetMockPetGroup().Where(r => r.GroupName == Constants.Gender.Male.ToString()).SelectMany(m => m.PetNames); // Assert Microsoft.VisualStudio.TestTools.UnitTesting.Assert.AreEqual(petNames.ElementAt(index), expectedResult.ElementAt(index)); }