public void GrowRectangleFrom_CanGrowToTop_ReturnsCorrectBounds() { string input = "###" + Environment.NewLine + "#.#" + Environment.NewLine + "#s#" + Environment.NewLine + "###"; char[,] data = ParseInput(input, out Position center); Func <Position, bool> canConstruct = CanConstruct(data); Bounds bounds = PlaceFinder.GrowRectangleFrom(center, canConstruct); Bounds expectedBounds = new Bounds(1, 1, 0, 1); bounds.Should().Be(expectedBounds); }
public void GrowRectangleFrom_CenterSurroundedByWalls_DoesNotGrowFromCenter() { string input = "###" + Environment.NewLine + "#s#" + Environment.NewLine + "###" + Environment.NewLine + "#.#"; char[,] data = ParseInput(input, out Position center); Func <Position, bool> canConstruct = CanConstruct(data); Bounds bounds = PlaceFinder.GrowRectangleFrom(center, canConstruct); Bounds expectedBounds = new Bounds(1, 2, 0, 1); bounds.Should().Be(expectedBounds); }