Ejemplo n.º 1
0
        //Só poderá Rotacionar a Cabeça caso sua Inclinação da Cabeça não esteja em estado Para Baixo.
        public void CabecaRotacao_RotacionarCabecaCasoInclinacaoNaoSejaParaBaixo_RetornarVerdadeiro()
        {
            Robo Robo = JsonConvert.DeserializeObject <Robo>("{ \"Cabeca\": { \"CabecaInclinacao\": { \"EstadoAtual\": 1, \"ProximoEstado\": 2, \"AnteriorEstado\": 0 }, \"CabecaRotacao\": { \"EstadoAtual\": 2, \"ProximoEstado\": 3,\"AnteriorEstado\": 1 } }, \"BracoEsquerdo\": { \"Cotovelo\": { \"EstadoAtual\": 0, \"ProximoEstado\": 1, \"AnteriorEstado\": 0 }, \"Pulso\": { \"EstadoAtual\": 2, \"ProximoEstado\": 3, \"AnteriorEstado\": 1 } }, \"BracoDireito\": { \"Cotovelo\": { \"EstadoAtual\": 1, \"ProximoEstado\": 2, \"AnteriorEstado\": 0 }, \"Pulso\": { \"EstadoAtual\": 2, \"ProximoEstado\": 3, \"AnteriorEstado\": 1 } } }");

            CabecaValidacao CabecaRotacaoValidacao = new CabecaValidacao();

            ValidacaoResultado Retorno = CabecaRotacaoValidacao.Validar(Robo.Cabeca.CabecaRotacao, Robo, "CabecaRotacao");

            Assert.AreEqual(true, Retorno.Valido);
        }
Ejemplo n.º 2
0
        //Só poderá movimentar o Pulso caso o Cotovelo esteja Fortemente Contraído.
        public void PulsoMovimentar_MovimentarPulsoComCotoveloEmRepouso_RetornarFalso()
        {
            Robo Robo = JsonConvert.DeserializeObject <Robo>("{ \"Cabeca\": { \"CabecaInclinacao\": { \"EstadoAtual\": 1, \"ProximoEstado\": 2, \"AnteriorEstado\": 0 }, \"CabecaRotacao\": { \"EstadoAtual\": 2, \"ProximoEstado\": 3,\"AnteriorEstado\": 1 } }, \"BracoEsquerdo\": { \"Cotovelo\": { \"EstadoAtual\": 0, \"ProximoEstado\": 1, \"AnteriorEstado\": 0 }, \"Pulso\": { \"EstadoAtual\": 2, \"ProximoEstado\": 3, \"AnteriorEstado\": 1 } }, \"BracoDireito\": { \"Cotovelo\": { \"EstadoAtual\": 0, \"ProximoEstado\": 1, \"AnteriorEstado\": 0 }, \"Pulso\": { \"EstadoAtual\": 2, \"ProximoEstado\": 3, \"AnteriorEstado\": 1 } } }");

            PulsoValidacao PulsoValidacao = new PulsoValidacao();

            ValidacaoResultado Retorno = PulsoValidacao.Validar(Robo.BracoDireito.Pulso, Robo, "PulsoDireito");

            Assert.AreEqual(false, Retorno.Valido);
        }
Ejemplo n.º 3
0
        public ValidacaoResultado Validar(TEntity entity, TFather father, string key)
        {
            var resultado = new ValidacaoResultado();

            foreach (var x in _validations.Keys)
            {
                var rule = _validations[x];
                if (!rule.Satisfeito(entity, father, key))
                {
                    resultado.Mensagem = x;
                    break;
                }
            }

            return(resultado);
        }