public async Task MudPopoverService_Unregister() { var handlerId = Guid.NewGuid(); var mock = new Mock <IJSRuntime>(); mock.Setup(x => x.InvokeAsync <IJSVoidResult>( "mudPopover.connect", It.Is <object[]>(x => x.Length == 1 && (Guid)x[0] == handlerId))).ReturnsAsync(Mock.Of <IJSVoidResult>).Verifiable(); mock.Setup(x => x.InvokeAsync <IJSVoidResult>( "mudPopover.disconnect", It.Is <object[]>(x => x.Length == 1 && (Guid)x[0] == handlerId))).ReturnsAsync(Mock.Of <IJSVoidResult>).Verifiable(); var service = new MudPopoverService(mock.Object); await service.InitializeIfNeeded(); RenderFragment fragment = (builder) => { }; var handler = service.Register(fragment); handlerId = handler.Id; await handler.Initialize(); int fragmentChangedCounter = 0; service.FragmentsChanged += (e, args) => { fragmentChangedCounter++; }; var result = await service.Unregister(handler); result.Should().BeTrue(); fragmentChangedCounter.Should().Be(1); var secondResult = await service.Unregister(handler); secondResult.Should().BeFalse(); mock.Verify(); }
public async Task MudPopoverService_Unregister_NullFragment() { var service = new MudPopoverService(Mock.Of <IJSRuntime>(MockBehavior.Strict)); var result = await service.Unregister(null); result.Should().BeFalse(); }
public async Task MudPopoverService_Unregister_HandlerNotFound() { var service = new MudPopoverService(Mock.Of <IJSRuntime>(MockBehavior.Strict)); var handler = new MudPopoverHandler((tree) => { }, Mock.Of <IJSRuntime>(MockBehavior.Strict), () => { }); var result = await service.Unregister(handler); result.Should().BeFalse(); }
public async Task MudPopoverService_Unregister_NotConnected() { var service = new MudPopoverService(Mock.Of <IJSRuntime>(MockBehavior.Strict)); RenderFragment fragment = (builder) => { }; var handler = service.Register(fragment); var result = await service.Unregister(handler); result.Should().BeTrue(); }