public void OwnerGetMaleAnimalCountMethodNegative() { GenderSeperatedViewModel expectedResult = new GenderSeperatedViewModel(); expectedResult.Female = new List <FemaleName>(); expectedResult.Male = new List <MaleName>(); OwnerController appObject = new OwnerController(); GenderSeperatedViewModel actualResult = appObject.GetAnimals(); Assert.AreNotEqual <int>(0, actualResult.Male.Count); }
public GenderSeperatedViewModel GetGenderSeparatedOwnerCatList(List <OwnerModel> ownerViewModel) { //Separate male and female owners var maleOwner = ownerViewModel.Where(x => x.Gender == Constants.Male).Select(p => new Male() { Pets = p.Pets }).ToList(); var femaleOwner = ownerViewModel.Where(x => x.Gender == Constants.Female).Select(p => new Female() { Pets = p.Pets }).ToList(); var itemsMale = from list in maleOwner from item in list.Pets select item; //Merge all male owner's cats List <MaleName> maleNameList = (from item in itemsMale select new MaleName { Name = item.AnimalName, Type = item.AnimalType } ).OrderBy(x => x.Name).ToList(); var itemsFemale = from list in femaleOwner from item in list.Pets select item; //Merge all female owner's cats List <FemaleName> femaleNameList = (from item in itemsFemale select new FemaleName { Name = item.AnimalName, Type = item.AnimalType } ).OrderBy(x => x.Name).ToList(); //Prepare and return result view model consisting both Male and Female view models GenderSeperatedViewModel genderSeperatedVM = new GenderSeperatedViewModel { Male = maleNameList, Female = femaleNameList }; return(genderSeperatedVM); }
public void CheckForCatUnderFemaleMethodBehavioural() //Check whether animal is cat or not under female owner { GenderSeperatedViewModel expectedResult = new GenderSeperatedViewModel(); expectedResult.Female = new List <FemaleName>(); expectedResult.Male = new List <MaleName>(); OwnerController appObject = new OwnerController(); GenderSeperatedViewModel actualResult = appObject.GetAnimals(); if (actualResult.Female.Count > 0) { Assert.AreEqual <string>(Constants.PetType, actualResult.Female[0].Type.ToString()); } else { Assert.AreEqual <string>(Constants.PetType, Constants.PetType); } }
public GenderSeperatedViewModel GetAnimals() { GenderSeperatedViewModel animalViewModel = new GenderSeperatedViewModel(); try { _ownerService = new OwnerService(); _business = new Business(); var list = _ownerService.GetAllOwnerList(); // Call service that pulls out all owner data along with their animals and prepare a owner list List <OwnerModel> ownerViewModel = GetAllOwnerAnimalsViewModel(list); //Convert result into owner model animalViewModel = _business.GetGenderSeparatedOwnerCatList(ownerViewModel); //Get result view model consisting both models 1. Male, 2. Female } catch (Exception ex) { throw ex; } return(animalViewModel); }