public void TestEventMultiDispatcher()
        {
            var s = CreateEventMulti();
            var r = CreateMultiDispatcher(s, 1);

            Assert.That(r.name == s.name);

            _b = r.BindListener(OnEvent);
            // Check has instantiated multi elements
            Assert.That(s.count == 2);

            // Check ref dispatches element 1
            r.Dispatch();
            Assert.That(_raised == 1);
            // Check changing ref index and rebinding adds another event
            r.index = 2;
            _b.Enable(false);
            _b = r.BindListener(OnEvent);
            Assert.That(s.count == 3);
            // Check binding has been updated - s[1] dispatch shouldn't affect us but s[2] should
            s[1].Dispatch();
            Assert.That(_raised == 1);
            s[2].Dispatch();
            Assert.That(_raised == 2);
            // Check ref dispatches element 2
            r.Dispatch();
            Assert.That(_raised == 3);
            // Check smart event is indeed being dispatched
            _b.Enable(false);
            _b = s[2].BindListener(OnEvent);
            r.Dispatch();
            Assert.That(_raised == 4);

            Destroy(s);
        }
        public void TestFloatSetWriter()
        {
            var s = CreateFloatSet();
            var r = CreateSetRefWriter(s);

            _b = r.BindListener(OnSetChanged);

            Assert.That(r.name == s.name);

            r.Add(100f);
            Assert.That(s.count == 1);
            Assert.That(s[0] == 100f);
            Assert.That(_f == 100f);
            r[0] = 5f;
            Assert.That(s.count == 1);
            Assert.That(s[0] == 5f);
            Assert.That(_f == 10f);
            r.Remove(5);
            Assert.That(s.count == 0);
            Assert.That(_f == -5);
            r.Add(100f);
            r.Add(200f);
            r.RemoveAt(0);
            Assert.That(s.count == 1);
            Assert.That(s[0] == 200f);
            Assert.That(_f == -100f);

            Destroy(s);
        }
        public void TestFloatMultiWriter()
        {
            var s = CreateFloatMulti();
            var r = CreateMultiWriter(s, 1);

            Assert.That(r.name == s.name);

            _b = r.BindListener(OnUpdated);
            // Check has instantiated multi elements
            Assert.That(s.count == 2);

            // Check ref dispatches element 1
            r.value = 100f;
            Assert.That(_f == 100f);
            // Check changing ref index and rebinding adds another event
            r.index = 2;
            _b.Enable(false);
            _b = r.BindListener(OnUpdated);
            Assert.That(s.count == 3);
            // Check binding has been updated - s[1] dispatch shouldn't affect us but s[2] should
            s[1].value = 50f;
            Assert.That(_f == 100f);
            s[2].value = 250f;
            Assert.That(_f == 250f);
            // Check ref dispatches element 2
            r.value = 300f;
            Assert.That(_f == 300f);
            // Check smart float is indeed being dispatched
            _b.Enable(false);
            _b      = s[2].BindListener(OnUpdated);
            r.value = 400f;
            Assert.That(_f == 400f);

            Destroy(s);
        }
        public void TestEvent()
        {
            var s = CreateEvent();

            _b = s.BindListener(OnEvent);
            s.Dispatch();
            Assert.That(_raised == 1);
            Destroy(s);
        }
 public void Teardown()
 {
     _f = 0;
     if (_b != null)
     {
         _b.Enable(false);
     }
     _b      = null;
     _raised = 0;
 }
        public void TestEventMulti()
        {
            var s = CreateEventMulti();

            _b = s.BindListener(OnEvent, 1);
            Assert.That(s.count == 2);
            s[1].Dispatch();
            Assert.That(_raised == 1);

            Destroy(s);
        }
        public void TestEventListenerBindingVar()
        {
            var s = CreateEvent();
            var l = CreateListener(s);

            _b = l.BindListener(OnEvent);

            TestListenerBinding(s.Dispatch);

            Destroy(s);
        }
        public void TestFloat()
        {
            var s = CreateFloat();

            _b      = s.BindListener(OnUpdated);
            s.value = 100f;
            Assert.That(s.value == 100f);
            Assert.That(_f == 100f);

            Destroy(s);
        }
        public void TestFloatSetReaderBinding()
        {
            var s = CreateFloatSet();
            var r = CreateSetRef(s);

            _b = r.BindListener(OnSetChanged);

            TestReaderBinding((f) => { s.Add(f); });

            Destroy(s);
        }
