コード例 #1
0
ファイル: UnitTest1.cs プロジェクト: satur9/autoproxyswitcher
        public void TestComplexRule()
        {
            RulesChecker.RulesCheckerResult result;
            NetworkInfo networkInfo;
            AutoProxySwitcherLib.NetworkChangeDetector ncd = new NetworkChangeDetector();
            ncd.LoadConfigurations("Samples/ComplexRule.xml");

            NetworkInfo ni = new NetworkInfo();
            ni.Description = "Test Network";
            ni.DNS = new List<string> { "192.168.1.252" };
            ni.IP = new List<string> { "192.168.1.254" };
            ni.NetworkIP = new List<string> { "192.168.0.0/16" };
            ni.Type = "Wi-Fi";
            ni.IfName = "Test1";

            List<NetworkInfo> networks = new List<NetworkInfo> { ni };

            NetworkConfiguration configuration = ncd.FindMatchingConfiguration(networks, out result, out networkInfo);

            if (result != null)
            {
                Console.WriteLine(result.ReasonString);
            }
            Console.WriteLine("Test");
            Assert.AreSame(configuration, ncd.Configurations[0]);
            //Assert.IsTrue(result.ReasonString.Equals("network DNS matches 192.168.1.252"));
        }
コード例 #2
0
ファイル: UnitTest1.cs プロジェクト: satur9/autoproxyswitcher
        public void TestManyConfigs()
        {
            AutoProxySwitcherLib.NetworkChangeDetector ncd = new NetworkChangeDetector();
            RulesChecker.RulesCheckerResult result;
            NetworkInfo networkInfo;
            ncd.LoadConfigurations("Samples/ManyConfigs.xml");

            NetworkInfo ni = new NetworkInfo();
            ni.Description = "Test Network";
            ni.DNS = new List<string> { "172.17.4.80", "172.17.4.81" };
            ni.IP = new List<string> { "172.17.4.145" };
            ni.NetworkIP = new List<string> { "172.17.4.0/24" };
            ni.Type = "Local Area Connection";
            ni.IfName = "test";

            List<NetworkInfo> networks;
            NetworkConfiguration configuration;

            networks = new List<NetworkInfo> { ni };
            configuration = ncd.FindMatchingConfiguration(networks, out result, out networkInfo);

            Console.WriteLine(result.ReasonString);
            Console.WriteLine(configuration.ProxySettings);
            Assert.AreEqual(configuration.Name, "Config 1");
            Assert.IsTrue(result.ReasonString.Equals("network subnet matches 172.17.4.0/24"));

            ni.Description = "Test Network";
            ni.DNS = new List<string> { "172.17.80.80", "172.17.80.81" };
            ni.IP = new List<string> { "172.17.80.15" };
            ni.NetworkIP = new List<string> { "172.17.80.0/24" };
            ni.Type = "Local Area Connection";
            ni.IfName = "test";

            networks = new List<NetworkInfo> { ni };
            configuration = ncd.FindMatchingConfiguration(networks, out result, out networkInfo);

            Console.WriteLine(result.ReasonString);
            Console.WriteLine(configuration.ProxySettings);
            Assert.AreEqual(configuration.Name, "Config 4");
            Assert.IsTrue(result.ReasonString.Equals("network subnet matches 172.17.80.0/24"));

            ni.Description = "Test Network";
            ni.DNS = new List<string> { "172.16.0.5" };
            ni.IP = new List<string> { "172.16.0.78" };
            ni.NetworkIP = new List<string> { "172.16.2/24" };
            ni.Type = "Local Area Connection";
            ni.IfName = "test";

            networks = new List<NetworkInfo> { ni };
            configuration = ncd.FindMatchingConfiguration(networks, out result, out networkInfo);

            Console.WriteLine(result.ReasonString);
            Console.WriteLine(configuration.ProxySettings);
            Assert.AreEqual(configuration.Name, "Default Config");
            Assert.IsTrue(result.ReasonString.Equals("default rule match"));
        }