Exemplo n.º 1
0
        public void GetGendersWithPetType_WithAllGendersHavingPetType_ReturnsAllGenders()
        {
            Setup();

            var _owners = new List <Owner>
            {
                new Owner {
                    Name = "AAA", Age = 30, Gender = Gender.Female, Pets = new List <Pet> {
                        new Pet {
                            Name = "AAA_Pet", Type = PetType.Cat
                        }
                    }
                },
                new Owner {
                    Name = "BBB", Age = 40, Gender = Gender.Male, Pets = new List <Pet> {
                        new Pet {
                            Name = "BBB_Pet", Type = PetType.Cat
                        }
                    }
                },
                new Owner {
                    Name = "CCC", Age = 50, Gender = Gender.Female, Pets = new List <Pet> {
                        new Pet {
                            Name = "CCC_Pet", Type = PetType.Dog
                        }, new Pet {
                            Name = "CCC_Pet2", Type = PetType.Cat
                        }
                    }
                }
            };

            _ownerRepository.GetOwners().Returns(_owners);

            var genders = _ownerService.GetGendersForPetType(PetType.Cat).ToList();

            Assert.AreEqual(2, genders.Count());
            Assert.AreEqual(Gender.Female, genders[0].Gender);
            Assert.AreEqual(2, genders[0].Pets.Count());
            Assert.AreEqual(Gender.Male, genders[1].Gender);
            Assert.AreEqual(1, genders[1].Pets.Count());
            _ownerRepository.Received(1).GetOwners();
        }