Exemplo n.º 1
0
        long DoSpeedTest(
            string speedTestableConfig,
            string title,
            string testUrl,
            int testPort,
            EventHandler <VgcApis.Models.Datas.StrEvent> logDeliever)
        {
            var speedTester = new V2RayGCon.Lib.V2Ray.Core(setting)
            {
                title = title
            };

            if (logDeliever != null)
            {
                speedTester.OnLog += logDeliever;
            }
            speedTester.RestartCore(speedTestableConfig);
            long testResult = Lib.Utils.VisitWebPageSpeedTest(testUrl, testPort);

            speedTester.StopCore();
            if (logDeliever != null)
            {
                speedTester.OnLog -= logDeliever;
            }
            return(testResult);
        }
Exemplo n.º 2
0
        private void WelcomeFlyPanelComponent_Load(object sender, System.EventArgs e)
        {
            var core = new V2RayGCon.Lib.V2Ray.Core(setting);

            if (!core.IsExecutableExist())
            {
                return;
            }

            pnlBasicUsage.Top            = pnlDownloadV2RayCore.Top;
            pnlDownloadV2RayCore.Visible = false;
            this.Height = pnlBasicUsage.Top + marginBottom;
        }
Exemplo n.º 3
0
        public void GetLocalCoreVersion()
        {
            var core    = new V2RayGCon.Lib.V2Ray.Core(Service.Setting.Instance);
            var version = core.GetCoreVersion();

            if (core.IsExecutableExist())
            {
                Assert.AreNotEqual(string.Empty, version);
            }
            else
            {
                Assert.AreEqual(string.Empty, version);
            }
        }
Exemplo n.º 4
0
        long RunSpeedTestWorker(
            string speedTestableConfig,
            string title,
            string testUrl,
            int testPort,
            EventHandler <VgcApis.Models.Datas.StrEvent> logDeliever)
        {
            var speedTester = new V2RayGCon.Lib.V2Ray.Core(setting)
            {
                title = title
            };

            if (logDeliever != null)
            {
                speedTester.OnLog += logDeliever;
            }

            speedTester.WaitForToken();
            try
            {
                speedTester.RestartCore(speedTestableConfig);
            }
            finally
            {
                speedTester.ReleaseToken();
            }

            long testResult = Lib.Utils.VisitWebPageSpeedTest(testUrl, testPort);

            speedTester.WaitForTokenHurry();
            try
            {
                speedTester.StopCore();
            }
            finally
            {
                speedTester.ReleaseToken();
            }

            if (logDeliever != null)
            {
                speedTester.OnLog -= logDeliever;
            }
            return(testResult);
        }
Exemplo n.º 5
0
        void RefreshLocalV2RayCoreVersion()
        {
            var el = labelCoreVersion;

            Task.Factory.StartNew(() =>
            {
                var core    = new V2RayGCon.Lib.V2Ray.Core(setting);
                var version = core.GetCoreVersion();
                var msg     = string.IsNullOrEmpty(version) ?
                              I18N.GetCoreVerFail :
                              string.Format(I18N.CurrentCoreVerIs, version);
                try
                {
                    VgcApis.Libs.UI.RunInUiThread(
                        el, () => { el.Text = msg; });
                }
                catch { }
            });
        }
Exemplo n.º 6
0
 public CoreServerTest()
 {
     core = new V2RayGCon.Lib.V2Ray.Core(Service.Setting.Instance);
 }
Exemplo n.º 7
0
        long RunSpeedTestWorker(
            string rawConfig,
            string title,
            string testUrl,
            int testTimeout,
            bool isUseCache,
            bool isInjectSpeedTestTpl,
            bool isInjectActivateTpl,
            EventHandler <VgcApis.Models.Datas.StrEvent> logDeliever)
        {
            var port            = VgcApis.Libs.Utils.GetFreeTcpPort();
            var speedTestConfig = CreateSpeedTestConfig(
                rawConfig, port, isUseCache, isInjectSpeedTestTpl, isInjectActivateTpl);

            if (string.IsNullOrEmpty(speedTestConfig))
            {
                logDeliever?.Invoke(this, new VgcApis.Models.Datas.StrEvent(I18N.DecodeImportFail));
                return(long.MaxValue);
            }

            var url = string.IsNullOrEmpty(testUrl) ?
                      VgcApis.Models.Consts.Webs.GoogleDotCom :
                      testUrl;

            var speedTester = new V2RayGCon.Lib.V2Ray.Core(setting)
            {
                title = title
            };

            if (logDeliever != null)
            {
                speedTester.OnLog += logDeliever;
            }

            speedTester.WaitForToken();
            try
            {
                speedTester.RestartCore(speedTestConfig);
            }
            finally
            {
                speedTester.ReleaseToken();
            }

            long testResult = Lib.Utils.VisitWebPageSpeedTest(url, port, testTimeout);

            speedTester.WaitForTokenHurry();
            try
            {
                speedTester.StopCore();
            }
            finally
            {
                speedTester.ReleaseToken();
            }

            if (logDeliever != null)
            {
                speedTester.OnLog -= logDeliever;
            }
            return(testResult);
        }