/// <summary>
            /// Adjusts dog type for each dog in a pack.
            /// NOTE: significantly improves the performance of the tests.
            /// </summary>
            static DogPack AdjustDogPack(DogPack dp)
            {
                if (dp.Dogs.Any())
                {
                    if (!HaveSameType(dp.Dogs))
                    {
                        var first = dp.Dogs.First();
                        dp.Dogs.ForEach(x =>
                                        (x.Size, x.IsAggressive) = (first.Size, first.IsAggressive));
                    }
                }

                return(dp);
            }
        public static (DogSize, bool) GetDogPackType(DogPack pack)
        {
            var firstDog = pack.Dogs.FirstOrDefault();

            return(firstDog.Size, firstDog.IsAggressive);
        }