public async Task ExecuteShouldResetLoadingFlagWhenTaskThrowsException() { // Arrange Func <Task> action = () => Task.FromException(new Exception("test")); var sut = new CommandOption(action, string.Empty, string.Empty); // Act var ex = await Record.ExceptionAsync(() => sut.Execute()); // Assert Assert.NotNull(ex); Assert.False(sut.IsLoading); }
public async Task ExecuteShouldSetLoadingFlag() { // Arrange Func <Task> action = () => Task.Delay(100); var sut = new CommandOption(action, string.Empty, string.Empty); // Act var before = sut.IsLoading; var task = sut.Execute(); var during = sut.IsLoading; await task; var after = sut.IsLoading; // Assert Assert.False(before); Assert.True(during); Assert.False(after); }