public void Test_LevelsHaveNormalSizes([Random(1, 20, 5)] int x, [Random(1, 20, 5)] int y) { var line = new StringBuilder(); for (var i = 0; i < x; i++) { line.Append(" ;"); } line.Remove(line.Length - 1, 1); var level = Enumerable.Range(0, y).Select(x => line.ToString()).ToArray(); var game = new GameModel(level); Assert.IsTrue(HaveLevel(game)); Assert.IsTrue(game.CurrentLevel.XSize == x && game.CurrentLevel.YSize == y); line = line.Clear(); for (var i = 0; i < x + 1; i++) { line.Append(" ;"); } line.Remove(line.Length - 1, 1); level = Enumerable.Range(0, y + 1).Select(x => line.ToString()).ToArray(); game.MoveToNextLevel(level); Assert.IsTrue(HaveLevel(game)); Assert.IsTrue(game.CurrentLevel.XSize == x + 1 && game.CurrentLevel.YSize == y + 1); }