public void LoadConfiguration_ShouldLoadCorrectIEnumerableOfNullableComplexType() { var config = new ListOfComplexDataNullableConfiguration() { TestConfigurations = new List <NullableConfiguration>() { new NullableConfiguration { TestNullableChar = 'x', TestNullableEnum = TestEnum.Five, TestNullableInt = null, TestNullableUint = 10, }, new NullableConfiguration { TestNullableChar = 'y', TestNullableEnum = TestEnum.Three, TestNullableInt = 100, TestNullableUint = null, }, } }; _iniParser.Read($"{nameof(NullableConfiguration)}_0", null).Returns("notEmpty"); _iniParser.Read($"{nameof(NullableConfiguration)}_0", nameof(NullableConfiguration.TestNullableChar)).Returns("x"); _iniParser.Read($"{nameof(NullableConfiguration)}_0", nameof(NullableConfiguration.TestNullableEnum)).Returns("5"); _iniParser.Read($"{nameof(NullableConfiguration)}_0", nameof(NullableConfiguration.TestNullableInt)).Returns(""); _iniParser.Read($"{nameof(NullableConfiguration)}_0", nameof(NullableConfiguration.TestNullableUint)).Returns("10"); _iniParser.Read($"{nameof(NullableConfiguration)}_1", null).Returns("notEmpty"); _iniParser.Read($"{nameof(NullableConfiguration)}_1", nameof(NullableConfiguration.TestNullableChar)).Returns("y"); _iniParser.Read($"{nameof(NullableConfiguration)}_1", nameof(NullableConfiguration.TestNullableEnum)).Returns("3"); _iniParser.Read($"{nameof(NullableConfiguration)}_1", nameof(NullableConfiguration.TestNullableInt)).Returns("100"); _iniParser.Read($"{nameof(NullableConfiguration)}_1", nameof(NullableConfiguration.TestNullableUint)).Returns(""); var result = _iniWrapper.LoadConfiguration <ListOfComplexDataNullableConfiguration>(); result.Should().BeEquivalentTo(config); }
public void SaveConfiguration_ShouldSaveListOfComplexType_NullableTypes() { var config = new ListOfComplexDataNullableConfiguration() { TestConfigurations = new List <NullableConfiguration>() { new NullableConfiguration { TestNullableChar = 'x', TestNullableEnum = TestEnum.Five, TestNullableInt = null, TestNullableUint = 10, }, null, new NullableConfiguration { TestNullableChar = 'y', TestNullableEnum = TestEnum.Three, TestNullableInt = 100, TestNullableUint = null, }, null } }; _iniWrapper.SaveConfiguration(config); _iniParser.Received(1).Write($"{nameof(NullableConfiguration)}_0", nameof(NullableConfiguration.TestNullableChar), "x"); _iniParser.Received(1).Write($"{nameof(NullableConfiguration)}_0", nameof(NullableConfiguration.TestNullableEnum), "5"); _iniParser.Received(1).Write($"{nameof(NullableConfiguration)}_0", nameof(NullableConfiguration.TestNullableUint), "10"); _iniParser.Received(1).Write($"{nameof(NullableConfiguration)}_0", nameof(NullableConfiguration.TestNullableInt), string.Empty); _iniParser.Received(1).Write($"{nameof(NullableConfiguration)}_1", nameof(NullableConfiguration.TestNullableChar), "y"); _iniParser.Received(1).Write($"{nameof(NullableConfiguration)}_1", nameof(NullableConfiguration.TestNullableEnum), "3"); _iniParser.Received(1).Write($"{nameof(NullableConfiguration)}_1", nameof(NullableConfiguration.TestNullableInt), "100"); _iniParser.Received(1).Write($"{nameof(NullableConfiguration)}_1", nameof(NullableConfiguration.TestNullableUint), string.Empty); _iniParser.Received(8).Write(Arg.Any <string>(), Arg.Any <string>(), Arg.Any <string>()); }