public void AddUserPOST_ShouldRegister_NewUser()
        {
            // Arrange
            var mockedHttpContext      = new Mock <IHttpContextProvider>();
            var mockedProvider         = new Mock <IVerificationProvider>();
            var mockedMapper           = new Mock <IMapper>();
            var mockedUsersService     = new Mock <IUsersService>();
            var mockedComputersService = new Mock <IComputersService>();
            var mockedLaptopsService   = new Mock <ILaptopsService>();
            var mockedDisplaysService  = new Mock <IDisplaysService>();

            var mockedUser = new Mock <User>();
            var model      = new User()
            {
                Email = "*****@*****.**"
            };

            var viewModel = new RegisterViewModel()
            {
                Email = "*****@*****.**"
            };

            mockedProvider.Setup(v => v.Register(model, "pesho")).Returns(IdentityResult.Success);

            var controller = new AdminPanelController(mockedHttpContext.Object, mockedProvider.Object, mockedMapper.Object,
                                                      mockedUsersService.Object, mockedComputersService.Object, mockedLaptopsService.Object, mockedDisplaysService.Object);

            controller.AddUser(viewModel);

            // Act and Assert
            controller
            .WithCallTo(c => c.AddUser(viewModel))
            .ShouldRedirectTo(c => c.Index());
        }
        public void Displays_ShouldReturnsTrue_WhenViewResult_IsValid()
        {
            // Arrange
            Mapper.Initialize(cfg =>
            {
                cfg.CreateMap <Display, DisplayViewModel>();
                cfg.CreateMap <DisplayViewModel, Display>();
            });

            var mockedHttpContext      = new Mock <IHttpContextProvider>();
            var mockedProvider         = new Mock <IVerificationProvider>();
            var mockedMapper           = new Mock <IMapper>();
            var mockedUsersService     = new Mock <IUsersService>();
            var mockedComputersService = new Mock <IComputersService>();
            var mockedLaptopsService   = new Mock <ILaptopsService>();
            var mockedDisplaysService  = new Mock <IDisplaysService>();

            var controller = new AdminPanelController(mockedHttpContext.Object, mockedProvider.Object, mockedMapper.Object, mockedUsersService.Object,
                                                      mockedComputersService.Object, mockedLaptopsService.Object, mockedDisplaysService.Object);

            //Act and Assert
            controller
            .WithCallTo(c => c.Displays())
            .ShouldRenderPartialView("Displays");
        }
        public void AddDisplayGET_ShouldReturnsTrue_WhenViewResult_IsValid()
        {
            // Arrange
            var controller = new AdminPanelController();

            // Act and Assert
            controller
            .WithCallTo(c => c.AddDisplay())
            .ShouldRenderPartialView("AddDisplay");
        }
        public void Index_ShouldReturnsTrue_WhenViewResult_IsValid()
        {
            // Arrange
            var controller = new AdminPanelController();

            // Act and Assert
            controller
            .WithCallTo(c => c.Index())
            .ShouldRenderView("Index");
        }
Esempio n. 5
0
        // ---------------------------------- Utility ----------------------------------
        private (WebmailContext, AdminPanelController) CreateTestTools(string name)
        {
            var context    = CreateTestContext(name);
            var controller = new AdminPanelController(new SqlUserService(context, new SqlMessageService(context)));

            controller.ControllerContext = new ControllerContext
            {
                HttpContext = new DefaultHttpContext {
                    User = new ClaimsPrincipal()
                }
            };
            return(context, controller);
        }
