public void RetrievesTheStatisticsAsExpected() { 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 rasConnectionStatistics = new Mock <RasConnectionStatistics>(); 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); rasGetConnectionStatistics.Setup(o => o.GetConnectionStatistics(target)).Returns(rasConnectionStatistics.Object).Verifiable(); var result = target.GetStatistics(); Assert.AreEqual(rasConnectionStatistics.Object, result); rasGetConnectionStatistics.Verify(); }
public void MustReturnTrueForAllUsers() { var target = new RasConnectionOptions(RASCF.AllUsers); Assert.True(target.AvailableToAllUsers); Assert.False(target.UsingDefaultCredentials); Assert.False(target.IsOwnerKnown); Assert.False(target.IsOwnerCurrentUser); }
public void ConnectionOptionsNullTest() { RasConnection target = new RasConnection(); target.ConnectionOptions = null; RasConnectionOptions actual = target.ConnectionOptions; Assert.IsNotNull(actual); }
/// <summary> /// Sets the connection options on a <see cref="RasConnection"/> for the flags specified. /// </summary> /// <param name="connection">The connection whose connection options to set.</param> /// <param name="value">The flags of the entry.</param> public static void SetRasConnectionOptions(RasConnection connection, NativeMethods.RASCF value) { if (connection != null) { RasConnectionOptions options = connection.ConnectionOptions; options.AllUsers = Utilities.HasFlag(value, NativeMethods.RASCF.AllUsers); options.GlobalCredentials = Utilities.HasFlag(value, NativeMethods.RASCF.GlobalCredentials); options.OwnerKnown = Utilities.HasFlag(value, NativeMethods.RASCF.OwnerKnown); options.OwnerMatch = Utilities.HasFlag(value, NativeMethods.RASCF.OwnerMatch); } }
public void ConstructorThrowsExceptionWhenPhoneBookIsWhitespace() { var handle = new IntPtr(1); var device = new TestDevice("Test"); var entryName = "Test"; var entryId = Guid.NewGuid(); var options = new RasConnectionOptions(Ras.RASCF.AllUsers); var sessionId = new Luid(1, 1); var correlationId = Guid.NewGuid(); Assert.Throws <ArgumentNullException>(() => _ = new RasConnection(handle, device, entryName, " ", entryId, options, sessionId, correlationId, services.Object)); }
public void ConstructorThrowsExceptionWhenDeviceIsNull() { var handle = new IntPtr(1); 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(); Assert.Throws <ArgumentNullException>(() => _ = new RasConnection(handle, null, entryName, phoneBook, entryId, options, sessionId, correlationId, services.Object)); }
public void ReturnTheCorrelationId() { 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 target = new RasConnection(handle, device, entryName, phoneBook, entryId, options, sessionId, correlationId, services.Object); Assert.AreEqual(correlationId, target.CorrelationId); }
public void ConnectionOptionsTest() { var expected = new RasConnectionOptions() { AllUsers = true }; var target = new RasConnection(); target.ConnectionOptions = expected; var actual = target.ConnectionOptions; Assert.AreSame(expected, actual); }
public void ConstructorThrowsExceptionWhenPhoneBookIsWhitespace() { var handle = new IntPtr(1); var device = new TestDevice("Test"); var entryName = "Test"; 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>(); Assert.Throws <ArgumentNullException>(() => { _ = new RasConnection(handle, device, entryName, " ", entryId, options, sessionId, correlationId, rasGetConnectStatus.Object, rasGetConnectionStatistics.Object, rasHangUp.Object, rasClearConnectionStatistics.Object); }); }
public void ReturnTheCorrelationId() { 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); Assert.AreEqual(correlationId, target.CorrelationId); }
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 void ConstructorThrowsExceptionWhenDeviceIsNull() { var handle = new IntPtr(1); 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>(); Assert.Throws <ArgumentNullException>(() => { var unused = new RasConnection(handle, null, entryName, phoneBook, entryId, options, sessionId, correlationId, rasGetConnectStatus.Object, rasGetConnectionStatistics.Object, rasHangUp.Object, rasClearConnectionStatistics.Object); }); }
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); }
public void DisconnectWithoutToken() { 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); target.Disconnect(); rasHangUp.Verify(o => o.HangUpAsync(target, It.IsAny <bool>(), CancellationToken.None), Times.Once); }
public void ClearsTheConnectionStatisticsAsExpected() { 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); target.ClearStatistics(); rasClearConnectionStatistics.Verify(o => o.ClearConnectionStatistics(target), Times.Once); }
public void DisconnectTheConnectionAsExpected() { 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 cancellationToken = CancellationToken.None; 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); target.Disconnect(CancellationToken.None); rasHangUp.Verify(o => o.HangUpAsync(target, It.IsAny <bool>(), cancellationToken)); }