public void DoesntFindAllTheseFalsePositives() { var logger = DefaultLoggerFactory.CreateLoggerForTests(); //Hier vond hij random bommen string[] data = new[] { "########B3..1.B10", "#######BRR2.B3310", "######1233BR3BR10", "#####001B.2..B200", "####0002B..R21000", "###210013B2100001", "##BB101.R3000001R", "#.3201B3R1000002.", "..R102..1111112R.", ".1.12B2..R.R.R.1#", "...R.3RB21.2RB.##", "...1.R3.....R2###", "....B3..B.12.####", "...B3R..3..R#####", ".....1.2..2######", "..........#######", ".........########" }; var game = new GalaxySweeperGame { field = data.ToList() }; var deVakjesArray = GalaxyGameHelper.CreateVakjesArray(game); var stats = BommenBepaler.BepaalBommenMulti2(deVakjesArray, TestBotConfig()); stats.Log(logger); var flattened = TwoDimensionalArrayHelper.Flatten(deVakjesArray).Where(t => t != null).ToList(); LogTopBombs(flattened, logger); GalaxyVisualizator.RenderToConsole(deVakjesArray, logger); Assert.Equal(0, flattened.Count(t => t.VakjeBerekeningen.BerekendVakjeType == BerekendVakjeType.GuaranteedBom)); }
public void FindsNonGuaranteedBombsAndThenRecursivelyFindsGuaranteedBombs() { var logger = DefaultLoggerFactory.CreateLoggerForTests(); string[] data = new[] { "########.........", "#######..........", "######...........", "#####............", "####.............", "###..............", "##...............", "#................", "...........1.....", "........12..4...#", "........11.....##", "..............###", ".............####", "............#####", "...........######", "..........#######", ".........########" }; var game = new GalaxySweeperGame { field = data.ToList() }; var deVakjesArray = GalaxyGameHelper.CreateVakjesArray(game); var stats = BommenBepaler.BepaalBommenMulti2(deVakjesArray, TestBotConfig()); stats.Log(logger); var flattened = TwoDimensionalArrayHelper.Flatten(deVakjesArray).Where(t => t != null).ToList(); LogTopBombs(flattened, logger); GalaxyVisualizator.RenderToConsole(deVakjesArray, logger); Assert.Equal(5, flattened.Count(t => t.VakjeBerekeningen.BerekendVakjeType == BerekendVakjeType.GuaranteedBom)); Assert.Equal(7, flattened.Count(t => t.VakjeBerekeningen.BerekendVakjeType == BerekendVakjeType.GuaranteedNoBom)); }
public void FindsThisOneThatSjoerdsOneDoesToo() { var logger = DefaultLoggerFactory.CreateLoggerForTests(); string[] data = new[] { "########B21000000", "#######13R2000000", "######11RB1011000", "#####B23R201R2121", "####B3R42113R2BB2", "###B33RR3R2R22B3B", "##13B23R4211.113B", "#.1R213BB2....1RR", ".1211R3BB31.1124R", "1R1.1124BB11R2R2#", "11...1R22212321##", ".....11.1R2RB1###", "..121...11132####", ".1BR2.....1B#####", ".12..4...12######", "......3.1B#######", "....2...1########" }; var game = new GalaxySweeperGame { field = data.ToList() }; var deVakjesArray = GalaxyGameHelper.CreateVakjesArray(game); var stats = BommenBepaler.BepaalBommenMulti2(deVakjesArray, TestBotConfig()); stats.Log(logger); var flattened = TwoDimensionalArrayHelper.Flatten(deVakjesArray).Where(t => t != null).ToList(); LogTopBombs(flattened, logger); GalaxyVisualizator.RenderToConsole(deVakjesArray, logger); Assert.Equal(3, flattened.Count(t => t.VakjeBerekeningen.BerekendVakjeType == BerekendVakjeType.GuaranteedBom)); }