public ActionResult Details(int id)
        {
            var svc   = new ShelterService();
            var model = svc.GetShelterById(id);

            return(View(model));
        }
Beispiel #2
0
        public async void AddLostDogSuccessfulForValidPostDogWithImage()
        {
            var shelterRepo    = new Mock <IShelterRepository>();
            var shelterDogRepo = new Mock <IShelterDogRepository>();
            var security       = new Mock <ISecurityService>();
            var account        = new Mock <IAccountService>();

            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 UploadShelterDogDto();
            var dog    = mapper.Map <ShelterDog>(dogDto);

            shelterDogRepo.Setup(o => o.AddShelterDog(It.IsAny <ShelterDog>())).Returns((ShelterDog d) => Task.FromResult(new RepositoryResponse <ShelterDog>()
            {
                Data = d
            }));
            security.Setup(s => s.IsPictureValid(It.IsAny <IFormFile>())).Returns((IFormFile f) => new ServiceResponse());
            var service = new ShelterService(shelterRepo.Object, shelterDogRepo.Object, account.Object, security.Object, mapper, logger);

            Assert.True((await service.AddShelterDog(dogDto, picture)).Successful);
        }
        // GET: Shelter
        public ActionResult Index()
        {
            //var userId = Guid.Parse(User.Identity.GetUserId());
            var service = new ShelterService();
            var model   = service.GetShelters();

            return(View(model));
        }
        public ActionResult DeletePost(int id)
        {
            var service = new ShelterService();

            service.DeleteShelter(id);
            TempData["SaveResult"] = "Shelter deleted.";

            return(RedirectToAction("Index"));
        }
Beispiel #5
0
        public async void GetLostDogsDetailsSuccessfulForExistingDog()
        {
            var shelterRepo    = new Mock <IShelterRepository>();
            var shelterDogRepo = new Mock <IShelterDogRepository>();
            var security       = new Mock <ISecurityService>();
            var account        = new Mock <IAccountService>();

            shelterDogRepo.Setup(o => o.GetShelterDogDetails(It.IsAny <int>())).Returns(Task.FromResult(new RepositoryResponse <ShelterDog>()));
            var service = new ShelterService(shelterRepo.Object, shelterDogRepo.Object, account.Object, security.Object, mapper, logger);

            Assert.True((await service.GetShelterDogDetails(1)).Successful);
        }
Beispiel #6
0
        public async void GetSheltersSuccessfulForRepoSucess()
        {
            var shelterRepo    = new Mock <IShelterRepository>();
            var shelterDogRepo = new Mock <IShelterDogRepository>();
            var security       = new Mock <ISecurityService>();
            var account        = new Mock <IAccountService>();

            shelterRepo.Setup(o => o.GetShelters(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <int>(), It.IsAny <int>())).Returns(Task.FromResult(new RepositoryResponse <List <Shelter>, int>()));
            var service = new ShelterService(shelterRepo.Object, shelterDogRepo.Object, account.Object, security.Object, mapper, logger);

            Assert.True((await service.GetShelters(null, null, 0, 0)).Successful);
        }
        public ActionResult Edit(int id)
        {
            var service = new ShelterService();
            var detail  = service.GetShelterById(id);
            var model   =
                new ShelterEdit
            {
                ShelterId          = detail.ShelterId,
                ShelterName        = detail.ShelterName,
                ShelterAddress     = detail.ShelterAddress,
                ShelterPhoneNumber = detail.ShelterPhoneNumber,
            };

            return(View(model));
        }
Beispiel #8
0
        public async void AddShelterFailsForFailedRepoResponse()
        {
            var shelterRepo    = new Mock <IShelterRepository>();
            var shelterDogRepo = new Mock <IShelterDogRepository>();
            var security       = new Mock <ISecurityService>();
            var account        = new Mock <IAccountService>();

            shelterRepo.Setup(r => r.AddShelter(It.IsAny <Shelter>())).Returns(Task.FromResult(new RepositoryResponse <Shelter>()
            {
                Successful = false
            }));
            var service = new ShelterService(shelterRepo.Object, shelterDogRepo.Object, account.Object, security.Object, mapper, logger);

            Assert.False((await service.AddShelter(new ShelterDto())).Successful);
        }
Beispiel #9
0
        public async void GetLostDogsFailsForReporError()
        {
            var shelterRepo    = new Mock <IShelterRepository>();
            var shelterDogRepo = new Mock <IShelterDogRepository>();
            var security       = new Mock <ISecurityService>();
            var account        = new Mock <IAccountService>();

            shelterDogRepo.Setup(o => o.GetShelterDogs(It.IsAny <int>(), It.IsAny <int>(), It.IsAny <int>())).Returns(Task.FromResult(new RepositoryResponse <List <ShelterDog>, int>()
            {
                Successful = false
            }));
            var service = new ShelterService(shelterRepo.Object, shelterDogRepo.Object, account.Object, security.Object, mapper, logger);

            Assert.False((await service.GetShelterDogs(1, 0, 0)).Successful);
        }
