Beispiel #1
0
        public void TestCreateAccount_WithValidUsernameAndPassword_ShouldNotThrow()
        {
            var request = new CreateAccountMessages.Request()
            {
                Username = "******",
                Password = "******"
            };

            sut.Validate(request);
        }
        public void TestCreateAccount_WithValidRequest_ShouldRespondSuccessAndSaveToGateway()
        {
            var request = new CreateAccountMessages.Request()
            {
                Username = "******",
                Password = "******"
            };
            var response = Sut.Handle(request);

            Assert.AreEqual(AccountGateway.repo.Count, 1, "Should have 1 account in repo, but have " + AccountGateway.repo.Count);
            Assert.AreEqual(AccountGateway.repo.Values.ElementAt(0).Username, request.Username);
        }
        public void TestCreateAccount_WithValidRequest_ShouldRespondSuccess()
        {
            var request = new CreateAccountMessages.Request()
            {
                Username = "******",
                Password = "******"
            };

            var response = Sut.Handle(request);

            Assert.IsTrue(response.Success, "Should be successful!");
        }
        public void TestCreateAccount_WithValidRequest_ShouldCreateAssociatedPlayer()
        {
            var request = new CreateAccountMessages.Request()
            {
                Username = "******",
                Password = "******"
            };
            var response = Sut.Handle(request);

            Assert.AreEqual(PlayerGateway.repo.Count, 1, "Should have 1 account in repo, but have " + PlayerGateway.repo.Count);
            Assert.AreEqual(PlayerGateway.repo.Values.ElementAt(0).AccountId, AccountGateway.repo.Values.ElementAt(0).Id, "Player's AccountId does not match Account.");
        }
        public void TestCreateAccount_WithEmptyPassword_ShouldRespondWithValidationError()
        {
            var request = new CreateAccountMessages.Request()
            {
                Username = "******",
                Password = null
            };

            var response = Sut.Handle(request);

            Assert.IsFalse(response.Success, "Should not be successful!");
            Assert.AreEqual(response.Exception.Message, CreateAccountValidationException.ValidationMessageFor(CreateAccountValidationExceptions.InvalidPassword));
        }
        public void TestCreateAccount_WithExistingUsername_ShouldRespondCreateAccountExceptionError()
        {
            var request = new CreateAccountMessages.Request()
            {
                Username = "******",
                Password = "******"
            };

            Sut.Handle(request);

            var response = Sut.Handle(request);

            Assert.IsFalse(response.Success, "Should have failed!");
            Assert.AreEqual(response.Exception.Message, CreateAccountException.GetMessage(CreateAccountExceptions.UsernameAlreadyExists, request));
            Assert.AreEqual(AccountGateway.repo.Count, 1, "Should have 1 account in repo, but have " + AccountGateway.repo.Count);
        }
Beispiel #7
0
        public void TestCreateAccount_WithShortUsername_ShouldThrow()
        {
            var request = new CreateAccountMessages.Request()
            {
                Username = "******",
                Password = "******"
            };

            try
            {
                sut.Validate(request);
                Assert.Fail("Should have thrown invalid username exception!");
            } catch (CreateAccountValidationException ex)
            {
                Assert.AreEqual(ex.Message, CreateAccountValidationException.ValidationMessageFor(CreateAccountValidationExceptions.InvalidUsername));
            } catch (Exception ex)
            {
                Assert.Fail("Threw unexpected exception! " + ex.Message);
            }
        }