public void SaveConfiguration_ShouldSaveCorrectComplexType()
        {
            var testString = "test_string_to_save";
            var config     = new ComplexTestConfigurationField()
            {
                TestConfiguration = new TestConfigurationField()
                {
                    TestString   = testString,
                    TestChar     = 'T',
                    TestInt      = 10,
                    TestUint     = 100u,
                    TestUintList = new List <uint>()
                    {
                        1, 2, 3, 4
                    }
                }
            };

            _iniWrapper.SaveConfiguration(config);

            _iniParser.Received(1).Write(nameof(TestConfigurationField), nameof(TestConfigurationField.TestString), testString);
            _iniParser.Received(1).Write(nameof(TestConfigurationField), nameof(TestConfigurationField.TestChar), config.TestConfiguration.TestChar.ToString());
            _iniParser.Received(1).Write(nameof(TestConfigurationField), nameof(TestConfigurationField.TestInt), config.TestConfiguration.TestInt.ToString());
            _iniParser.Received(1).Write(nameof(TestConfigurationField), nameof(TestConfigurationField.TestUint), config.TestConfiguration.TestUint.ToString());
            _iniParser.Received(1).Write(nameof(TestConfigurationField), nameof(TestConfigurationField.TestUintList), "1,2,3,4");
        }
        public void SaveConfiguration_ShouldSaveCorrectDefaultValues()
        {
            _iniWrapper.SaveConfiguration(new DefaultValuesConfiguration());

            _iniParser.Received(1).Write(nameof(DefaultValuesConfiguration), nameof(DefaultValuesConfiguration.DefaultInt), DefaultValuesConfigurationConsts.DefaultInt.ToString());
            _iniParser.Received(1).Write(nameof(DefaultValuesConfiguration), nameof(DefaultValuesConfiguration.DefaultString), DefaultValuesConfigurationConsts.DefaultString);
            _iniParser.Received(1).Write(nameof(DefaultValuesConfiguration), nameof(DefaultValuesConfiguration.DefaultList), DefaultValuesConfigurationConsts.DefaultList);
        }
Example #3
0
        public void LoadConfiguration_ShouldLoadString()
        {
            var testString = "test_string_to_save";

            _iniParser.Read(AttributeWithOnlySectionReadTestConfigurationConstants.TestStringSection, nameof(AttributeWithOnlySectionReadTestConfiguration.TestString)).Returns(testString);

            var result = _iniWrapper.LoadConfiguration <AttributeWithOnlySectionReadTestConfiguration>();

            _iniParser.Received(1).Read(AttributeWithOnlySectionReadTestConfigurationConstants.TestStringSection, nameof(AttributeWithOnlySectionReadTestConfiguration.TestString));
            result.TestString.Should().Be(testString);
        }
        public void SaveConfiguration_ShouldSaveCorrectWriteDateTime_And_TimeSpan()
        {
            var config = new GuidConfiguration()
            {
                Guid = Guid.NewGuid(),
                Uri  = new Uri("http://testttt.com/")
            };

            _iniWrapper.SaveConfiguration(config);
            _iniParser.Received(1).Write(nameof(GuidConfiguration), nameof(GuidConfiguration.Guid), config.Guid.ToString());
            _iniParser.Received(1).Write(nameof(GuidConfiguration), nameof(GuidConfiguration.Uri), config.Uri.ToString());
        }
        public void LoadConfiguration_ShouldSaveCorrectLoadString()
        {
            var testString = "test_string_to_save";

            _iniParser.Read(AttributeReadTestConfigurationConstants.TestStringSection, AttributeReadTestConfigurationConstants.TestStringKey).Returns(testString);
            var result = _iniWrapper.LoadConfiguration <AttributeReadTestConfiguration>();

            _iniParser.Received(1).Read(AttributeReadTestConfigurationConstants.TestStringSection, AttributeReadTestConfigurationConstants.TestStringKey);
            result.TestString.Should().Be(testString);
        }
