public void ShouldBeInErrorStateOnAnyOtherException() { var result = new GetStatusResult(WebServiceError.Unknown, new InvalidCastException()); var args = new StatusEventArgs(result); _statusProvider.Raise(provider => provider.StatusUpdated += null, args); Assert.AreEqual(_viewModel.State, NestViewModelState.Error); }
public void ShouldNotBeLoggingInOnServerNotFoundException() { var result = new GetStatusResult(WebServiceError.ServerNotFound, new Exception()); var args = new StatusEventArgs(result); _statusProvider.Raise(provider => provider.StatusUpdated += null, args); Assert.AreNotEqual(_viewModel.State, NestViewModelState.LoggingIn); }
public void ShouldNotBeInErrorStateOnCanceledException() { var result = new GetStatusResult(WebServiceError.Cancelled, new Exception()); var args = new StatusEventArgs(result); _statusProvider.Raise(provider => provider.StatusUpdated += null, args); Assert.AreNotEqual(_viewModel.State, NestViewModelState.Error); }
public void ShouldLogToAnalyticsOnException() { var expectedException = new Exception(); var result = new GetStatusResult(WebServiceError.Unknown, expectedException); var args = new StatusEventArgs(result); _statusProvider.Raise(provider => provider.StatusUpdated += null, args); _analyticsService.Verify(analytics => analytics.LogError(expectedException)); }
public void ShouldSetCurrentErrorToErrorOnSessionTokenExpiredException() { var expectedError = WebServiceError.SessionTokenExpired; var result = new GetStatusResult(expectedError, new Exception()); var args = new StatusEventArgs(result); _statusProvider.Raise(provider => provider.StatusUpdated += null, args); Assert.AreEqual(expectedError, _viewModel.CurrentError); }
public void ShouldClearSessionOnInvalidCredentialsException() { var result = new GetStatusResult(WebServiceError.InvalidCredentials, new Exception()); var args = new StatusEventArgs(result); _statusProvider.Raise(provider => provider.StatusUpdated += null, args); _sessionProvider.Verify(provider => provider.ClearSession(), "Expected session to be cleared when an InvalidCredentials exception occurs."); }
public void ShouldBeLoggingInOnInvalidCredentialsException() { var result = new GetStatusResult(WebServiceError.InvalidCredentials, new Exception()); var args = new StatusEventArgs(result); _statusProvider.Raise(provider => provider.StatusUpdated += null, args); Assert.AreEqual(_viewModel.State, NestViewModelState.LoggingIn); }
private void OnStatusUpdated(object sender, StatusEventArgs e) { if (IsErrorHandled(e.Status.Error, e.Status.Exception)) return; UpdateViewModelFromGetStatusResult(e.Status); }