#pragma warning disable IDE0060 // Remove unused parameter
        public static async Task SetupClass(TestContext context)
#pragma warning restore IDE0060 // Remove unused parameter
        {
            mockResult = new Mock <IResult>();
            testList   = new List <IIonValue>()
            {
                valueFactory.NewInt(0),
                valueFactory.NewInt(1),
                valueFactory.NewInt(2)
            };
            mockResult.Setup(x => x.GetAsyncEnumerator(It.IsAny <CancellationToken>())).Returns(new ValuesEnumerator(testList));

            result = await BufferedResult.BufferResult(mockResult.Object);
        }
#pragma warning disable IDE0060 // Remove unused parameter
        public static void SetupClass(TestContext context)
#pragma warning restore IDE0060 // Remove unused parameter
        {
            mockResult = new Mock <IResult>();
            testList   = new List <IIonValue>()
            {
                valueFactory.NewInt(0),
                valueFactory.NewInt(1),
                valueFactory.NewInt(2)
            };
            mockResult.Setup(x => x.GetEnumerator()).Returns(testList.GetEnumerator());

            result = BufferedResult.BufferResult(mockResult.Object);
        }
Ejemplo n.º 3
0
#pragma warning disable IDE0060 // Remove unused parameter
        public static void SetupClass(TestContext context)
#pragma warning restore IDE0060 // Remove unused parameter
        {
            mockResult = new Mock <IResult>();
            testList   = new List <IIonValue>()
            {
                valueFactory.NewInt(0),
                valueFactory.NewInt(1),
                valueFactory.NewInt(2)
            };
            testIO     = new IOUsage(1, 2);
            testTiming = new TimingInformation(100);
            mockResult.Setup(x => x.GetEnumerator()).Returns(testList.GetEnumerator());
            mockResult.Setup(x => x.GetConsumedIOs()).Returns(testIO);
            mockResult.Setup(x => x.GetTimingInformation()).Returns(testTiming);

            result = BufferedResult.BufferResult(mockResult.Object);
        }
        /*Start*/
        private async void button_Start_Click(object sender, EventArgs e)
        {
            if (!IsRunning)
            {
                #region Перевірка правильності введення ip адрес

                button_Pause.Tag  = false;
                button_Pause.Text = "Pause";

                //https://toster.ru/q/140605
                if (String.IsNullOrWhiteSpace(comboBox_IPFirst.Text))
                {
                    MessageBox.Show("Помилка у початковій адресі", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }

                if (String.IsNullOrWhiteSpace(comboBox_IPLast.Text))
                {
                    MessageBox.Show("Помилка у кінцевій адресі", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }

                try
                {
                    _firstIpAddress = IPTools.IPAddress2UInt32(comboBox_IPFirst.Text);
                }
                catch (FormatException ex)
                {
                    _logger.Error(ex);
                    MessageBox.Show("Помилка у початковій адресі", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }

                try
                {
                    _lastIpAddress = IPTools.IPAddress2UInt32(comboBox_IPLast.Text);
                }
                catch (FormatException ex)
                {
                    _logger.Error(ex);
                    MessageBox.Show("Помилка у кінцевій адресі", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }


                if (!int.TryParse(textBox_Timeout.Text, out _timeOut))
                {
                    _logger.Error("Timeout string [{0}] is incorrect", textBox_Timeout.Text);
                }
                _logger.Info(string.Format("Timeout = {0} ms", _timeOut));

                #endregion

                #region Ініціалізація інтерфейса
                _ipListCount = (_lastIpAddress - _firstIpAddress) + 1;

                _bmpTasksResult = new Bitmap(BMP_WIDTH, BMP_HEIGHT);

                try
                {
                    SetProgressMaxValue(100);
                    SetProgress(new ProgressData());
                }
                catch (Exception ex)
                {
                    _logger.Error(ex);
                    return;
                }

                if (_ipListCount == 0)
                {
                    MessageBox.Show("Помилка у кінцевій адресі", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }

                StartButtonEnable(false);
                StopButtonEnable(true);
                button_Stop.Focus();



                _bufferedResult = new BufferedResult <IPInfo>();
                _fill.GridFill(SG_Result, null as ListIPInfo, null, _gridHeaders);
                _oldLines         = new ListIPInfo();
                pictureBox1.Image = new Bitmap(pictureBox1.ClientSize.Width, pictureBox1.ClientSize.Height);


                if (!(int.TryParse(textBox_ThreadCount.Text, out _tasksCount)))
                {
                    _logger.Error("TasksCount string [{0}] is incorrect", textBox_ThreadCount.Text);
                }
                #endregion

                _logger.Info(string.Concat("Start searching from [", comboBox_IPFirst.Text, "] to [", comboBox_IPLast.Text, "]"));

                _mySearchTasksCancel = new CancellationTokenSource();
                await Task.Factory.StartNew(Start, _mySearchTasksCancel.Token, TaskCreationOptions.LongRunning, TaskScheduler.Current);

                if (_tasksChecking != null)
                {
                    _tasksChecking.IsStarting = false;
                }
            }
        }