Ejemplo n.º 1
0
        public void GenerateExplorationReportTest_HitWall_ExpectedOutput()
        {
            var deploymentZone = new Plateau {
                Size = new Size(5, 5)
            };

            var team  = new ExplorationTeam(deploymentZone);
            var rover = new Rover(team);

            rover.Launch(new Position(5, 5), Heading.North);
            team.Add(rover);
            rover.Move(new List <Movement> {
                Movement.Forward,
                Movement.Forward,
                Movement.Forward,
                Movement.Forward,
                Movement.Forward,
                Movement.Forward,
                Movement.Forward,
                Movement.Forward,
                Movement.Forward,
                Movement.Forward,
                Movement.Forward
            });

            var expectedReport = new StringBuilder();

            expectedReport.Append("5 5 N");
            expectedReport.AppendLine();
            Assert.AreEqual(expectedReport.ToString(), team.GenerateExplorationReport());
        }
Ejemplo n.º 2
0
        public void GenerateExplorationReportTest_TwoExplorersCollide_ExpectedOutput()
        {
            var deploymentZone = new Plateau {
                Size = new Size(5, 5)
            };

            var team   = new ExplorationTeam(deploymentZone);
            var rover1 = new Rover(team);
            var rover2 = new Rover(team);

            rover1.Launch(new Position(5, 5), Heading.North);
            team.Add(rover1);
            rover1.Move(new List <Movement>());
            rover2.Launch(new Position(5, 4), Heading.North);
            team.Add(rover2);
            rover2.Move(new List <Movement> {
                // MMRMMRMRRM
                Movement.Forward,
                Movement.Forward,
                Movement.Forward
            });

            var expectedReport = new StringBuilder();

            expectedReport.Append("5 5 N");
            expectedReport.AppendLine();
            expectedReport.Append("5 4 N");
            expectedReport.AppendLine();
            Assert.AreEqual(expectedReport.ToString(), team.GenerateExplorationReport());
        }
Ejemplo n.º 3
0
        public void GenerateExplorationReportTest_ExplorerNotLaunched_ExpectedOutput()
        {
            var team = new ExplorationTeam(new Plateau());

            team.Add(new Rover(team));
            var expectedReport = new StringBuilder();

            expectedReport.Append("Explorer not launched.");
            expectedReport.AppendLine();
            Assert.AreEqual(expectedReport.ToString(), team.GenerateExplorationReport());
        }
Ejemplo n.º 4
0
        public void GenerateExplorationReportTest_OneExplorerLaunched_ExpectedOutput()
        {
            var deploymentZone = new Plateau {
                Size = new Size(5, 5)
            };

            var team  = new ExplorationTeam(deploymentZone);
            var rover = new Rover(team);

            rover.Launch(new Position(1, 2), Heading.North);
            team.Add(rover);
            var expectedReport = new StringBuilder();

            expectedReport.Append("1 2 N");
            expectedReport.AppendLine();
            Assert.AreEqual(expectedReport.ToString(), team.GenerateExplorationReport());
        }