Beispiel #10
0
        public async void GetShelterSuccessfulForSuccessRepoResponse()
        {
            var shelterRepo    = new Mock <IShelterRepository>();
            var shelterDogRepo = new Mock <IShelterDogRepository>();
            var security       = new Mock <ISecurityService>();
            var account        = new Mock <IAccountService>();

            shelterRepo.Setup(r => r.GetShelter(It.IsAny <int>())).Returns(Task.FromResult(new RepositoryResponse <Shelter>()
            {
                Data = new Shelter()
            }));
            var service = new ShelterService(shelterRepo.Object, shelterDogRepo.Object, account.Object, security.Object, mapper, logger);

            Assert.True((await service.GetShelter(1)).Successful);
        }
Beispiel #11
0
        public async void DeleteShelterSuccessfulForSuccessResponses()
        {
            var shelterRepo    = new Mock <IShelterRepository>();
            var shelterDogRepo = new Mock <IShelterDogRepository>();
            var security       = new Mock <ISecurityService>();
            var account        = new Mock <IAccountService>();

            shelterRepo.Setup(r => r.GetShelterApprovalInvariant(It.IsAny <int>())).Returns(Task.FromResult(new RepositoryResponse <Shelter>()
            {
                Data = new Shelter()
            }));
            shelterRepo.Setup(r => r.DeleteShelter(It.IsAny <int>())).Returns(Task.FromResult(new RepositoryResponse()));
            account.Setup(s => s.DeleteAccount(null, It.IsAny <string>(), null)).Returns(Task.FromResult(new ServiceResponse()));
            var service = new ShelterService(shelterRepo.Object, shelterDogRepo.Object, account.Object, security.Object, mapper, logger);

            Assert.True((await service.DeleteShelter(1)).Successful);
        }
        public ActionResult Create(ShelterCreate model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }
            //var userId = Guid.Parse(User.Identity.GetUserId());
            var service = new ShelterService();

            if (service.CreateShelter(model))
            {
                TempData["SaveResult"] = "Your shelter was created.";
                return(RedirectToAction("Index"));
            }
            ;
            ModelState.AddModelError("", "Shelter could not be created.");
            return(View(model));
        }
Beispiel #13
0
        public async void AddShelterSuccessfulForSuccessfulRepoAndAccountServiceResponse()
        {
            var shelterRepo    = new Mock <IShelterRepository>();
            var shelterDogRepo = new Mock <IShelterDogRepository>();
            var security       = new Mock <ISecurityService>();
            var account        = new Mock <IAccountService>();

            shelterRepo.Setup(r => r.AddShelter(It.IsAny <Shelter>())).Returns(Task.FromResult(new RepositoryResponse <Shelter>()
            {
                Data = new Shelter()
            }));
            account.Setup(s => s.AddShelterAccount(It.IsAny <Shelter>())).Returns(Task.FromResult(new ServiceResponse <GetAccountDto>()
            {
                Data = new GetAccountDto()
            }));
            var service = new ShelterService(shelterRepo.Object, shelterDogRepo.Object, account.Object, security.Object, mapper, logger);

            Assert.True((await service.AddShelter(new ShelterDto())).Successful);
        }
Beispiel #14
0
        public async void RejectShelterFailsForFailedDeleteRepoResponse()
        {
            var shelterRepo    = new Mock <IShelterRepository>();
            var shelterDogRepo = new Mock <IShelterDogRepository>();
            var security       = new Mock <ISecurityService>();
            var account        = new Mock <IAccountService>();

            shelterRepo.Setup(r => r.DeleteShelter(It.IsAny <int>())).Returns(Task.FromResult(new RepositoryResponse()
            {
                Successful = false
            }));
            shelterRepo.Setup(r => r.GetShelterApprovalInvariant(It.IsAny <int>())).Returns(Task.FromResult(new RepositoryResponse <Shelter>()
            {
                Data = new Shelter()
            }));
            var service = new ShelterService(shelterRepo.Object, shelterDogRepo.Object, account.Object, security.Object, mapper, logger);

            Assert.False((await service.RejectShelter(1)).Successful);
        }
Beispiel #15
0
        public async void AddLostDogFailsForValidPostDogAndInvalidImage()
        {
            var shelterRepo    = new Mock <IShelterRepository>();
            var shelterDogRepo = new Mock <IShelterDogRepository>();
            var security       = new Mock <ISecurityService>();
            var account        = new Mock <IAccountService>();
            var picture        = new FormFile(null, 0, 0, "name", "filename");
            var dogDto         = new UploadShelterDogDto();
            var dog            = mapper.Map <ShelterDog>(dogDto);

            shelterDogRepo.Setup(o => o.AddShelterDog(dog)).Returns(Task.FromResult(new RepositoryResponse <ShelterDog>()
            {
                Data = dog
            }));
            security.Setup(s => s.IsPictureValid(It.IsAny <IFormFile>())).Returns((IFormFile f) => new ServiceResponse()
            {
                Successful = false
            });
            var service = new ShelterService(shelterRepo.Object, shelterDogRepo.Object, account.Object, security.Object, mapper, logger);

            Assert.False((await service.AddShelterDog(dogDto, null)).Successful);
        }
        public ActionResult Edit(int id, ShelterEdit model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            if (model.ShelterId != id)
            {
                ModelState.AddModelError("", "Id Mismatch");
                return(View(model));
            }

            var service = new ShelterService();

            if (service.UpdateShelter(model))
            {
                TempData["SaveResult"] = "Your shelter was updated.";
                return(RedirectToAction("Index"));
            }

            ModelState.AddModelError("", "Your shelter could not be updated.");
            return(View(model));
        }