示例#1
0
        private void ExecuteCommand(Command command)
        {
            var steps = command.StepsNumber;

            office.Clean(Position.X, Position.Y);
            while (steps > 0)
            {
                switch (command.Direction)
                {
                case CompassDirection.East:
                    Position.X = office.GetValidCoordinate(Position.X + 1);
                    break;

                case CompassDirection.West:
                    Position.X = office.GetValidCoordinate(Position.X - 1);
                    break;

                case CompassDirection.South:
                    Position.Y = office.GetValidCoordinate(Position.Y - 1);
                    break;

                default:
                    Position.Y = office.GetValidCoordinate(Position.Y + 1);
                    break;
                }
                office.Clean(Position.X, Position.Y);
                steps--;
            }
        }
        public void Clean_ReturnExpectedValue_IfCellNotCleaned()
        {
            // Arrange
            const int x = 1;
            const int y = 1;

            // Act
            var response = office.Clean(x, y);

            // Assert
            response.Should().BeTrue();
        }