public void TestDelayedTimedNoSignaled()
        {
            var ev = new PinkoManualResetEvent(false);

            var signaled = true;
            Task.Factory.StartNew(() => signaled = ev.WaitOne(500));
            Thread.Sleep(2000);

            // assure it timeout since it did not get signaled
            Assert.IsFalse(signaled);
        }
        public void TestDelayedSignaled()
        {
            var ev = new PinkoManualResetEvent(false) {DefaultMilliseconds = 2000};

            long signaled = -1;
            Task.Factory.StartNew(() => signaled = ev.WaitOne());
            Thread.Sleep(2200);

            ev.Set();
            Thread.Sleep(1000);

            // assure it waited and eventually signaled
            Assert.IsTrue(signaled == 1);
        }
        public void TestDelayedTimedSignaled()
        {
            var ev = new PinkoManualResetEvent(false);

            var signaled = true;
            Task.Factory.StartNew(() => signaled = ev.WaitOne(30000));
            Thread.Sleep(1000);

            ev.Set();
            Thread.Sleep(1000);

            // assure it waited and eventually signaled
            Assert.IsTrue(signaled);
        }
        public void TestDefaultTimeout()
        {
            var ev = new PinkoManualResetEvent(false);

            Assert.IsFalse(ev.WaitOne(500));
        }
        public void TestDefaultSignaled()
        {
            var ev = new PinkoManualResetEvent(true);

            Assert.IsTrue(ev.WaitOne(500));
        }