示例#1
0
        public void Garcom_Validar_DeveTerSucesso()
        {
            //Arrange & Act
            var garcom = new GarcomTestBuilder().Build();

            //Assert
            garcom.IsSuccess.ShouldBeTrue();
        }
示例#2
0
        public void Validar_ApelidoAcimaLimiteCaracteres_DeveFalhar()
        {
            //Arrange & Act
            var garcom = new GarcomTestBuilder()
                         .ComApelido("Garçom".PadRight(GarconsConstantes.GarcomTamanhoMaximoApelido + 5))
                         .Build();

            //Assert
            garcom.IsFailure.ShouldBeTrue();
            garcom.Error.ShouldContain(GarconsConstantes.ApelidoDeveTerAteCaracteres);
        }
示例#3
0
        public void Validar_NomeAcimaLimiteCaracteres_DeveFalhar()
        {
            //Arrange & Act
            var garcom = new GarcomTestBuilder()
                         .ComNome("José da Silva".PadRight(GarconsConstantes.GarcomTamanhoMaximoNome + 5))
                         .Build();

            //Assert
            garcom.IsFailure.ShouldBeTrue();
            garcom.Error.ShouldContain(GarconsConstantes.NomeDeveTerAteCaracteres);
        }
示例#4
0
        public void Validar_SemNome_DeveFalhar()
        {
            //Arrange & Act
            var garcom = new GarcomTestBuilder()
                         .ComNome("")
                         .Build();

            //Assert
            garcom.IsFailure.ShouldBeTrue();
            garcom.Error.ShouldContain(GarconsConstantes.GarcomNomeEhObrigatorio);
        }
示例#5
0
        public void AdicionarSetor_SetorInvalido_DeveFalhar()
        {
            //Arrange
            var garcom = new GarcomTestBuilder().Build().Value;

            //Act
            Result result = garcom.VincularSetor(0);

            //Assert
            result.IsFailure.ShouldBeTrue();
            result.Error.ShouldContain(GarconsConstantes.SetorIdNaoEhValido);
        }
示例#6
0
        public void AdicionarSetor_SetorJaAdicionado_DeveFalhar()
        {
            //Arrange
            var garcom = new GarcomTestBuilder().Build().Value;

            garcom.VincularSetor(1);

            //Act
            Result result = garcom.VincularSetor(1);

            //Assert
            result.IsFailure.ShouldBeTrue();
            result.Error.ShouldContain(GarconsConstantes.SetorJaFoiVinculadoAoGarcom);
        }
示例#7
0
        public void Garcom_AdicionarSetor_DeveTerSucesso()
        {
            //Arrange
            var garcom = new GarcomTestBuilder()
                         .Build().Value;
            int quantidade = garcom.SetoresAtendimento.Count;

            //Act
            Result result = garcom.VincularSetor(1);

            //Assert
            result.IsSuccess.ShouldBeTrue();
            garcom.SetoresAtendimento.Count.ShouldBe(quantidade + 1);
        }
示例#8
0
        public void Garcom_RemoverSetor_DeveTerSucesso()
        {
            //Arrange
            var garcom = new GarcomTestBuilder()
                         .Build().Value;

            garcom.VincularSetor(1);
            garcom.VincularSetor(2);

            //Act
            Result result = garcom.RemoverVinculoDeSetor(2);

            //Assert
            result.IsSuccess.ShouldBeTrue();
        }
示例#9
0
        public void RemoverSetor_SetorInexistente_DeveTerSucesso()
        {
            //Arrange
            var garcom = new GarcomTestBuilder()
                         .Build().Value;

            garcom.VincularSetor(1);
            garcom.VincularSetor(2);
            int setorRemover = 3;

            //Act
            Result result = garcom.RemoverVinculoDeSetor(setorRemover);

            //Assert
            result.IsFailure.ShouldBeTrue();
            result.Error.ShouldContain(string.Format(GarconsConstantes.SetorInformadoNaoFoiLocalizado, setorRemover));
        }
示例#10
0
        public void Garcom_AlterarDadosPessoais_DeveTerSucesso()
        {
            //Arrange
            var garcom = new GarcomTestBuilder()
                         .ComNome("José da Silva")
                         .ComApelido("Zé")
                         .Build().Value;
            string novoNome    = "José de Souza";
            string novoApelido = "Zezão";

            //Act
            Result result = garcom.AlterarDadosPessoais(novoNome, novoApelido);

            //Assert
            result.IsSuccess.ShouldBeTrue();
            garcom.Nome.ShouldBe(novoNome);
            garcom.Apelido.ShouldBe(novoApelido);
        }
示例#11
0
        public void AlterarDadosPessoais_DadosInvalidos_DeveFalhar()
        {
            //Arrange
            var garcom = new GarcomTestBuilder()
                         .ComNome("José da Silva")
                         .ComApelido("Zé")
                         .Build().Value;
            string novoNome    = "";
            string novoApelido = "Zezão";

            //Act
            Result result = garcom.AlterarDadosPessoais(novoNome, novoApelido);

            //Assert
            result.IsFailure.ShouldBeTrue();
            result.Error.ShouldContain(GarconsConstantes.GarcomNomeEhObrigatorio);
            garcom.Nome.ShouldNotBe(novoNome);
            garcom.Apelido.ShouldNotBe(novoApelido);
        }