public void TestFindFertileGroundSplitAreaSingleRectangleInput() { int[,] landMass = new int[400, 600]; ArrayHelpers.Fill2DArrayWithRectangleValues(landMass, InputParserResult.FERTILE_INDICATOR, 0, 0, 399, 599); ArrayHelpers.Fill2DArrayWithRectangleValues(landMass, InputParserResult.BARREN_INDICATOR, 0, 292, 399, 307); QueueLandCrawler crawler = new QueueLandCrawler(); List <long> areas = crawler.FindFertileGround(landMass, InputParserResult.BARREN_INDICATOR, InputParserResult.FERTILE_INDICATOR); Assert.AreEqual(areas.Count == 2 && areas[0] == 116800 && areas[1] == 116800, true); }
public void TestFindFertileGroundFourRectangleInput() { int[,] landMass = new int[400, 600]; ArrayHelpers.Fill2DArrayWithRectangleValues(landMass, InputParserResult.FERTILE_INDICATOR, 0, 0, 399, 599); ArrayHelpers.Fill2DArrayWithRectangleValues(landMass, InputParserResult.BARREN_INDICATOR, 48, 192, 351, 207); ArrayHelpers.Fill2DArrayWithRectangleValues(landMass, InputParserResult.BARREN_INDICATOR, 48, 392, 351, 407); ArrayHelpers.Fill2DArrayWithRectangleValues(landMass, InputParserResult.BARREN_INDICATOR, 120, 52, 135, 547); ArrayHelpers.Fill2DArrayWithRectangleValues(landMass, InputParserResult.BARREN_INDICATOR, 260, 52, 275, 547); QueueLandCrawler crawler = new QueueLandCrawler(); List <long> areas = crawler.FindFertileGround(landMass, InputParserResult.BARREN_INDICATOR, InputParserResult.FERTILE_INDICATOR); Assert.AreEqual(areas.Count == 2 && areas[0] == 22816 && areas[1] == 192608, true); }
public void TestIntFillArrayWithValue() { int[,] array = new int[5, 5]; bool success = ArrayHelpers.Fill2DArrayWithRectangleValues(array, 1, 0, 0, 4, 4); for (int i = 0; i <= 4; i++) { for (int j = 0; j <= 4; j++) { success &= array[i, j] == 1; } } Assert.AreEqual(success, true); }
public void TestStringFillArrayWithValue() { // Initialize array, it should be filled with null string[,] array = new string[5, 5]; bool success = true; success &= ArrayHelpers.Fill2DArrayWithRectangleValues(array, "new", 0, 0, 4, 4); for (int i = 0; i < 5; i++) { for (int j = 0; j < 5; j++) { success &= array[i, j].Equals("new"); } } Assert.AreEqual(true, success); }