Exemple #1
0
        public void AddOrUpdateInvokesCallbackWhenKeyIsFound()
        {
            Scheduler.WaitFor(Tangle.Add("a", 1));
            Scheduler.WaitFor(Tangle.AddOrUpdate("a", 999, (oldValue) => oldValue + 1));
            Scheduler.WaitFor(Tangle.AddOrUpdate("b", 128, (oldValue) => oldValue + 1));

            Assert.AreEqual(2, Scheduler.WaitFor(Tangle.Get("a")));
            Assert.AreEqual(128, Scheduler.WaitFor(Tangle.Get("b")));
        }
Exemple #2
0
        public void UpdateGrowthWorks()
        {
            var s = "a";

            Scheduler.WaitFor(Tangle.Set("test", s));

            UpdateCallback <string> callback = (str) => str + "a";

            for (int i = 0; i < 10; i++)
            {
                s = s + "a";

                Scheduler.WaitFor(Tangle.AddOrUpdate("test", null, callback));

                Assert.AreEqual(s, Scheduler.WaitFor(Tangle.Get("test")));
            }
        }