public void ContaRegistrar_Usuario_nulo()
        {
            // ARRANGE
            ContaController controller = new ContaController();
            UsuarioModel usuarioModel = null;

            // ACT
            var resultado = (BadRequestErrorMessageResult)controller.Registrar(usuarioModel).Result;

            // ASSERT
            Assert.AreEqual(resultado.Message, RegistroMensagens.REGISTRO_NULO);
        }
        public void ContaRegistrar_Registrar_com_sucesso()
        {
            // ARRANGE
            ContaController controller = new ContaController();
            UsuarioModel usuarioModel = RetornaUsuarioValido();

            // ACT
            var resultado = (OkNegotiatedContentResult<IdentityResult>)controller.Registrar(usuarioModel).Result;

            // ASSERT
            Assert.IsTrue(resultado.Content.Succeeded);
        }
        public void ContaValidacoes_Sem_informar_login()
        {
            // ARRANGE
            ContaController controller = new ContaController();
            UsuarioModel usuarioModel = RetornaUsuarioValido();

            // ACT
            usuarioModel.Login = "";

            var validacaoResultado = ValidaModelState(usuarioModel);

            // ASSERT
            Assert.IsNotNull(validacaoResultado);
            Assert.IsTrue(validacaoResultado.Count == 1);
            Assert.AreEqual(validacaoResultado[0].ErrorMessage, String.Format(CamposValidacaoMensagens.CAMPO_OBRIGATORIO, "Login"));
        }
        public void ContaValidacoes_Informando_senha_invalida()
        {
            // ARRANGE
            ContaController controller = new ContaController();
            UsuarioModel usuarioModel = RetornaUsuarioValido();

            // ACT
            usuarioModel.Senha = "abc";
            usuarioModel.ConfirmarSenha = "abc";

            var validacaoResultado = ValidaModelState(usuarioModel);

            // ASSERT
            Assert.IsNotNull(validacaoResultado);
            Assert.IsTrue(validacaoResultado.Count == 1);
            Assert.AreEqual(validacaoResultado[0].ErrorMessage, String.Format(CamposValidacaoMensagens.TAMANHO_INVALIDO, "Senha", "100", "6"));
        }
        public void ContaValidacoes_Informando_confirmacao_de_senha_invalida()
        {
            // ARRANGE
            ContaController controller = new ContaController();
            UsuarioModel usuarioModel = RetornaUsuarioValido();

            // ACT
            usuarioModel.Senha = "abc123";
            usuarioModel.ConfirmarSenha = "abc";

            var validacaoResultado = ValidaModelState(usuarioModel);

            // ASSERT
            Assert.IsNotNull(validacaoResultado);
            Assert.IsTrue(validacaoResultado.Count == 1);
            Assert.AreEqual(validacaoResultado[0].ErrorMessage, CamposValidacaoMensagens.CONFIRMACAO_SENHA_INVALIDA);
        }