Esempio n. 6
0
        public void AddFoundAnimalGetRequest_ShouldReturnsTrue_WhenViewResult_IsValid()
        {
            // Arrange
            var verificationMock  = new Mock <IVerificationProvider>();
            var mapperMock        = new Mock <IMapper>();
            var userServiceMock   = new Mock <IUsersService>();
            var animalServiceMock = new Mock <IAnimalsService>();

            var adminPanelController = new AdminPanelController(verificationMock.Object, mapperMock.Object, userServiceMock.Object, animalServiceMock.Object);

            // Act and Assert
            adminPanelController.WithCallTo(c => c.AddFoundAnimal())
            .ShouldRenderView("AddFoundAnimal");
        }
        public void AddDisplayPOST_ShouldReturnsTrue_WhenViewResult_IsValid()
        {
            // Arrange
            Mapper.Initialize(cfg =>
            {
                cfg.CreateMap <Display, DisplayViewModel>();
                cfg.CreateMap <DisplayViewModel, Display>();
            });

            var mockedHttpContext      = new Mock <IHttpContextProvider>();
            var mockedProvider         = new Mock <IVerificationProvider>();
            var mockedMapper           = new Mock <IMapper>();
            var mockedUsersService     = new Mock <IUsersService>();
            var mockedComputersService = new Mock <IComputersService>();
            var mockedLaptopsService   = new Mock <ILaptopsService>();
            var mockedDisplaysService  = new Mock <IDisplaysService>();

            var controller = new AdminPanelController(mockedHttpContext.Object, mockedProvider.Object, mockedMapper.Object, mockedUsersService.Object,
                                                      mockedComputersService.Object, mockedLaptopsService.Object, mockedDisplaysService.Object);

            // Act
            var display = new Display
            {
                Id = Guid.NewGuid()
            };

            var user = new User
            {
                Id = "123"
            };

            var usersCollection = new List <User>()
            {
                user
            };

            mockedProvider.Setup(x => x.CurrentUserId).Returns(user.Id);
            mockedUsersService.Setup(c => c.GetAll()).Returns(usersCollection.AsQueryable());

            mockedDisplaysService.Setup(c => c.Add(display));

            //Assert
            controller
            .WithCallTo(c => c.AddDisplay(display))
            .ShouldRedirectTo(c => c.Index());
        }
Esempio n. 8
0
        public void Index_ShouldReturnsTrue_WhenAnimals_AreValid()
        {
            // Arrange
            Mapper.Initialize(cfg =>
            {
                cfg.CreateMap <Animal, AnimalsViewModel>();
                cfg.CreateMap <AnimalsViewModel, Animal>();

                cfg.CreateMap <User, UserViewModel>();
                cfg.CreateMap <UserViewModel, User>();
            });

            var verificationMock  = new Mock <IVerificationProvider>();
            var mapperMock        = new Mock <IMapper>();
            var userServiceMock   = new Mock <IUsersService>();
            var animalServiceMock = new Mock <IAnimalsService>();

            var adminPanelController = new AdminPanelController(verificationMock.Object, mapperMock.Object, userServiceMock.Object, animalServiceMock.Object);

            // Act
            var animal = new Animal();
            var user   = new User();

            var animalsCollection = new List <Animal>()
            {
                animal
            };
            var usersCollection = new List <User>()
            {
                user
            };


            animalServiceMock.Setup(c => c.GetAll()).Returns(animalsCollection.AsQueryable());

            userServiceMock.Setup(c => c.GetAll()).Returns
                (usersCollection.AsQueryable());

            //Assert
            adminPanelController.WithCallTo(c => c.Index())
            .ShouldRenderDefaultView();
        }
