public async Task SetValidationServiceStatuses_ObjectIsPersisted() { // Arrange var data = new ValidationServiceConfigurationStatusesCollection() { new ValidationServiceConfigurationStatuses() { AmendmentType = "a", ContractStatus = "b", ParentContractStatus = "c" } }; var expected = JsonConvert.SerializeObject(data); Mock.Get(_mockReader) .Setup(m => m.SetConfigAsync <string>(_validationServiceStatuses, expected)) .ReturnsAsync(expected); var config = new FeedProcessorConfiguration(_mockReader); // Act await config.SetValidationServiceStatuses(data); // Assert Mock.Get(_mockReader).VerifyAll(); }
public async Task ValidateContractStatusAsync_MissingConfiguration_UsesDefault() { // Arrange string parentStatus = "Approved"; string contractStatus = "Approved"; string amendmentType = "None"; var expected = GetDefaultStatuses(); ValidationServiceConfigurationStatusesCollection actual = null; ILoggerAdapter_Setup_LogInformation(); ILoggerAdapter_Setup_LogWarningException(); Mock.Get(_configuration) .SetupSequence(p => p.GetValidationServiceStatuses()) .Throws <KeyNotFoundException>() .Returns(Task.FromResult(expected)); Mock.Get(_configuration) .Setup(p => p.SetValidationServiceStatuses(It.IsAny <ValidationServiceConfigurationStatusesCollection>())) .Callback((ValidationServiceConfigurationStatusesCollection config) => { actual = config; }) .Returns(Task.CompletedTask) .Verifiable(); var service = GetValidationService(); // Act var result = await service.ValidateContractStatusAsync(parentStatus, contractStatus, amendmentType); // Assert result.Should().BeTrue("Because the supplied values are in the default configuration."); actual.Should().BeEquivalentTo(expected, "Because the default configuration and test configuration match."); Verify_All(); }
public async Task GetValidationServiceStatuses_WhenKeyAndDataExist_ReturnsExpectedValue() { // Arrange var expected = new ValidationServiceConfigurationStatusesCollection() { new ValidationServiceConfigurationStatuses() { AmendmentType = "a", ContractStatus = "b", ParentContractStatus = "c" } }; var configString = JsonConvert.SerializeObject(expected); Mock.Get(_mockReader) .Setup(m => m.GetConfigAsync <string>(_validationServiceStatuses)) .ReturnsAsync(configString); var config = new FeedProcessorConfiguration(_mockReader); // Act var result = await config.GetValidationServiceStatuses(); // Assert result.Should().BeEquivalentTo(expected, "Because settings are saved as string but deserilised before being returned."); Mock.Get(_mockReader).VerifyAll(); }
/// <inheritdoc/> public async Task SetValidationServiceStatuses(ValidationServiceConfigurationStatusesCollection settings) { string data = JsonConvert.SerializeObject(settings); await _configReader.SetConfigAsync(_validationServiceStatuses, data); }