Guest User

Untitled

a guest
Oct 11th, 2018
119
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.48 KB | None | 0 0
  1. //Test
  2. [Fact]
  3. public void VerifyThatSuccessfulLogonSendsNavigationMessage()
  4. {
  5. var creds = SetupSecurityService(_securityMock, true, StatusCode.ValidCredentials);
  6. //_messengerMock.Setup(x => x.Send(It.IsAny<SetWaitModeMessage>()));
  7. //_messengerMock.Setup(x => x.Send(It.IsAny<SetWaitModeMessage>()));
  8. var msg = new NavigateMessage(null, @"Forward");
  9. _messengerMock.Setup(x => x.Send(msg));
  10.  
  11. Messenger.OverrideDefault(_messengerMock.Object);
  12. var logonvm = CreateLogOnViewModel(creds);
  13.  
  14. logonvm.LogOnCommand.Execute(null);
  15. _messengerMock.Verify(x => x.Send(msg));
  16. }
  17.  
  18. private LogOnViewModel CreateLogOnViewModel(Credentials creds)
  19. {
  20. var logonvm = new LogOnViewModel(_securityMock.Object, _recordingListMock.Object)
  21. {
  22. UserName = creds.Username,
  23. Password = creds.Password
  24. };
  25. return logonvm;
  26. }
  27.  
  28. private static Credentials SetupSecurityService(Mock<ISecurityService> security, bool isValid, StatusCode statusCode)
  29. {
  30. var creds = new Credentials("a", "b");
  31. security
  32. .Setup(e => e.IsValidLogin(It.IsAny<Credentials>()))
  33. .Returns(
  34. Task<AuthenticationResponse>.Factory.StartNew(
  35. () => new AuthenticationResponse(creds) { IsValid = isValid, Status = statusCode }));
  36.  
  37. return creds;
  38. }
  39.  
  40. //ViewModel
  41. private void PerformAuthentication()
  42. {
  43. Messenger.Default.Send(new SetWaitModeMessage(true));
  44.  
  45. Status = i18n.Authenticating;
  46. IsAuthenticating = true;
  47. var creds = new Credentials(UserName, Password);
  48.  
  49. var task = _securityService.IsValidLogin(creds);
  50. task.ContinueWith(IsValidCallbackFaulted, TaskContinuationOptions.OnlyOnFaulted);
  51. task.ContinueWith(IsValidCallback, TaskContinuationOptions.None);
  52. }
  53.  
  54. private void IsValidCallback(Task<AuthenticationResponse> task)
  55. {
  56. IsAuthenticating = false;
  57. Messenger.Default.Send(new SetWaitModeMessage(false));
  58.  
  59. if (Logger.IsInfoEnabled) Logger.Info(CultureInfo.InvariantCulture, @"User was valid? {0}", task.Result.IsValid);
  60. Status = task.Result.IsValid ? "" : EnumUtils.GetDescription(task.Result.Status, "en");
  61.  
  62. if (task.Result.IsValid)
  63. {
  64. State.Credentials = task.Result.Credentials;
  65.  
  66. if (Logger.IsInfoEnabled) Logger.Info(CultureInfo.InvariantCulture, @"Attempting to retrieve unrecorded audio for user '{0}'", State.Credentials.Username);
  67. State.RecordingsTask = _recordingsList.GetUnrecorded(State.Credentials);
  68.  
  69. Messenger.Default.Send(new NavigateMessage(this, @"Forward"));
  70. }
  71. }
  72.  
  73.  
  74.  
  75. Getting error:
  76.  
  77. Moq.MockException: Expected invocation on the mock at least once, but was never performed: x => x.Send<NavigateMessage>(.msg)
  78.  
  79. Configured setups:
  80. x => x.Send<NavigateMessage>(.msg), Times.Never
  81.  
  82. Performed invocations:
  83. Messenger.Send(Acumantra.Names.Recorder.UI.Messages.SetWaitModeMessage)
  84. Messenger.Send(Acumantra.Names.Recorder.UI.Messages.SetWaitModeMessage)
  85. Messenger.Send(Acumantra.Names.Recorder.UI.Messages.NavigateMessage)
Add Comment
Please, Sign In to add comment