public async Task AddMap() { Assert.True(false, "Requires refactored."); var restClient = new Mock <IRestClient>(); restClient.Setup(r => r.BaseUrl).Returns(new Uri("http://www.blah.com")); restClient.Setup(r => r.ExecuteTaskAsync <EndpointList>(It.IsAny <IRestRequest>())) .Returns(() => CreateMockResponse <EndpointList>(response => response.Data = new EndpointList { MapsUrl = "/blah" }).ToTask()); restClient.Setup(r => r.ExecuteTaskAsync <API.Domain.Map>(It.IsAny <IRestRequest>())) .Returns((IRestRequest r) => CreateMockResponse <API.Domain.Map>(response => response.Data = new API.Domain.Map { Id = (r.GetBody <Map>()).Id }).ToTask()); var responseValidator = new ResponseValidator(); var endpoints = await Endpoints.Get(restClient.Object, responseValidator); var mapValidator = new MapValidator(); var mapConvertor = new MapConvertor(); var mapService = new MapService(new RequestBuilder(endpoints), restClient.Object, mapValidator, responseValidator, mapConvertor); var map = new Map { Id = 123 }; var result = await mapService.Add(map); Assert.Equal(map.Id, result.Id); }
public ActionResult SaveOverlays(string name, Guid?parentId, string points, string color, string xy, Guid?childrenId) { Guid mainId = childrenId ?? parentId ?? Guid.Empty; MapOverlay parentMapOverlay = service.Get(mainId); if (parentMapOverlay == null) { throw new NopException("父级遮盖物不存在"); } MapOverlay entity = new MapOverlay() { Name = name, ParentId = parentMapOverlay.Id, Level = parentMapOverlay.Level + 1, Color = color }; if (!string.IsNullOrEmpty(xy)) { entity.Longitude = xy.Split(',')[0]; entity.Latitude = xy.Split(',')[1]; } service.Add(entity); if (points != null) { var coordinates = points.Split(new[] { '|' }, StringSplitOptions.RemoveEmptyEntries); var pointsEntitys = new List <MapOverlayPoints>(); foreach (var coordinate in coordinates) { var tmp = coordinate.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries); var point = new MapOverlayPoints() { Longitude = tmp[0], Latitude = tmp[1], MapOverlayId = entity.Id }; pointsEntitys.Add(point); } service.BatchAdd(pointsEntitys); } return(Content("1")); }