Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
        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>();
        }
Ejemplo n.º 3
0
        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);
        }
Ejemplo n.º 4
0
        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);
        }