public async void UpdatingLostDogSuccessfulForExistingDogNoPicture()
        {
            var security = new Mock <ISecurityService>();
            var repo     = new Mock <ILostDogRepository>();

            repo.Setup(o => o.UpdateLostDog(It.IsAny <LostDog>())).Returns(Task.FromResult(new RepositoryResponse <LostDog>()));
            var service = new LostDogService(repo.Object, security.Object, mapper, logger);

            Assert.True((await service.UpdateLostDog(new UploadLostDogDto(), null, 1)).Successful);
        }
        public async void UpdatingLostDogFailsForNonExistingDogNewPicture()
        {
            var repo     = new Mock <ILostDogRepository>();
            var security = new Mock <ISecurityService>();

            using var memoryStream = new MemoryStream(new byte[] { 1, 2, 3, 4 });
            var picture = new FormFile(memoryStream, 0, memoryStream.Length, "name", "filename")
            {
                Headers     = new HeaderDictionary(),
                ContentType = "image/jpeg"
            };
            var dogDto = new UploadLostDogDto();

            repo.Setup(o => o.UpdateLostDog(It.IsAny <LostDog>())).Returns(Task.FromResult(new RepositoryResponse <LostDog>()
            {
                Successful = false
            }));
            security.Setup(s => s.IsPictureValid(It.IsAny <IFormFile>())).Returns((IFormFile f) => new ServiceResponse());
            var service = new LostDogService(repo.Object, security.Object, mapper, logger);

            Assert.False((await service.UpdateLostDog(dogDto, picture, 1)).Successful);
        }