public void ConfigCommandHandler_IsHandling() { var mockApiAuthCredentialsRepository = new Mock <IApiAuthCredentialsRepository>(); var mockPresenter = new Mock <IPresenter>(); var mockLogger = new Mock <ILogger>(); ApiAuthCrediancials resultEntity = null; string displayMessage = ""; mockApiAuthCredentialsRepository .Setup(x => x.Add(It.IsAny <ApiAuthCrediancials>())) .Callback <ApiAuthCrediancials>(c => resultEntity = c); mockPresenter .Setup(x => x.DisplayMessage(It.IsAny <string>())) .Callback <string>(m => displayMessage = m); var args = new string[] { "config", "--username", "YOUR USERNAME", "--password", "YOUR PASSWORD" }; var configCommandHandler = new ConfigCommandHandler(mockApiAuthCredentialsRepository.Object, mockPresenter.Object, mockLogger.Object); configCommandHandler.Handle(args); Assert.Equal("YOUR USERNAME", resultEntity.UserName); Assert.Equal("YOUR PASSWORD", resultEntity.Password); Assert.Equal("Configuration saved successfully.", displayMessage); }
public void ConfigCommandHandler_ThrowsIfBadParams(params string[] args) { var mockApiAuthCredentialsRepository = new Mock <IApiAuthCredentialsRepository>(); var mockPresenter = new Mock <IPresenter>(); var mockLogger = new Mock <ILogger>(); var configCommandHandler = new ConfigCommandHandler(mockApiAuthCredentialsRepository.Object, mockPresenter.Object, mockLogger.Object); Exception ex = Assert.Throws <PresentableExeption>(() => configCommandHandler.Handle(args)); Assert.Equal("Invalid arguments.", ex.Message); }