예제 #1
0
        public void MessengerCenterObjTest()
        {
            var mc = new MessengerCenter();

            mc.Subscribe(this, "msg1", (msg) =>
            {
                Assert.AreEqual("msg1", msg.MessageString);
            });

            mc.Subscribe(this, "msg2", (msg) =>
            {
                Assert.AreEqual("msg2", msg.MessageString);
            });

            var nc = mc.Notify("msg1", null);
            Assert.AreEqual(1, nc);

            nc = mc.Notify("msg5", null);
            Assert.AreEqual(0, nc);

            bool didCall = false;
            mc.Subscribe(this, "msg2", (msg) =>
            {
                didCall = true;
                Assert.AreEqual("msg2", msg.MessageString);
            });

            Assert.IsFalse(didCall);

            nc = mc.Notify("msg2", null);
            Assert.AreEqual(2, nc);

            Assert.IsTrue(didCall);
        }
예제 #2
0
        public void MessengerCenterObjTest()
        {
            var mc = new MessengerCenter();

            mc.Subscribe(this, "msg1", (msg) =>
            {
                Assert.AreEqual("msg1", msg.MessageString);
            });

            mc.Subscribe(this, "msg2", (msg) =>
            {
                Assert.AreEqual("msg2", msg.MessageString);
            });

            var nc = mc.Notify("msg1", null);

            Assert.AreEqual(1, nc);

            nc = mc.Notify("msg5", null);
            Assert.AreEqual(0, nc);

            bool didCall = false;

            mc.Subscribe(this, "msg2", (msg) =>
            {
                didCall = true;
                Assert.AreEqual("msg2", msg.MessageString);
            });

            Assert.IsFalse(didCall);

            nc = mc.Notify("msg2", null);
            Assert.AreEqual(2, nc);

            Assert.IsTrue(didCall);
        }