public void MessageNullCheck() { // Arrange var handler = new SymbolsValidatorMessageHandler(_logger.Object, _symbolService.Object, _validatorStateService.Object); // Act + Assert Assert.ThrowsAsync <ArgumentNullException>(() => handler.HandleAsync(null)); }
public async Task ReturnsFalseWhenTheValidatorStateIsNotSaved() { // Arrange ValidatorStatus status = null; _validatorStateService.Setup(s => s.GetStatusAsync(It.IsAny <Guid>())).ReturnsAsync(status); var handler = new SymbolsValidatorMessageHandler(_logger.Object, _symbolService.Object, _validatorStateService.Object); // Act var result = await handler.HandleAsync(_message); // Assert Assert.False(result); }
public async Task ReturnsTrueWhenTheValidatorStateIsSucceded() { // Arrange ValidatorStatus status = new ValidatorStatus() { State = ValidationStatus.Succeeded }; _validatorStateService.Setup(s => s.GetStatusAsync(It.IsAny <Guid>())).ReturnsAsync(status); var handler = new SymbolsValidatorMessageHandler(_logger.Object, _symbolService.Object, _validatorStateService.Object); // Act var result = await handler.HandleAsync(_message); // Assert Assert.True(result); }
public async Task IncompleteStateIsProcessed() { // Arrange ValidatorStatus status = new ValidatorStatus() { State = ValidationStatus.Incomplete }; _validatorStateService.Setup(s => s.GetStatusAsync(It.IsAny <Guid>())).ReturnsAsync(status); _symbolService.Setup(s => s.ValidateSymbolsAsync(It.IsAny <SymbolsValidatorMessage>(), It.IsAny <CancellationToken>())).ReturnsAsync(ValidationResult.Incomplete); var handler = new SymbolsValidatorMessageHandler(_logger.Object, _symbolService.Object, _validatorStateService.Object); // Act var result = await handler.HandleAsync(_message); // Assert Assert.False(result); _symbolService.Verify(ss => ss.ValidateSymbolsAsync(It.IsAny <SymbolsValidatorMessage>(), It.IsAny <CancellationToken>()), Times.Once); }
public async Task ReturnsFalseIfFailToSaveInDB() { // Arrange ValidatorStatus status = new ValidatorStatus() { State = ValidationStatus.Incomplete }; _validatorStateService.Setup(s => s.GetStatusAsync(It.IsAny <Guid>())).ReturnsAsync(status); _validatorStateService.Setup(s => s.SaveStatusAsync(It.IsAny <ValidatorStatus>())).ReturnsAsync(SaveStatusResult.StaleStatus); _symbolService.Setup(s => s.ValidateSymbolsAsync(It.IsAny <SymbolsValidatorMessage>(), It.IsAny <CancellationToken>())). ReturnsAsync(ValidationResult.Succeeded); var handler = new SymbolsValidatorMessageHandler(_logger.Object, _symbolService.Object, _validatorStateService.Object); // Act var result = await handler.HandleAsync(_message); // Assert Assert.False(result); }
public async Task IncompleteStateIsProcessedAndSavedOnFailed() { // Arrange ValidatorStatus status = new ValidatorStatus() { State = ValidationStatus.Incomplete }; _validatorStateService.Setup(s => s.GetStatusAsync(It.IsAny <Guid>())).ReturnsAsync(status); _validatorStateService.Setup(s => s.SaveStatusAsync(It.IsAny <ValidatorStatus>())).ReturnsAsync(SaveStatusResult.Success); _symbolService.Setup(s => s.ValidateSymbolsAsync(It.IsAny <SymbolsValidatorMessage>(), It.IsAny <CancellationToken>())). ReturnsAsync(ValidationResult.FailedWithIssues(ValidationIssue.Unknown)); var handler = new SymbolsValidatorMessageHandler(_logger.Object, _symbolService.Object, _validatorStateService.Object); // Act var result = await handler.HandleAsync(_message); // Assert Assert.True(result); Assert.Equal(1, status.ValidatorIssues.Count); _validatorStateService.Verify(ss => ss.SaveStatusAsync(It.IsAny <ValidatorStatus>()), Times.Once); }