Example #6
0
        public void SaveConfiguration_ShouldSaveCorrectWriteDateTime_And_TimeSpan()
        {
            var config = new TimeConfiguration()
            {
                DateTime       = new DateTime(2019, 02, 07, 18, 58, 58),
                TimeSpan       = new TimeSpan(10, 10, 10),
                DateTimeOffset = new DateTimeOffset(2019, 02, 07, 18, 58, 10, TimeSpan.FromMinutes(20))
            };

            _iniWrapper.SaveConfiguration(config);

            _iniParser.Received(1).Write(nameof(TimeConfiguration), nameof(TimeConfiguration.DateTime), config.DateTime.ToString("O"));
            _iniParser.Received(1).Write(nameof(TimeConfiguration), nameof(TimeConfiguration.TimeSpan), config.TimeSpan.ToString());
            _iniParser.Received(1).Write(nameof(TimeConfiguration), nameof(TimeConfiguration.DateTimeOffset), config.DateTimeOffset.ToString());
        }
Example #7
0
        public void SaveConfiguration_ShouldIgnoreNullsForString()
        {
            var config = new NullIEnumerableConfiguration()
            {
                TestStringList = new List <string>()
                {
                    "a", "b", null, "c", null, "d", "f"
                }
            };

            _iniWrapper.SaveConfiguration(config);

            _iniParser.Received(1).Write(nameof(NullIEnumerableConfiguration), nameof(NullIEnumerableConfiguration.TestStringList), "a,b,c,d,f");
            _iniParser.Received(1).Write(Arg.Any <string>(), Arg.Any <string>(), Arg.Any <string>());
        }
        public void SaveConfiguration_ShouldSaveCorrectWriteIntIntIReadonlyDictionary()
        {
            var config = new ReadonlyCollectionsConfiguration()
            {
                IReadonlyDictionary = new Dictionary <int, int>()
                {
                    [1] = 2,
                    [2] = 3
                }
            };

            _iniWrapper.SaveConfiguration(config);
            _iniParser.Received(1).Write(nameof(ReadonlyCollectionsConfiguration.IReadonlyDictionary), "1", "2");
            _iniParser.Received(1).Write(nameof(ReadonlyCollectionsConfiguration.IReadonlyDictionary), "2", "3");
        }
Example #9
0
        public void SaveConfiguration_ShouldIgnoreEveryProperty_WithIngoreAttribute()
        {
            var config = new IgnoreAttributeTestConfiguration();

            _iniWrapper.SaveConfiguration(config);

            _iniParser.Received(0).Write(Arg.Any <string>(), Arg.Any <string>(), Arg.Any <string>());
        }
Example #10
0
        public void SaveConfiguration_ShouldSaveCorrectWriteNullableInt()
        {
            var config = new NullableConfiguration()
            {
                TestNullableInt = 10,
            };

            _iniWrapper.SaveConfiguration(config);
            _iniParser.Received(1).Write(nameof(NullableConfiguration), nameof(NullableConfiguration.TestNullableInt), "10");
        }
        public void SaveConfiguration_ShouldSaveListOfComplexType()
        {
            var config = new ListOfComplesDataConfigurationField()
            {
                TestConfigurations = new List <TestConfigurationField>()
                {
                    new TestConfigurationField()
                    {
                        TestInt        = 100,
                        TestChar       = 'x',
                        TestEnum       = TestEnum.One,
                        TestStringList = new List <string> {
                            "sda", "sda"
                        },
                        TestString = "teststring"
                    },
                    new TestConfigurationField()
                    {
                        TestInt        = 200,
                        TestChar       = 'u',
                        TestEnum       = TestEnum.Three,
                        TestStringList = new List <string> {
                            "sdaxxxxxxxx", "sda23223232"
                        },
                        TestString = "teststringsadxxx"
                    },
                }
            };

            _iniWrapper.SaveConfiguration(config);

            _iniParser.Received(1).Write($"{nameof(TestConfigurationField)}_0", nameof(TestConfigurationField.TestInt), "100");
            _iniParser.Received(1).Write($"{nameof(TestConfigurationField)}_0", nameof(TestConfigurationField.TestChar), "x");
            _iniParser.Received(1).Write($"{nameof(TestConfigurationField)}_0", nameof(TestConfigurationField.TestEnum), "1");
            _iniParser.Received(1).Write($"{nameof(TestConfigurationField)}_0", nameof(TestConfigurationField.TestStringList), "sda,sda");
            _iniParser.Received(1).Write($"{nameof(TestConfigurationField)}_0", nameof(TestConfigurationField.TestString), "teststring");


            _iniParser.Received(1).Write($"{nameof(TestConfigurationField)}_1", nameof(TestConfigurationField.TestInt), "200");
            _iniParser.Received(1).Write($"{nameof(TestConfigurationField)}_1", nameof(TestConfigurationField.TestChar), "u");
            _iniParser.Received(1).Write($"{nameof(TestConfigurationField)}_1", nameof(TestConfigurationField.TestEnum), "3");
            _iniParser.Received(1).Write($"{nameof(TestConfigurationField)}_1", nameof(TestConfigurationField.TestStringList), "sdaxxxxxxxx,sda23223232");
            _iniParser.Received(1).Write($"{nameof(TestConfigurationField)}_1", nameof(TestConfigurationField.TestString), "teststringsadxxx");
        }
