public void ReturnCorrectResult()
        {
            // Arrange
            var mockedMapperService = new Mock <IMapperService>();
            var mappedProfile       = new ProfilePersonalnfo();

            mockedMapperService.Setup(x => x.MapObject <ProfilePersonalnfo>(It.IsAny <CustomUser>())).Returns(mappedProfile);
            var mockedImageService  = new Mock <IImageService>();
            var mockedUserService   = new Mock <IUserService>();
            var mockedFriendService = new Mock <IFriendService>();

            var viewModelService = new ViewModelService(
                mockedMapperService.Object,
                mockedImageService.Object,
                mockedUserService.Object,
                mockedFriendService.Object);

            byte[] profileImageContent = new byte[] { 1, 3, 5 };
            var    user = new CustomUser()
            {
                ProfileImage = new ProfileImage()
                {
                    Content = profileImageContent
                }
            };

            // Act
            var result = viewModelService.GetMappedProfilePersonalInfo(user);

            // Assert
            Assert.IsNotNull(result);
            Assert.AreEqual(result, mappedProfile);
            Assert.IsInstanceOf <ProfilePersonalnfo>(result);
        }
        public void CallMapperService_MapObjectOnce()
        {
            // Arrange
            var mockedMapperService = new Mock <IMapperService>();
            var mappedProfile       = new ProfilePersonalnfo();

            mockedMapperService.Setup(x => x.MapObject <ProfilePersonalnfo>(It.IsAny <CustomUser>())).Returns(mappedProfile);
            var mockedImageService  = new Mock <IImageService>();
            var mockedUserService   = new Mock <IUserService>();
            var mockedFriendService = new Mock <IFriendService>();

            var viewModelService = new ViewModelService(
                mockedMapperService.Object,
                mockedImageService.Object,
                mockedUserService.Object,
                mockedFriendService.Object);

            byte[] profileImageContent = new byte[] { 1, 3, 5 };
            var    user = new CustomUser()
            {
                ProfileImage = new ProfileImage()
                {
                    Content = profileImageContent
                }
            };

            // Act
            viewModelService.GetMappedProfilePersonalInfo(user);

            // Assert
            mockedMapperService.Verify(x => x.MapObject <ProfilePersonalnfo>(It.Is <CustomUser>(u => u == user)), Times.Once);
        }
Exemple #3
0
        public void ReturnCorrectUser()
        {
            // Arrange
            var mockedAspIdentityUserFactory = new Mock <IAspIdentityUserFactory>();
            var mockedUserFactory            = new Mock <ICustomUserFactory>();
            var mockedUserRepository         = new Mock <IEFRepository <CustomUser> >();
            var user = new CustomUser();

            mockedUserRepository.Setup(x => x.GetById(It.IsAny <int>())).Returns(user);
            var mockedUnitOfWork         = new Mock <IUnitOfWork>();
            var mockedImageService       = new Mock <IImageService>();
            var mockedProfileLogoFactory = new Mock <IProfileLogoFactory>();

            var accountService = new AccountService(
                mockedAspIdentityUserFactory.Object,
                mockedUserFactory.Object,
                mockedUserRepository.Object,
                mockedUnitOfWork.Object,
                mockedImageService.Object,
                mockedProfileLogoFactory.Object);
            int id           = 5;
            var personalInfo = new ProfilePersonalnfo()
            {
                Id = id
            };

            // Act
            var result = accountService.EditProfile(personalInfo);

            // Assert
            Assert.IsNotNull(result);
            Assert.IsInstanceOf <CustomUser>(result);
        }
Exemple #4
0
        public void CallUserRepository_GetByIdOnce()
        {
            // Arrange
            var mockedAspIdentityUserFactory = new Mock <IAspIdentityUserFactory>();
            var mockedUserFactory            = new Mock <ICustomUserFactory>();
            var mockedUserRepository         = new Mock <IEFRepository <CustomUser> >();
            var user = new CustomUser();

            mockedUserRepository.Setup(x => x.GetById(It.IsAny <int>())).Returns(user);
            var mockedUnitOfWork         = new Mock <IUnitOfWork>();
            var mockedImageService       = new Mock <IImageService>();
            var mockedProfileLogoFactory = new Mock <IProfileLogoFactory>();

            var accountService = new AccountService(
                mockedAspIdentityUserFactory.Object,
                mockedUserFactory.Object,
                mockedUserRepository.Object,
                mockedUnitOfWork.Object,
                mockedImageService.Object,
                mockedProfileLogoFactory.Object);
            int id           = 1;
            var personalInfo = new ProfilePersonalnfo()
            {
                Id = id
            };

            // Act
            accountService.EditProfile(personalInfo);

            // Assert
            mockedUserRepository.Verify(x => x.GetById(It.Is <int>(i => i == id)), Times.Once);
        }
