private Service.KillSwitch.KillSwitch GetKillSwitch(SplitTunnelMode mode) { _serviceSettings.SplitTunnelSettings.Returns(new SplitTunnelSettingsContract { Mode = mode, AppPaths = new string[0], Ips = new string[0] }); return(new Service.KillSwitch.KillSwitch(_firewall, _serviceSettings, _networkInterfaceLoader)); }
public void OnVpnConnecting_SplitTunnelBlockMode_BlockInternet(SplitTunnelMode mode) { // Arrange var killSwitch = GetKillSwitch(mode); // Act killSwitch.OnVpnConnecting(GetConnectingVpnState()); // Assert _firewall.Received(1).EnableLeakProtection(RemoteIp); }
public void OnVpnConnecting_SplitTunnelBlockMode_BlockInternet(SplitTunnelMode mode, bool dnsLeakOnly) { // Arrange var killSwitch = GetKillSwitch(mode); // Act killSwitch.OnVpnConnecting(GetConnectingVpnState()); // Assert _firewall.ReceivedWithAnyArgs(1).EnableLeakProtection(Arg.Is <FirewallParams>(p => p.DnsLeakOnly == dnsLeakOnly)); }
public VpnConfig( IReadOnlyDictionary <VpnProtocol, IReadOnlyCollection <int> > portConfig, IReadOnlyCollection <string> customDns, SplitTunnelMode splitTunnelMode, IReadOnlyCollection <string> splitTunnelIPs) { AssertPortsValid(portConfig); AssertCustomDnsValid(customDns); Ports = portConfig; CustomDns = customDns; SplitTunnelMode = splitTunnelMode; SplitTunnelIPs = splitTunnelIPs; }
public OpenVpnProcessParams( VpnEndpoint endpoint, int managementPort, string password, IReadOnlyCollection <string> customDns, SplitTunnelMode splitTunnelMode, IReadOnlyCollection <string> splitTunnelIPs) { Endpoint = endpoint; ManagementPort = managementPort; Password = password; CustomDns = customDns; SplitTunnelMode = splitTunnelMode; SplitTunnelIPs = splitTunnelIPs; }
public OpenVpnProcessParams( VpnEndpoint endpoint, int managementPort, string password, IReadOnlyCollection <string> customDns, SplitTunnelMode splitTunnelMode, IReadOnlyCollection <string> splitTunnelIPs, bool useTunAdapter, string interfaceGuid) { Endpoint = endpoint; ManagementPort = managementPort; Password = password; CustomDns = customDns; SplitTunnelMode = splitTunnelMode; SplitTunnelIPs = splitTunnelIPs; UseTunAdapter = useTunAdapter; InterfaceGuid = interfaceGuid; }
public void ExpectedLeakProtectionStatus_ShouldBe_Expected_WhenConnecting(VpnStatus status, SplitTunnelMode splitTunnelMode, bool expected) { // Arrange var state = new VpnState(status); _serviceSettings.SplitTunnelSettings.Returns(new SplitTunnelSettingsContract { Mode = splitTunnelMode }); var killSwitch = new Service.KillSwitch.KillSwitch(_firewall, _serviceSettings); // Act var result = killSwitch.ExpectedLeakProtectionStatus(state); //Assert result.Should().Be(expected); }
public SplitTunnelRoutesArgument(IReadOnlyCollection <string> ips, SplitTunnelMode splitTunnelMode) { _ips = ips; _splitTunnelMode = splitTunnelMode; }
public BaseRouteArgument(SplitTunnelMode splitTunnelMode) { _splitTunnelMode = splitTunnelMode; }
public VpnConfig( IReadOnlyDictionary <VpnProtocol, IReadOnlyCollection <int> > portConfig, SplitTunnelMode splitTunnelMode, bool useTunAdapter) : this(portConfig, new List <string>(), splitTunnelMode, new List <string>(), useTunAdapter) { }