Exemple #10
0
        public void TestFloatReaderBindingVar()
        {
            var s = CreateFloat();
            var r = CreateReader(s, SFA.SmartDataRefBase.RefType.VAR);

            _b = r.BindListener(OnUpdated);

            TestReaderBinding((f) => { s.value = f; });

            Destroy(s);
        }
Exemple #11
0
        public void TestDispatchSmartEvent()
        {
            var s = CreateEvent();
            var w = CreateDispatchSmartEvent(s);

            _b = s.BindListener(OnEvent);

            w.Dispatch();
            Assert.That(_raised == 1);

            Destroy(s, w);
        }
Exemple #12
0
        public void TestFloatMulti()
        {
            var s = CreateFloatMulti();

            _b = s.BindListener(OnUpdated, 1);
            Assert.That(s.count == 2);
            s[1].value = 100f;
            Assert.That(s[1].value == 100f);
            Assert.That(_f == 100f);

            Destroy(s);
        }
Exemple #13
0
        public void TestFloatReaderBindingMulti()
        {
            var s = CreateFloatMulti();
            var r = CreateReader(s, SFA.SmartDataRefBase.RefType.MULTI, 1);

            _b = r.BindListener(OnUpdated);

            Assert.That(s.count == 2);
            TestReaderBinding((f) => { s[1].value = f; });

            Destroy(s);
        }
Exemple #14
0
        public void TestWriteFloat()
        {
            var s = CreateFloat();
            var w = CreateWriteFloat(s);

            _b = s.BindListener(OnUpdated);

            w.value = 100f;
            Assert.That(w.value == 100f);
            Assert.That(_f == 100f);

            Destroy(s, w);
        }
Exemple #15
0
        public void TestEventListenerVar()
        {
            var s = CreateEvent();
            var l = CreateListener(s);

            _b = l.BindListener(OnEvent);

            Assert.That(l.name == s.name);
            s.Dispatch();
            Assert.That(_raised == 1);

            Destroy(s);
        }
Exemple #16
0
        public void TestEventListenerBindingMulti()
        {
            var s = CreateEventMulti();
            var l = CreateListener(s, 1);

            _b = s[1].BindListener(OnEvent);

            Assert.That(l.name == s.name);
            Assert.That(s.count == 2);
            TestListenerBinding(s[1].Dispatch);

            Destroy(s);
        }
Exemple #17
0
        public void TestEventDispatcherVar()
        {
            var s = CreateEvent();
            var r = CreateDispatcher(s);

            _b = r.BindListener(OnEvent);

            Assert.That(r.name == s.name);

            r.Dispatch();
            Assert.That(_raised == 1);

            Destroy(s);
        }
Exemple #18
0
        public void TestFloatWriterVar()
        {
            var s = CreateFloat();
            var r = CreateWriter(s, SFA.SmartDataRefBase.RefType.VAR);

            _b = r.BindListener(OnUpdated);

            Assert.That(r.name == s.name);

            r.value = 100f;
            Assert.That(s.value == 100f);
            Assert.That(_f == 100f);

            Destroy(s);
        }
Exemple #19
0
        public void TestFloatWriterMulti()
        {
            var s = CreateFloatMulti();
            var r = CreateWriter(s, SFA.SmartDataRefBase.RefType.MULTI, 1);

            _b = r.BindListener(OnUpdated);

            Assert.That(r.name == s.name);

            r.value = 100f;
            Assert.That(s.count == 2);
            Assert.That(s[1].value == 100f);
            Assert.That(_f == 100f);

            Destroy(s);
        }
Exemple #20
0
        public void TestWriteFloatSet()
        {
            var s = CreateFloatSet();
            var w = CreateWriteFloatSet(s);

            _b = s.BindListener(OnSetChanged);

            w.Add(100f);
            Assert.That(s.count == 1);
            Assert.That(s[0] == 100f);
            Assert.That(_f == 100f);
            w.Remove(100f);
            Assert.That(s.count == 0);
            Assert.That(_f == -100f);
            w.Add(50f);
            w.RemoveAt(0);
            Assert.That(s.count == 0);
            Assert.That(_f == -50f);

            Destroy(s, w);
        }