public void GetAnimalsByUserId_ShouldReturnAnimalDTOs_WhenValidUserId()
        {
            int animalCount = mockAnimals.Count;

            List <AnimalDTO> animalDTOs = animalManager.GetAnimalsByUserId(1).ToList();

            Assert.AreEqual(animalCount, animalDTOs.Count);
            Assert.AreEqual(1, animalDTOs[0].Id);
            Assert.AreEqual(2, animalDTOs[1].Id);

            //Check mapping is correct
            Assert.AreEqual(50, animalDTOs[0].Hunger);
            Assert.AreEqual(50, animalDTOs[0].Happiness);
            Assert.AreEqual("Gazza", animalDTOs[0].Name);
        }
        public IActionResult Get(int userId)
        {
            try
            {
                userManager.GetUserById(userId);
            }
            //Manager will throw exceptions to manage responses
            catch (InvalidOperationException)
            {
                return(NotFound($"User: {userId} was not found"));
            }

            catch (Exception)
            {
                return(StatusCode(500));
            }

            IEnumerable <AnimalDTO> animalDTOs = animalManager.GetAnimalsByUserId(userId);

            return(Ok(animalDTOs));
        }