/// <summary>
        /// обработчик кнопки "проверить соединение"
        /// </summary>
        private async void Btn_checkNetwork_ClickAsync(object sender, RoutedEventArgs e)
        {
            var ip = field_ip.Text;

            int.TryParse(field_port.Text, out int port);
            int.TryParse(field_portApi.Text, out int portApi);
            var secretKey = field_secretKey.Text;

            var checkResult = _cs.CheckSettings(ip, port, portApi, secretKey);

            if (checkResult != default)
            {
                MessageBox.Show(checkResult);
            }
            else
            {
                _cs.IP        = ip;
                _cs.Port      = port;
                _cs.PortAPI   = portApi;
                _cs.SecretKey = secretKey;

                var webConnection  = new WebConnection(_cs);
                var isApiAvailable = await webConnection.CheckConnectionAsync(portApi);

                var isServerAvailable = await webConnection.CheckConnectionAsync(port);

                //TODO: поправить
                string serversAvailability = "";
                serversAvailability += isApiAvailable ? Constants.CONNECTION_API_SUCCESSED : Constants.CONNECTION_API_FAILED;
                serversAvailability += Environment.NewLine;
                serversAvailability += isServerAvailable ? Constants.CONNECTION_DOOR_CONTROLLER_SUCCESSED : Constants.CONNECTION_DOOR_CONTROLLER_FAILED;


                if (isServerAvailable || isApiAvailable)
                {
                    Logger.Log = Constants.CONNECTION_ESTABLISHED;
                    MessageBox.Show(serversAvailability);
                }
                else
                {
                    Logger.Log = Constants.CONNECTION_NOT_ESTABLISHED;
                    MessageBox.Show(serversAvailability);
                }
            }
        }
예제 #2
0
        private async void ButtonConnectionTest_Click(object sender, EventArgs e)
        {
            string server    = textBoxIP.Text;
            int    port      = int.Parse(maskedTextBoxPort.Text);
            int    portAPI   = int.Parse(maskedTextBoxPortAPI.Text);
            string secretKey = textBoxSecretKey.Text;

            var checkResult = _cs.CheckSettings(server, port, portAPI, secretKey);

            if (checkResult != default)
            {
                Logger.Log = checkResult;
                MessageBox.Show(checkResult);
            }
            else
            {
                var webConnection = new WebConnection(_cs);

                var isApiAvailable = await webConnection.CheckConnectionAsync(portAPI);

                var isServerAvailable = await webConnection.CheckConnectionAsync(port);

                //TODO: поправить
                string serversAvailability = "";
                serversAvailability += isApiAvailable ? Constants.CONNECTION_API_SUCCESSED : Constants.CONNECTION_API_FAILED;
                serversAvailability += Environment.NewLine;
                serversAvailability += isServerAvailable ? Constants.CONNECTION_DOOR_CONTROLLER_SUCCESSED : Constants.CONNECTION_DOOR_CONTROLLER_FAILED;


                if (isServerAvailable || isApiAvailable)
                {
                    Logger.Log = Constants.CONNECTION_ESTABLISHED;
                    MessageBox.Show(serversAvailability);
                }
                else
                {
                    Logger.Log = Constants.CONNECTION_NOT_ESTABLISHED;
                    MessageBox.Show(serversAvailability);
                }
            }
        }
        public void CheckConnectionAsyncTest()
        {
            // Arrange
            IWebConnection webConnection = new WebConnection();

            // Act
            var task = webConnection.CheckConnectionAsync(1234);

            task.Wait();

            var result = task.Result;

            // Assert
            Assert.IsFalse(result);
        }