public string CreateNewMap([FromRoute] int num = 7) { num = Math.Min(75, Math.Max(1, num)); var towns = MapService.CreateMap(num); var str = ""; for (var y = 0; y < 10; y++) { for (var x = 0; x < 10; x++) { var town = towns.FirstOrDefault(t => t.X == x && t.Y == y); if (town == null) { str += "| "; } else { str += "|=="; } } str += "|\n"; } return(str); }
public void CreateMap_WHEN_InvokedWithAtLeastOneNegativeOrZeroParameter_THEN_ThrowArgumentOutOfRangeException( int columns, int rows) { var mapRepository = new InMemoryMapRepository(); IMapService mapService = new MapService(mapRepository); var action = new Func <Map>(() => mapService.CreateMap(rows, columns)); action.Should().ThrowExactly <ArgumentOutOfRangeException>(); }
public void CreateMap_WHEN_InvokedWithPositiveParameters_THEN_ReturnMapFieldsWithDefaultState() { var mapRepository = new InMemoryMapRepository(); IMapService mapService = new MapService(mapRepository); var rows = 10; var columns = 10; var map = mapService.CreateMap(rows, columns); map.Fields.Should().NotBeNull(); map.Fields.SelectMany(c => c).Select(c => c.IsShoot).Should().AllBeEquivalentTo(false); map.Fields.SelectMany(c => c).Select(c => c.Ship).Should().AllBeEquivalentTo((Ship)null); }
public void CreateMap_WHEN_InvokedWithPositiveParameters_THEN_ReturnMapWithRowsAndColumnsAsProvided() { var mapRepository = new InMemoryMapRepository(); IMapService mapService = new MapService(mapRepository); var rows = 10; var columns = 10; var expectedFieldsNumber = rows * columns; var map = mapService.CreateMap(rows, columns); map.Fields.Should().NotBeNull(); map.Fields.SelectMany(c => c).Count().Should().Be(expectedFieldsNumber); }