Exemple #5
0
        public void CallUserRepository_UpdateWithUpdatedUserProperties()
        {
            // Arrange
            var mockedAspIdentityUserFactory = new Mock <IAspIdentityUserFactory>();
            var mockedUserFactory            = new Mock <ICustomUserFactory>();
            var mockedUserRepository         = new Mock <IEFRepository <CustomUser> >();
            var user = new CustomUser();

            mockedUserRepository.Setup(x => x.GetById(It.IsAny <int>())).Returns(user);
            var mockedUnitOfWork         = new Mock <IUnitOfWork>();
            var mockedImageService       = new Mock <IImageService>();
            var mockedProfileLogoFactory = new Mock <IProfileLogoFactory>();

            var accountService = new AccountService(
                mockedAspIdentityUserFactory.Object,
                mockedUserFactory.Object,
                mockedUserRepository.Object,
                mockedUnitOfWork.Object,
                mockedImageService.Object,
                mockedProfileLogoFactory.Object);
            int    id           = 1;
            string firstName    = "Some name";
            string lastName     = "Other name";
            int    age          = 15;
            string city         = "Pekin";
            string school       = "Some school";
            string company      = "Some company";
            var    personalInfo = new ProfilePersonalnfo()
            {
                Id        = id,
                FirstName = firstName,
                LastName  = lastName,
                Age       = age,
                City      = city,
                School    = school,
                Company   = company
            };

            // Act
            accountService.EditProfile(personalInfo);

            // Assert
            mockedUserRepository
            .Verify(
                x => x.Update(
                    It.Is <CustomUser>(
                        u => u == user &&
                        user.FirstName == firstName &&
                        user.LastName == lastName &&
                        user.Age == age &&
                        user.City == city &&
                        user.School == school &&
                        user.Company == company)),
                Times.Once);
        }
Exemple #6
0
        public ActionResult Edit(ProfilePersonalnfo model)
        {
            if (!this.ModelState.IsValid)
            {
                return(this.PartialView("_ProfilePersonalInfoPartial", model));
            }

            var updatedUser  = this.accountService.EditProfile(model);
            var updatedModel = this.viewModelService.GetMappedProfilePersonalInfo(updatedUser);

            return(this.PartialView("_ProfilePersonalInfoPartial", updatedModel));
        }
Exemple #7
0
        public CustomUser EditProfile(ProfilePersonalnfo personalInfo)
        {
            var user = this.userRepository.GetById(personalInfo.Id);

            user.FirstName = personalInfo.FirstName;
            user.LastName  = personalInfo.LastName;
            user.Age       = personalInfo.Age;
            user.City      = personalInfo.City;
            user.School    = personalInfo.School;
            user.Company   = personalInfo.Company;

            this.userRepository.Update(user);
            this.unitOfWork.Commit();
            return(user);
        }
Exemple #8
0
        public void ReturnPartialView_WithSameModel_WhenNoErrors()
        {
            // Arrange
            var mockedAccountService   = new Mock <IAccountService>();
            var mockedUserService      = new Mock <IUserService>();
            var mockedFriendService    = new Mock <IFriendService>();
            var mockedViewModelService = new Mock <IViewModelService>();
            var updatedModel           = new ProfilePersonalnfo();

            mockedViewModelService.Setup(x => x.GetMappedProfilePersonalInfo(It.IsAny <CustomUser>())).Returns(updatedModel);

            var profileController = new ProfileController(
                mockedAccountService.Object,
                mockedUserService.Object,
                mockedFriendService.Object,
                mockedViewModelService.Object);
            var model = new ProfilePersonalnfo();

            // Act & Assert
            profileController
            .WithCallTo(x => x.Edit(model))
            .ShouldRenderPartialView("_ProfilePersonalInfoPartial")
            .WithModel(updatedModel);
        }