Esempio n. 1
0
        [Category("Slow")] // 14secs
        public void WritesQueuedAtCloseLinger_Local_NotAllCompletes()
        {
            TestRfcommPort port;
            Stream         strm;
            IAsyncResult   ar1;
            IAsyncResult   ar2;

            WritesQueuedAtCloseLinger_Init(out port, out strm, out ar1, out ar2);
            OneEventFirer firer1 = new OneEventFirer(port, 2000);

            firer1.Run(PORT_EV.TXEMPTY);
            int ticks, start = Environment.TickCount;

            try {
                strm.Close();
                Assert.Fail("should have thrown");
            } catch (AssertionException) {
                throw;
            } catch (Exception ex) {
                Assert.AreEqual("Linger time-out FIXME", ex.Message, "ex.Message");
            } finally {
                ticks = Environment.TickCount - start;
            }
            WritesQueuedAtCloseLinger_OneMoreSent_Finish(port, strm, ar1, ar2);
            Assert.Greater(ticks + 1, Test_LingerTimeTicks, "ticks");
            firer1.Complete();
        }
            void ITestSocketPair.PeerCloses()
            {
                OneEventFirer firer = new OneEventFirer(m_port);

                firer.Run(PORT_EV.CONNECT_ERR);
                firer.Complete();
            }
Esempio n. 3
0
        [Category("Slow")] // 4secs
        public void WritesQueuedAtCloseLinger_Local_Completes()
        {
            TestRfcommPort port;
            Stream         strm;
            IAsyncResult   ar1;
            IAsyncResult   ar2;

            WritesQueuedAtCloseLinger_Init(out port, out strm, out ar1, out ar2);
            int           ticks;
            OneEventFirer firer1 = new OneEventFirer(port, 2000);

            firer1.Run(PORT_EV.TXEMPTY);
            OneEventFirer firer2 = new OneEventFirer(port, 2000);

            firer2.Run(PORT_EV.TXEMPTY);
            OneEventFirer firer3 = new OneEventFirer(port, 2000);

            firer3.Run(PORT_EV.TXEMPTY);
            TimeThis(out ticks, delegate(Stream strm2) {
                strm2.Close();
            }, strm);
            WritesQueuedAtCloseLinger_AllSent_Finish(port, strm, ar1, ar2);
            Assert.Less(ticks, Test_LingerTimeTicks);
            firer1.Complete();
            firer2.Complete();
            firer3.Complete();
        }