public void Configuration_WhenConfigurationFileDoesNotExistAndFileIsNotOptional_ThrowsInvalidOperationException() { File.Delete(_FilePath); var layer = new JsonFileConfigurationLayer(_FilePath, Encoding.UTF8, false); Assert.Throws <InvalidOperationException>(() => _ = layer.Configuration); }
public void Configuration_WhenConfigurationFileDoesNotExistAndFileIsOptional_ReturnsNull() { File.Delete(_FilePath); var layer = new JsonFileConfigurationLayer(_FilePath, Encoding.UTF8, true); var configuration = layer.Configuration; Assert.That(configuration, Is.Null); }
public void Configuration_WhenConfigurationFileContainsValues_ContainsThoseValues() { var co = new ConfigurationObject { Value1 = "Test 123" }; File.WriteAllText(_FilePath, JsonConvert.SerializeObject(co)); var layer = new JsonFileConfigurationLayer(_FilePath, Encoding.UTF8, false); var configuration = layer.Configuration; var output = configuration.ToObject <ConfigurationObject>(); Assert.That(JsonConvert.SerializeObject(output), Is.EqualTo(JsonConvert.SerializeObject(co))); }
public void Configuration_WhenConfigurationFileFirstDoesNotExistAndThenIsCreated_FirstReturnsNullThenReturnsConfiguration() { var layer = new JsonFileConfigurationLayer(_FilePath, Encoding.UTF8, true); File.Delete(_FilePath); var configuration1 = layer.Configuration; var co = new ConfigurationObject { Value1 = "Test 123" }; File.WriteAllText(_FilePath, JsonConvert.SerializeObject(co)); var configuration2 = layer.Configuration; File.Delete(_FilePath); var configuration3 = layer.Configuration; Assert.That(configuration1, Is.Null); Assert.That(JsonConvert.SerializeObject(configuration2), Is.EqualTo(JsonConvert.SerializeObject(co))); Assert.That(configuration3, Is.Null); }
public void Configuration_WhenConfigurationFileIsModified_ReturnsNewValues() { var layer = new JsonFileConfigurationLayer(_FilePath, Encoding.UTF8, true); var input1 = new ConfigurationObject { Value1 = "Test 123" }; File.WriteAllText(_FilePath, JsonConvert.SerializeObject(input1)); var configuration1 = layer.Configuration; var input2 = new ConfigurationObject { Value1 = "Test 456" }; File.WriteAllText(_FilePath, JsonConvert.SerializeObject(input2)); var configuration2 = layer.Configuration; Assert.That(JsonConvert.SerializeObject(configuration1), Is.EqualTo(JsonConvert.SerializeObject(input1))); Assert.That(JsonConvert.SerializeObject(configuration2), Is.EqualTo(JsonConvert.SerializeObject(input2))); Assert.That(JsonConvert.SerializeObject(configuration1), Is.Not.EqualTo(JsonConvert.SerializeObject(configuration2))); }