public void IsRunningWithoutReportCommand()
        {
            int           horizontalCordinate = 2;
            int           verticalCordinate   = 2;
            string        faceDirectionInput  = "NORTH";
            List <string> commands            = new List <string>();

            commands.Add("MOVE");
            commands.Add("MOVE");
            ReportOutPutEntity    report  = new ReportOutPutEntity();
            PacManMovementService service = new PacManMovementService();
            string actualResponceMessage  = "Command is not in Correct Format";

            report = service.ProduceReport(horizontalCordinate, verticalCordinate, faceDirectionInput, commands);
            Assert.AreEqual(report.responceMessage, actualResponceMessage);
        }
        public void IsPacManOutOfGrid()
        {
            int           horizontalCordinate = 2;
            int           verticalCordinate   = 2;
            string        faceDirectionInput  = "EAST";
            List <string> commands            = new List <string>();

            commands.Add("PLACE");
            commands.Add("MOVE");
            commands.Add("MOVE");
            commands.Add("MOVE");
            commands.Add("MOVE");
            commands.Add("REPORT");
            ReportOutPutEntity    report  = new ReportOutPutEntity();
            PacManMovementService service = new PacManMovementService();
            string actualResponceMessage  = "Pac Man is Out of Grid";

            report = service.ProduceReport(horizontalCordinate, verticalCordinate, faceDirectionInput, commands);
            Assert.AreEqual(report.responceMessage, actualResponceMessage);
        }
        public void  IsValiedReportOutput()
        {
            int           horizontalCordinate = 2;
            int           verticalCordinate   = 2;
            string        faceDirectionInput  = "NORTH";
            List <string> commands            = new List <string>();

            commands.Add("PLACE");
            commands.Add("MOVE");
            commands.Add("MOVE");
            commands.Add("LEFT");
            commands.Add("REPORT");
            ReportOutPutEntity    report     = new ReportOutPutEntity();
            PacManMovementService service    = new PacManMovementService();
            int    actualHorizontalCordinate = 2;
            int    actualVerticalCordinates  = 4;
            string actualFaceDirection       = "WEST";

            report = service.ProduceReport(horizontalCordinate, verticalCordinate, faceDirectionInput, commands);
            Assert.AreEqual(report.horizontalCordinate, actualHorizontalCordinate);
            Assert.AreEqual(report.verticalCordinate, actualVerticalCordinates);
            Assert.AreEqual(report.faceDirection, actualFaceDirection);
        }