Ejemplo n.º 1
0
        public void TaskFailTest()
        {
            var task   = new UpdateUserAccount(EmptyDbContext);
            var result = task.DoTask(null);

            Assert.IsFalse(result.Success);
            Assert.IsNotNull(result.Exception);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Provides the Update request for the 'UserAccounts' resource.
        /// </summary>
        public UpdateUserAccountResponse Put(UpdateUserAccount body)
        {
            return(ProcessRequest(body, HttpStatusCode.Accepted, () =>
            {
                var response = this.UserAccountsManager.UpdateUserAccount(this.Request, body);

                return response;
            }));
        }
Ejemplo n.º 3
0
            public void WhenUpdateUserAccountWithNewPasswordAndWrongOldPassword_ThenThrows()
            {
                var created = this.CreateNewUserAccount();

                var newAccount = new UpdateUserAccount
                {
                    Id = created,
                    OldPasswordHash = PasswordHasher.CreateHash("wrongpassword"),
                    NewPasswordHash = PasswordHasher.CreateHash("anewpassword"),
                };

                Assert.Throws <InvalidOperationException>(HttpErrorCode.FromHttpStatusCode(HttpStatusCode.BadRequest),
                                                          () => Client.Put(newAccount));
            }
Ejemplo n.º 4
0
            public void WhenUpdateUserAccountWithNewPassword_ThenUpdates()
            {
                var created = this.CreateNewUserAccount();

                var account = Client.Get(new GetUserAccount {
                    Id = created
                });

                var newPasswordHash = PasswordHasher.CreateHash("anewpassword");
                var newAccount      = new UpdateUserAccount
                {
                    Id = created,
                    OldPasswordHash = account.UserAccount.PasswordHash,
                    NewPasswordHash = newPasswordHash,
                };

                var result = Client.Put(newAccount);

                Assert.Equal(newPasswordHash, result.UserAccount.PasswordHash);
            }
            public void Initialize()
            {
                validator = new UpdateUserAccountValidator();

                dto = new UpdateUserAccount
                {
                    Id      = Guid.NewGuid().ToString(),
                    Address = new Address
                    {
                        Street1 = "astreet1",
                        Street2 = "astreet2",
                        Town    = "atown",
                    },
                    Email           = "*****@*****.**",
                    MobilePhone     = "+123-045-67 89 10",
                    Forenames       = "forenames",
                    OldPasswordHash = PasswordHasher.CreateHash("apassword"),
                    NewPasswordHash = PasswordHasher.CreateHash("apassword"),
                    Surname         = "asurname",
                };
            }
Ejemplo n.º 6
0
 UpdateUserAccountResponse IUserAccountsManager.UpdateUserAccount(IRequest request, UpdateUserAccount body)
 {
     return(new UpdateUserAccountResponse
     {
         UserAccount =
             (UserAccount)
             UpdateUserAccount(request.GetCurrentUser(), body.Id, body.OldPasswordHash,
                               body.NewPasswordHash, body.Forenames,
                               body.Surname, body.Email, body.MobilePhone, body.Address),
     });
 }
Ejemplo n.º 7
0
        public void TaskSuccessTest()
        {
            var testUser = TestsModel.User;

            testUser.Type = UserType.PublisherAdministrator;
            var addUserTask   = new AddUser(DbContext, new AddPerson(DbContext, new FormattingService()), new FormattingService());
            var addUserResult = addUserTask.DoTask(testUser);

            Assert.IsTrue(addUserResult.Success);
            Assert.IsNull(addUserResult.Exception);

            var paymentService = new ListServices(DbContext).DoTask(null).Data.SingleOrDefault(s => s.Name.ToLower() == "payment");

            Assert.IsNotNull(paymentService);

            var allPlatforms     = new ListPlatforms(DbContext).DoTask(null).Data.ToList();
            var paymentPlatforms = new List <Platform>();

            foreach (var platform in allPlatforms)
            {
                paymentPlatforms.AddRange(from service in platform.Services where service.Id == paymentService.Id select platform);
            }

            var paymentPlatform = paymentPlatforms[new Random().Next(0, paymentPlatforms.Count)];

            var userAccount = new UserAccount
            {
                IsPreferred = true,
                Platform    = paymentPlatform,
                User        = testUser,
                Username    = "******" + DateTime.Now.Ticks
            };

            var addUserAccountTask   = new AddUserAccount(DbContext);
            var addUserAccountResult = addUserAccountTask.DoTask(userAccount);

            Assert.IsTrue(addUserAccountResult.Success);
            Assert.IsNull(addUserAccountResult.Exception);
            Assert.IsNotNull(addUserAccountResult.Data);

            var getUserAccountTask   = new GetUserAccount(DbContext);
            var getUserAccountResult = getUserAccountTask.DoTask(userAccount.Id);

            Assert.IsTrue(getUserAccountResult.Success);
            Assert.IsNull(getUserAccountResult.Exception);
            Assert.IsNotNull(getUserAccountResult.Data);

            Assert.AreEqual(userAccount.PlatformId, getUserAccountResult.Data.PlatformId);
            Assert.AreEqual(userAccount.UserId, getUserAccountResult.Data.UserId);
            Assert.AreEqual(userAccount.IsPreferred, getUserAccountResult.Data.IsPreferred);
            Assert.AreEqual(userAccount.Username, getUserAccountResult.Data.Username);

            userAccount.Username    = "******" + DateTime.Now.Ticks;
            userAccount.IsPreferred = false;

            var task   = new UpdateUserAccount(DbContext);
            var result = task.DoTask(userAccount);

            Assert.IsTrue(result.Success);
            Assert.IsNull(result.Exception);

            getUserAccountTask   = new GetUserAccount(DbContext);
            getUserAccountResult = getUserAccountTask.DoTask(userAccount.Id);
            Assert.AreEqual(userAccount.PlatformId, getUserAccountResult.Data.PlatformId);
            Assert.AreEqual(userAccount.UserId, getUserAccountResult.Data.UserId);
            Assert.AreEqual(userAccount.IsPreferred, getUserAccountResult.Data.IsPreferred);
            Assert.AreEqual(userAccount.Username, getUserAccountResult.Data.Username);

            var person           = testUser.Person;
            var removeUserTask   = new RemoveUser(DbContext);
            var removeUserResult = removeUserTask.DoTask(testUser);

            Assert.IsTrue(removeUserResult.Success);
            Assert.IsNull(removeUserResult.Exception);

            var removePersonTask   = new RemovePerson(DbContext);
            var removePersonResult = removePersonTask.DoTask(person);

            Assert.IsTrue(removePersonResult.Success);
            Assert.IsNull(removePersonResult.Exception);
        }