public void ReadSettings(string settingsFilePath, string sectionName, string settingName, string expectedValue)
        {
            var reader = new XmlSettingsFileAccessor();

            reader.LoadSettings(settingsFilePath, false);

            bool valueNotPresent;

            if (bool.TryParse(expectedValue, out var expectedBool))
            {
                var actualBool = reader.GetParam(sectionName, settingName, false, out valueNotPresent);

                if (valueNotPresent)
                {
                    Assert.Fail("Setting not found, section {0}, setting {1}", sectionName, settingName);
                }
                Assert.AreEqual(expectedBool, actualBool, "Unexpected boolean for section {0}, setting {1}: {2}", sectionName, settingName, actualBool);

                Console.WriteLine("Value for section {0}, setting {1} is {2}", sectionName, settingName, actualBool);
                return;
            }

            var actualValue = reader.GetParam(sectionName, settingName, "", out valueNotPresent);

            Assert.AreEqual(expectedValue, actualValue, "Unexpected value for section {0}, setting {1}: {2}", sectionName, settingName, actualValue);

            Console.WriteLine("Value for section {0}, setting {1} is {2}", sectionName, settingName, actualValue);
        }
        public void SaveSettings(string settingsFilePath, string sectionName, string settingName, string value)
        {
            var reader = new XmlSettingsFileAccessor();

            reader.LoadSettings(settingsFilePath, false);

            if (value == "Now")
            {
                value = DateTime.Now.ToString(FileTools.DATE_TIME_FORMAT);
            }

            reader.SetParam(sectionName, settingName, value);

            reader.SaveSettings();

            Console.WriteLine("Setting {0} updated in file {1}", settingName, reader.XMLFilePath);
        }