Beispiel #1
0
        private async Task DisconnectAsync(CancellationToken cancellationToken)
        {
            if (!IsConnected)
            {
                return;
            }

            Console.WriteLine("Starting disconnect...");
            await connection.DisconnectAsync(cancellationToken);
        }
Beispiel #2
0
        public async Task DisconnectAsyncShouldOptionallyCloseAllReferences()
        {
            var handle        = new IntPtr(1);
            var device        = new TestDevice("Test");
            var entryName     = "Test";
            var phoneBook     = @"C:\Test.pbk";
            var entryId       = Guid.NewGuid();
            var options       = new RasConnectionOptions(Ras.RASCF.AllUsers);
            var sessionId     = new Luid(1, 1);
            var correlationId = Guid.NewGuid();

            var rasHangUp = new Mock <IRasHangUp>();

            services.Setup(o => o.GetService(typeof(IRasHangUp))).Returns(rasHangUp.Object);

            var target = new RasConnection(handle, device, entryName, phoneBook, entryId, options, sessionId, correlationId, services.Object);
            await target.DisconnectAsync(CancellationToken.None, false);

            rasHangUp.Verify(o => o.HangUpAsync(target, false, CancellationToken.None), Times.Once);
        }
        public async Task DisconnectAsyncShouldCloseAllReferencesByDefault()
        {
            var handle        = new IntPtr(1);
            var device        = new TestDevice("Test");
            var entryName     = "Test";
            var phoneBook     = @"C:\Test.pbk";
            var entryId       = Guid.NewGuid();
            var options       = new RasConnectionOptions(Ras.RASCF.AllUsers);
            var sessionId     = new Luid(1, 1);
            var correlationId = Guid.NewGuid();

            var rasGetConnectStatus        = new Mock <IRasGetConnectStatus>();
            var rasGetConnectionStatistics = new Mock <IRasGetConnectionStatistics>();
            var rasHangUp = new Mock <IRasHangUp>();
            var rasClearConnectionStatistics = new Mock <IRasClearConnectionStatistics>();

            var target = new RasConnection(handle, device, entryName, phoneBook, entryId, options, sessionId, correlationId, rasGetConnectStatus.Object, rasGetConnectionStatistics.Object, rasHangUp.Object, rasClearConnectionStatistics.Object);
            await target.DisconnectAsync(CancellationToken.None);

            rasHangUp.Verify(o => o.HangUpAsync(target, true, CancellationToken.None), Times.Once);
        }