public async Task DisplayActionSheet_NullButtonAndOtherButtonPressed_UsingCommand() { var service = new PageDialogServiceMock("other", _applicationProvider); var buttonPressed = false; var command = new DelegateCommand(() => buttonPressed = true); var button = ActionSheetButton.CreateButton("other", command); await service.DisplayActionSheetAsync(null, button, null); Assert.True(buttonPressed); }
public async Task DisplayActionSheet_CancelButtonPressed_UsingCommand() { var service = new PageDialogServiceMock("cancel", _applicationProvider); var cancelButtonPressed = false; var cancelCommand = new DelegateCommand(() => cancelButtonPressed = true); var button = ActionSheetButton.CreateCancelButton("cancel", cancelCommand); await service.DisplayActionSheetAsync(null, button); Assert.True(cancelButtonPressed); }
public async Task DisplayActionSheet_NoButtonPressed() { var service = new PageDialogServiceMock(null, _applicationProvider); var buttonPressed = false; var cancelCommand = new DelegateCommand(() => buttonPressed = true); var button = ActionSheetButton.CreateCancelButton("cancel", cancelCommand); var destroyCommand = new DelegateCommand(() => buttonPressed = true); var destroyButton = ActionSheetButton.CreateDestroyButton("destroy", destroyCommand); await service.DisplayActionSheetAsync(null, button, destroyButton); Assert.False(buttonPressed); }
private async Task DisplayActionSheet_PressButton_UsingGenericAction(string text) { var service = new PageDialogServiceMock(text, _applicationProvider); var cancelButtonModel = new ButtonModel(); var destroyButtonModel = new ButtonModel(); var otherButtonModel = new ButtonModel(); var btns = new IActionSheetButton[] { ActionSheetButton.CreateButton("other", OnButtonPressed, otherButtonModel), ActionSheetButton.CreateCancelButton("cancel", OnButtonPressed, cancelButtonModel), ActionSheetButton.CreateDestroyButton("destroy", OnButtonPressed, destroyButtonModel) }; await service.DisplayActionSheetAsync(null, btns); switch (text) { case "other": Assert.True(otherButtonModel.ButtonPressed); Assert.False(cancelButtonModel.ButtonPressed); Assert.False(destroyButtonModel.ButtonPressed); break; case "cancel": Assert.False(otherButtonModel.ButtonPressed); Assert.True(cancelButtonModel.ButtonPressed); Assert.False(destroyButtonModel.ButtonPressed); break; case "destroy": Assert.False(otherButtonModel.ButtonPressed); Assert.False(cancelButtonModel.ButtonPressed); Assert.True(destroyButtonModel.ButtonPressed); break; default: Assert.False(otherButtonModel.ButtonPressed); Assert.False(cancelButtonModel.ButtonPressed); Assert.False(destroyButtonModel.ButtonPressed); break; } }
#pragma warning restore CS0618 // Type or member is obsolete #endregion Obsolete ActionSheetButton using Commands private async Task DisplayActionSheet_PressButton_UsingAction(string text) { var service = new PageDialogServiceMock(text, _applicationProvider); bool cancelButtonPressed = false; bool destroyButtonPressed = false; bool otherButtonPressed = false; var btns = new IActionSheetButton[] { ActionSheetButton.CreateButton("other", () => otherButtonPressed = true), ActionSheetButton.CreateCancelButton("cancel", () => cancelButtonPressed = true), ActionSheetButton.CreateDestroyButton("destroy", () => destroyButtonPressed = true) }; await service.DisplayActionSheetAsync(null, btns); switch (text) { case "other": Assert.True(otherButtonPressed); Assert.False(cancelButtonPressed); Assert.False(destroyButtonPressed); break; case "cancel": Assert.False(otherButtonPressed); Assert.True(cancelButtonPressed); Assert.False(destroyButtonPressed); break; case "destroy": Assert.False(otherButtonPressed); Assert.False(cancelButtonPressed); Assert.True(destroyButtonPressed); break; default: Assert.False(otherButtonPressed); Assert.False(cancelButtonPressed); Assert.False(destroyButtonPressed); break; } }
public async Task DisplayActionSheetNoButtons_ShouldThrowException() { var service = new PageDialogServiceMock("cancel", _applicationProvider); var argumentException = await Assert.ThrowsAsync <ArgumentException>(() => service.DisplayActionSheetAsync(null, null)); Assert.Equal(typeof(ArgumentException), argumentException.GetType()); }