예제 #1
0
        public ReturnRobo GetRobo()
        {
            ReturnRobo send = new ReturnRobo();

            send.RoboReturn    = _robo.GetRobo();
            send.StatusReturn  = true;
            send.MensageReturn = "Robo ok !!!";

            return(send);
        }
예제 #2
0
        public ReturnRobo PostRobo([FromBody] RoboApp robo)
        {
            ReturnRobo send = new ReturnRobo();

            send.RoboReturn = robo;
            //Classe auxiliar para enviar os parametros para verificações
            RoboAux roboAux = new RoboAux();

            //Variaveis de Retorno
            send.StatusReturn  = true;
            send.MensageReturn = "Robo ok !!!";

            if (robo.Head == null && robo.LeftElbow == null && robo.LeftPulse == null && robo.RightElbow == null && robo.RightPulse == null)
            {
                send.StatusReturn  = false;
                send.MensageReturn = "Não encontramos o Robo, Envie algo primeiro!!!";
                send.RoboReturn    = _robo.GetRobo();
            }
            else
            {
                //verifica a cabeca
                var cabeca = HeadVerification(robo.Head);
                send.StatusReturn  = cabeca.Item1;
                send.MensageReturn = cabeca.Item2;
                if (send.StatusReturn == false)
                {
                    return(send);
                }


                //verifica cotovelo e pulso esquerdo
                roboAux.Elbow = robo.LeftElbow;
                roboAux.Pulse = robo.LeftPulse;
                var left = PulseVerification(roboAux);
                send.StatusReturn  = left.Item1;
                send.MensageReturn = left.Item2;
                if (send.StatusReturn == false)
                {
                    return(send);
                }

                //verifica cotovelo e pulso direito
                roboAux.Elbow = robo.RightElbow;
                roboAux.Pulse = robo.RightPulse;
                var rigth = PulseVerification(roboAux);
                send.StatusReturn  = rigth.Item1;
                send.MensageReturn = rigth.Item2;
                if (send.StatusReturn == false)
                {
                    return(send);
                }
            }
            return(send);
        }
예제 #3
0
        public void RoboApiControllerPost()
        {
            var        repository = new FakeRepository();
            ReturnRobo esperado   = new ReturnRobo();

            esperado.RoboReturn    = repository.GetRobo();
            esperado.StatusReturn  = true;
            esperado.MensageReturn = "Robo ok !!!";

            //Act
            var atual = _controller.PostRobo(repository.GetRobo());

            Assert.AreEqual(esperado.MensageReturn, atual.MensageReturn);
            Assert.AreEqual(esperado.StatusReturn, atual.StatusReturn);

            Assert.AreEqual(esperado.RoboReturn.Head.Inclination, atual.RoboReturn.Head.Inclination);
            Assert.AreEqual(esperado.RoboReturn.Head.Rotation, atual.RoboReturn.Head.Rotation);
            Assert.AreEqual(esperado.RoboReturn.LeftElbow.Contraction, atual.RoboReturn.LeftElbow.Contraction);
            Assert.AreEqual(esperado.RoboReturn.RightElbow.Contraction, atual.RoboReturn.RightElbow.Contraction);
            Assert.AreEqual(esperado.RoboReturn.LeftPulse.Rotation, atual.RoboReturn.LeftPulse.Rotation);
            Assert.AreEqual(esperado.RoboReturn.RightPulse.Rotation, atual.RoboReturn.RightPulse.Rotation);
        }
예제 #4
0
        public void RoboApiControllerPostNull()
        {
            var        repository = new FakeRepository();
            ReturnRobo esperado   = new ReturnRobo();

            esperado.RoboReturn    = repository.GetRobo();
            esperado.StatusReturn  = false;
            esperado.MensageReturn = "Não encontramos o Robo, Envie algo primeiro!!!";

            //Act
            var newRobo = new RoboApp();
            var atual   = _controller.PostRobo(newRobo);

            Assert.AreEqual(esperado.MensageReturn, atual.MensageReturn);
            Assert.AreEqual(esperado.StatusReturn, atual.StatusReturn);

            Assert.AreEqual(esperado.RoboReturn.Head.Inclination, atual.RoboReturn.Head.Inclination);
            Assert.AreEqual(esperado.RoboReturn.Head.Rotation, atual.RoboReturn.Head.Rotation);
            Assert.AreEqual(esperado.RoboReturn.LeftElbow.Contraction, atual.RoboReturn.LeftElbow.Contraction);
            Assert.AreEqual(esperado.RoboReturn.RightElbow.Contraction, atual.RoboReturn.RightElbow.Contraction);
            Assert.AreEqual(esperado.RoboReturn.LeftPulse.Rotation, atual.RoboReturn.LeftPulse.Rotation);
            Assert.AreEqual(esperado.RoboReturn.RightPulse.Rotation, atual.RoboReturn.RightPulse.Rotation);
        }