public void AutoChange() { string cfgFile = Path.GetTempFileName(); File.WriteAllText(cfgFile, _xmlCfgAutoOrigin); var fileSettings = new XmlFileSettings(cfgFile); var wait = new ManualResetEvent(false); FileChecker.TryCreate(fileSettings).Changed += (a, e) => { wait.Set(); }; var t = Task.Factory.StartNew(() => { File.WriteAllText(cfgFile, _xmlCfgAutoModify); }, TaskCreationOptions.LongRunning); Task.WaitAll(t); Assert.IsTrue(wait.WaitOne(10000), "10 sec elapsed"); var appSettings = new XmlFileSettings(cfgFile).ToAppSettings(); Assert.That(appSettings.First <ExampleCombineConfig>("AdditionalConfig").F, Is.EqualTo("Modify")); }
public void IncludeInMiddle() { var loader = new SettingsLoader(); loader.XmlFileBySection(); var settings = loader .LoadSettings(XmlFileSettings.Create("Joining/AppDirectory/IncludeInMiddle.config".ResolveTestPath())) .Joined.ToAppSettings(); Assert.That(settings.LoadSections <AdditionalConfig>().Select(_ => _.F), Is.EquivalentTo(new[] { "InMainPre", "InAdditional", "InMainPost" })); }
public void BaseInclude() { var loader = new SettingsLoader(); loader.XmlFileBySection(); var settings = loader .LoadSettings(XmlFileSettings.Create("Joining/AppDirectory/Deeper/BaseInclude.config".ResolveTestPath())) .Joined.ToAppSettings(); Assert.That(settings.LoadSections <AdditionalConfig>().Select(_ => _.F), Is.EquivalentTo( new[] { "BeginMain", "BeginUpper", "InDeeperAdditional", "InAdditional", "EndUpper", "EndMain" })); }
protected override void AddPlugins(ItemModel source, Endpoint endpoint) { // //create the plugin var settings = new XmlFileSettings(); // //populate the plugin using values from the item settings.XmlRoot = base.GetStringValue(source, XmlFileEndpointItemModel.XmlRoot); settings.Path = base.GetStringValue(source, XmlFileEndpointItemModel.Path); // //add the plugin to the endpoint endpoint.Plugins.Add(settings); }
public RohamConfigs(XmlFileSettings xmlFileSettings) { Objects.Requires(xmlFileSettings != null, () => new NullReferenceException(nameof(XmlFileSettings))); _xmlFileSettings = xmlFileSettings; }