Esempio n. 9
0
        public void Animals_ShouldReturnsTrue_WhenViewResult_IsValid()
        {
            // Arrange
            Mapper.Initialize(cfg =>
            {
                cfg.CreateMap <Animal, AnimalsViewModel>();
                cfg.CreateMap <AnimalsViewModel, Animal>();
            });

            var verificationMock  = new Mock <IVerificationProvider>();
            var mapperMock        = new Mock <IMapper>();
            var userServiceMock   = new Mock <IUsersService>();
            var animalServiceMock = new Mock <IAnimalsService>();

            var adminPanelController = new AdminPanelController(verificationMock.Object, mapperMock.Object, userServiceMock.Object, animalServiceMock.Object);

            //Act and Assert
            adminPanelController.WithCallTo(c => c.Animals(1))
            .ShouldRenderView("Animals");
        }
        public void UpdateUserGET_ShouldReturnsTrue_WhenViewResult_IsValid()
        {
            // Arrange
            Mapper.Initialize(cfg =>
            {
                cfg.CreateMap <User, UserViewModel>();
                cfg.CreateMap <UserViewModel, User>();
            });

            var mockedHttpContext      = new Mock <IHttpContextProvider>();
            var mockedProvider         = new Mock <IVerificationProvider>();
            var mockedMapper           = new Mock <IMapper>();
            var mockedUsersService     = new Mock <IUsersService>();
            var mockedComputersService = new Mock <IComputersService>();
            var mockedLaptopsService   = new Mock <ILaptopsService>();
            var mockedDisplaysService  = new Mock <IDisplaysService>();

            var controller = new AdminPanelController(mockedHttpContext.Object, mockedProvider.Object, mockedMapper.Object,
                                                      mockedUsersService.Object, mockedComputersService.Object, mockedLaptopsService.Object, mockedDisplaysService.Object);

            var user = new User
            {
                Id = "123"
            };

            var usersCollection = new List <User>()
            {
                user
            };

            mockedProvider.Setup(x => x.CurrentUserId).Returns(user.Id);
            mockedUsersService.Setup(c => c.GetAll()).Returns(usersCollection.AsQueryable());


            // Act and Assert
            controller
            .WithCallTo(c => c.UpdateUser(user.Id))
            .ShouldRenderView("UpdateUser");
        }
        public void UpdateUserPOST_ShouldReturnsTrue_IfUser_IsInRoleAdmin()
        {
            // Arrange
            var mockedHttpContext      = new Mock <IHttpContextProvider>();
            var mockedProvider         = new Mock <IVerificationProvider>();
            var mockedMapper           = new Mock <IMapper>();
            var mockedUsersService     = new Mock <IUsersService>();
            var mockedComputersService = new Mock <IComputersService>();
            var mockedLaptopsService   = new Mock <ILaptopsService>();
            var mockedDisplaysService  = new Mock <IDisplaysService>();

            var controller = new AdminPanelController(mockedHttpContext.Object, mockedProvider.Object, mockedMapper.Object,
                                                      mockedUsersService.Object, mockedComputersService.Object, mockedLaptopsService.Object, mockedDisplaysService.Object);

            // Act
            var user = new User
            {
                Id = "123"
            };

            var viewModel = new UserViewModel
            {
                Id   = "123",
                Role = "User"
            };

            mockedMapper.Setup(x => x.Map <User>(viewModel)).Returns(user);

            mockedUsersService.Setup(c => c.Update(user));
            mockedProvider.Setup(x => x.AddToRole(user.Id, "User"));
            mockedProvider.Setup(x => x.RemoveFromRole(user.Id, "Admin"));

            //Assert
            controller
            .WithCallTo(c => c.UpdateUser(viewModel))
            .ShouldRedirectTo(c => c.Index());
        }
        public void Index_ShouldReturnsTrue_WhenUsers_AreValid()
        {
            // Arrange
            Mapper.Initialize(cfg =>
            {
                cfg.CreateMap <Computer, ComputerViewModel>();
                cfg.CreateMap <ComputerViewModel, Computer>();

                cfg.CreateMap <Laptop, LaptopViewModel>();
                cfg.CreateMap <LaptopViewModel, Laptop>();

                cfg.CreateMap <Display, DisplayViewModel>();
                cfg.CreateMap <DisplayViewModel, Display>();

                cfg.CreateMap <User, UserViewModel>();
                cfg.CreateMap <UserViewModel, User>();
            });

            var mockedHttpContext      = new Mock <IHttpContextProvider>();
            var mockedProvider         = new Mock <IVerificationProvider>();
            var mockedMapper           = new Mock <IMapper>();
            var mockedUsersService     = new Mock <IUsersService>();
            var mockedComputersService = new Mock <IComputersService>();
            var mockedLaptopsService   = new Mock <ILaptopsService>();
            var mockedDisplaysService  = new Mock <IDisplaysService>();

            var controller = new AdminPanelController(mockedHttpContext.Object, mockedProvider.Object, mockedMapper.Object,
                                                      mockedUsersService.Object, mockedComputersService.Object, mockedLaptopsService.Object, mockedDisplaysService.Object);

            // Act
            var computer = new Computer();
            var laptop   = new Laptop();
            var display  = new Display();
            var user     = new User();

            var computersCollection = new List <Computer>()
            {
                computer
            };
            var laptopsCollection = new List <Laptop>()
            {
                laptop
            };
            var displaysCollection = new List <Display>()
            {
                display
            };
            var userssCollection = new List <User>()
            {
                user
            };


            mockedComputersService.Setup(c => c.GetAll()).Returns(computersCollection.AsQueryable());

            mockedLaptopsService.Setup(c => c.GetAll()).Returns(laptopsCollection.AsQueryable());

            mockedDisplaysService.Setup(c => c.GetAll()).Returns(displaysCollection.AsQueryable());

            mockedUsersService.Setup(c => c.GetAll()).Returns
                (userssCollection.AsQueryable());

            //Assert
            controller
            .WithCallTo(c => c.Index("User", new Guid(user.Id)))
            .ShouldReturnJson();
        }
Esempio n. 13
0
        public override void TestInitialize()
        {
            base.TestInitialize();

            _adminPanelController = new AdminPanelController(_connectionRepository, _connectionCheckerService);
        }