示例#1
0
        public void CanCreateNewAccount()
        {
            // Act
            var account = new Account("*****@*****.**");

            // Assert
            var events = account.GetUncommittedChanges();
            Assert.That(events.Length, Is.EqualTo(1));
            Assert.That(events[0], Is.InstanceOf<AccountCreated>());
        }
示例#2
0
        public void InvalidatesFalsePassword()
        {
            // Arrange
            var account = new Account("*****@*****.**");

            // Act
            account.Activate("some password");

            // Assert
            Assert.That(account.ValidatePassword("invalid password"), Is.False);
        }
示例#3
0
        public void ActivatedAccountCanValidatePasswords()
        {
            // Arrange
            var account = new Account("*****@*****.**");

            // Act
            account.Activate("some password");

            // Assert
            account.ValidatePassword("");
        }
示例#4
0
        public void CanActivateAccount()
        {
            // Arrange
            var account = new Account("*****@*****.**");

            // Act
            account.Activate("some password");

            // Assert
            var events = account.GetUncommittedChanges();
            Assert.That(events.Length, Is.EqualTo(2));
            Assert.That(events[1], Is.InstanceOf<AccountActivated>());
        }
示例#5
0
        public async Task <IActionResult> Update([FromBody]  Models.Account account)
        {
            var existing = this.context.Accounts.Where(p => p.Id == account.Id).FirstOrDefault();

            if (existing == null)
            {
                return(NotFound());
            }

            this.context.Accounts.Update(account);
            await this.context.SaveChangesAsync();

            return(NoContent());
        }
示例#6
0
        public void InactiveAccountDoesNotValidatePasswords()
        {
            // Arrange
            var account = new Account("*****@*****.**");

            // Act
            try
            {
                account.ValidatePassword("some password");

                // Assert
                Assert.Fail("Should throw");
            }
            catch (InvalidOperationException)
            {
            }
        }
示例#7
0
 public async Task <IActionResult> Create([FromBody] Models.Account account)
 {
     this.context.Add(account);
     this.context.SaveChanges();
     return(await Task.FromResult(Ok(account)));
 }