コード例 #1
0
        static void Main(string[] args)
        {
            Area  area  = null;
            Rover rover = null;

            var missionFactory = new MissionFactory();

            while (true)
            {
                var statement = Console.ReadLine().Trim().ToUpper();

                if (statement == string.Empty)
                {
                    break;
                }

                if (area == null)
                {
                    area = missionFactory.CreateArea(statement);
                }
                else if (rover == null)
                {
                    rover = missionFactory.CreateRover(area, statement);
                }
                else
                {
                    rover.Process(statement);
                    Console.WriteLine(rover);
                    rover = null;
                }
            }
        }
コード例 #2
0
        public void AreaCreationFromSyntax(string statement, int width, int height)
        {
            var roverFactory = new MissionFactory();

            var area = roverFactory.CreateArea(statement);

            area.Width.Should().Be(width);
            area.Height.Should().Be(height);
        }