Example #12
0
        public void SaveConfiguration_ShouldSaveCorrectWriteIntIntDictionary()
        {
            var config = new DictionaryConfigurationField()
            {
                IntsDictionary = new Dictionary <int, int>()
                {
                    [1] = 2,
                    [2] = 3
                }
            };

            _iniWrapper.SaveConfiguration(config);
            _iniParser.Received(1).Write(nameof(DictionaryConfigurationField.IntsDictionary), "1", "2");
            _iniParser.Received(1).Write(nameof(DictionaryConfigurationField.IntsDictionary), "2", "3");
        }
Example #13
0
        public void SaveConfiguration_ShouldIgnoreNullsForStringValues()
        {
            var config = new NullStringDictionaryConfiguration()
            {
                ValueStringDictionary = new Dictionary <int, string>()
                {
                    [10] = "test",
                    [20] = null,
                    [25] = "test2"
                }
            };

            _iniWrapper.SaveConfiguration(config);
            _iniParser.Received(1).Write(nameof(NullStringDictionaryConfiguration.ValueStringDictionary), "10", "test");
            _iniParser.Received(1).Write(nameof(NullStringDictionaryConfiguration.ValueStringDictionary), "25", "test2");

            _iniParser.Received(2).Write(Arg.Any <string>(), Arg.Any <string>(), Arg.Any <string>());
        }
        public void SaveConfiguration_ShouldSaveCorrectWriteString()
        {
            var testString = "test_string_to_save";
            var config     = new AttributeTestConfiguration()
            {
                TestString = testString,
            };

            _iniWrapper.SaveConfiguration(config);
            _iniParser.Received(1).Write(AttributeTestConfigurationConstants.Section, AttributeTestConfigurationConstants.Key, testString);
        }
Example #15
0
        public void SaveConfiguration_ShouldSaveCorrectWriteString()
        {
            var testString = "test_string_to_save";
            var config     = new AttributeWithOnlyKeyTestConfiguration()
            {
                TestString = testString,
            };

            _iniWrapper.SaveConfiguration(config);
            _iniParser.Received(1).Write(nameof(AttributeWithOnlyKeyTestConfiguration), AttributeWithOnlyKeyTestConfiguration.Key, testString);
        }
        public void SaveConfiguration_ShouldSaveCorrectWriteString()
        {
            var testString = "test_string_to_save";
            var config     = new TestConfigurationField()
            {
                TestString = testString,
            };

            _iniWrapper.SaveConfiguration(config);
            _iniParser.Received(1).Write(nameof(TestConfigurationField), nameof(TestConfigurationField.TestString), testString);
        }