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; } } }
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); }