public void Should_HaveDefaultIdAndDeactivatedEvents() { var marker = new HtmlMarker(new HtmlMarkerOptions()); Assert.False(string.IsNullOrWhiteSpace(marker.Id)); Assert.Empty(marker.EventActivationFlags.EnabledEvents); }
public async ValueTask <IDropMarkersAnimation> DropMarkerAsync(HtmlMarker marker, decimal?height = null, DropMarkersAnimationOptions options = default) { _logger?.LogAzureMapsControlInfo(AzureMapLogEvent.AnimationService_DropMarkers, "Calling DropMarkersAsync"); Require.NotNull(marker, nameof(marker)); return(await DropMarkersAsync(new[] { marker }, height, options)); }
public void Should_NotUpdateOptionsWithEvent() { var marker = new HtmlMarker(new HtmlMarkerOptions()); marker.DispatchEvent(new Components.Map.Map("id"), new HtmlMarkerJsEventArgs()); Assert.NotNull(marker.Options); }
public async void Should_TogglePopupAsync() { var assertEvent = false; var popupInvokeHelper = new PopupInvokeHelper(null); var marker = new HtmlMarker(new HtmlMarkerOptions { Popup = new HtmlMarkerPopup(new PopupOptions()) { IsRemoved = true } }) { JSRuntime = _jsRuntime.Object, PopupInvokeHelper = popupInvokeHelper }; marker.OnPopupToggled += () => assertEvent = true; await marker.TogglePopupAsync(); Assert.True(assertEvent); Assert.True(marker.Options.Popup.HasBeenToggled); Assert.False(marker.Options.Popup.IsRemoved); _jsRuntime.Verify(runtime => runtime.InvokeVoidAsync(Constants.JsConstants.Methods.HtmlMarker.TogglePopup.ToHtmlMarkerNamespace(), It.Is <object[]>(parameters => parameters[0] as string == marker.Id && parameters[1] as string == marker.Options.Popup.Id && parameters[2] is IEnumerable <string> && parameters[3] is DotNetObjectReference <PopupInvokeHelper> ))); _jsRuntime.VerifyNoOtherCalls(); }
public ActionResult Delete(int id) { HtmlMarker toDelete = db.HtmlMarkers.Find(id); db.HtmlMarkers.Remove(toDelete); db.SaveChanges(); return(RedirectToAction("Index")); }
public void Should_UpdateOptionsWithEvent() { var marker = new HtmlMarker(new HtmlMarkerOptions()); var options = new HtmlMarkerOptions { Color = "#bbbbbb" }; marker.DispatchEvent(new Components.Map.Map("id"), new HtmlMarkerJsEventArgs { Options = options }); Assert.Equal(options, marker.Options); }
public void Should_DispatchMouseMoveEvent() { var assertEvent = false; var marker = new HtmlMarker(new HtmlMarkerOptions()); var map = new Components.Map.Map("id"); var type = "mousemove"; marker.OnMouseMove += eventArgs => assertEvent = eventArgs.Map == map && eventArgs.Type == type && eventArgs.HtmlMarker == marker; marker.DispatchEvent(map, new HtmlMarkerJsEventArgs { Type = type }); }
public void Should_DispatchDragEvent() { var assertEvent = false; var marker = new HtmlMarker(new HtmlMarkerOptions()); var map = new Components.Map.Map("id"); var type = "drag"; marker.OnDrag += eventArgs => assertEvent = eventArgs.Map == map && eventArgs.Type == type && eventArgs.HtmlMarker == marker; marker.DispatchEvent(map, new HtmlMarkerJsEventArgs { Type = type }); Assert.True(assertEvent); }
public ActionResult Edit(int id, HtmlMarker toEdit) { try { db.Entry(toEdit).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } catch { return(View()); } }
public ActionResult Create(HtmlMarker html) { try { db.HtmlMarkers.Add(html); db.SaveChanges(); return(RedirectToAction("Index")); } catch { return(View()); } }
public async ValueTask <ISetCoordinatesAnimation> SetCoordinatesAsync(HtmlMarker marker, Position newCoordinates, SetCoordinatesAnimationOptions options = default) { _logger?.LogAzureMapsControlInfo(AzureMapLogEvent.AnimationService_SetCoordinates, "Calling SetCoordinatesAsync"); Require.NotNull(marker, nameof(marker)); Require.NotNull(newCoordinates, nameof(newCoordinates)); _logger?.LogAzureMapsControlDebug(AzureMapLogEvent.AnimationService_SetCoordinates, "Marker", marker); _logger?.LogAzureMapsControlDebug(AzureMapLogEvent.AnimationService_SetCoordinates, "New Coordinates", newCoordinates); _logger?.LogAzureMapsControlDebug(AzureMapLogEvent.AnimationService_SetCoordinates, "Options", options); var animation = new SetCoordinatesAnimation(Guid.NewGuid().ToString(), _jsRuntime); await _jsRuntime.InvokeVoidAsync(Constants.JsConstants.Methods.Animation.SetCoordinates.ToAnimationNamespace(), animation.Id, marker.Id, null, newCoordinates, options); animation.Disposed = options.DisposeOnComplete.GetValueOrDefault(); return(animation); }
public async void Should_Not_TogglePopup_NotAddedToMapCase_Async() { var popupInvokeHelper = new PopupInvokeHelper(null); var marker = new HtmlMarker(new HtmlMarkerOptions { Popup = new HtmlMarkerPopup(new PopupOptions()) { IsRemoved = true } }) { PopupInvokeHelper = popupInvokeHelper }; await Assert.ThrowsAnyAsync <ComponentNotAddedToMapException>(async() => await marker.TogglePopupAsync()); _jsRuntime.VerifyNoOtherCalls(); }
public async void Should_Not_TogglePopupAsync() { var assertEvent = false; var popupInvokeHelper = new PopupInvokeHelper(null); var marker = new HtmlMarker(new HtmlMarkerOptions()) { JSRuntime = _jsRuntime.Object, PopupInvokeHelper = popupInvokeHelper }; marker.OnPopupToggled += () => assertEvent = true; await marker.TogglePopupAsync(); Assert.False(assertEvent); _jsRuntime.VerifyNoOtherCalls(); }
public async ValueTask <IMoveAlongPathAnimation> MoveAlongPathAsync(IEnumerable <Position> path, HtmlMarker pin, MoveAlongPathAnimationOptions options = default) { _logger?.LogAzureMapsControlInfo(AzureMapLogEvent.AnimationService_MoveAlongPath, "Calling MoveAlongPath"); Require.NotNull(path, nameof(path)); Require.NotNull(pin, nameof(pin)); _logger?.LogAzureMapsControlDebug(AzureMapLogEvent.AnimationService_MoveAlongPath, "Path", path); _logger?.LogAzureMapsControlDebug(AzureMapLogEvent.AnimationService_MoveAlongPath, "PinId", pin.Id); _logger?.LogAzureMapsControlDebug(AzureMapLogEvent.AnimationService_MoveAlongPath, "Options", options); var animation = new MoveAlongPathAnimation(Guid.NewGuid().ToString(), _jsRuntime); await _jsRuntime.InvokeVoidAsync(Constants.JsConstants.Methods.Animation.MoveAlongPath.ToAnimationNamespace(), animation.Id, path, null, pin.Id, null, options); animation.Disposed = options.DisposeOnComplete.GetValueOrDefault(); return(animation); }
public async ValueTask <IMoveAlongRouteAnimation> MoveAlongRouteAsync(IEnumerable <RoutePoint> points, HtmlMarker pin, RoutePathAnimationOptions options = default) { _logger?.LogAzureMapsControlInfo(AzureMapLogEvent.AnimationService_Morph, "Calling MoveAlongRoute"); Require.NotNull(points, nameof(points)); Require.NotNull(pin, nameof(pin)); _logger?.LogAzureMapsControlDebug(AzureMapLogEvent.AnimationService_Morph, "Points", points); _logger?.LogAzureMapsControlDebug(AzureMapLogEvent.AnimationService_Morph, "Pin", pin); _logger?.LogAzureMapsControlDebug(AzureMapLogEvent.AnimationService_SetCoordinates, "Options", options); var animation = new MoveAlongRouteAnimation(Guid.NewGuid().ToString(), _jsRuntime); await _jsRuntime.InvokeVoidAsync(Constants.JsConstants.Methods.Animation.MoveAlongRoute.ToAnimationNamespace(), animation.Id, points, null, pin.Id, options); return(animation); }
public ActionResult Edit(int id) { HtmlMarker toEdit = db.HtmlMarkers.Find(id); return(View(toEdit)); }