예제 #1
0
        public void DoAnything_EventMustBeFired()
        {
            var root = CreateRoot();
            var cw   = new ChangeWatcher(root);
            IConfigurationChangeInfo info = null;

            cw.ChangePushed += (o, e) =>
            {
                info = e;
            };
            root["a"] = "b";
            Assert.IsNotNull(info);
            EventArgs changeMgrArg = null;

            cw.ChangeMerged += (o, e) =>
            {
                changeMgrArg = e;
            };
            cw.Merge();
            Assert.IsNotNull(changeMgrArg);
            EventArgs changeClearedArg = null;

            cw.ChangeCleared += (o, e) =>
            {
                changeClearedArg = e;
            };
            cw.Clear();
            Assert.IsNotNull(changeClearedArg);
        }
예제 #2
0
 public void SavableChange()
 {
     changeWatcher.Clear();
     for (int i = 0; i < LoopCount; i++)
     {
         root["DbConnections:Mysql:Connection"] = i.ToString();
     }
 }
예제 #3
0
        public void AddChanged_ClearIt_MustClean()
        {
            var root = CreateRoot();
            var cw   = new ChangeWatcher(root);

            root["hello"] = "world";
            cw.Clear();
            Assert.AreEqual(0, cw.ChangeInfos.Count);
        }