public void ComponentName(
            [Greedy] PassiveScannerComponent sut)
        {
            // ACT
            var result = sut.ComponentName;

            // ASSERT
            result.Should().Be("pscan");
        }
        public void DisableAllScanners(
            [Frozen] Mock <IHttpClient> httpClientMock,
            [Greedy] PassiveScannerComponent sut)
        {
            // ARRANGE
            httpClientMock.SetupApiCall(sut, CallType.Action, "disableAllScanners")
            .ReturnsOkResult()
            .Verifiable();

            // ACT
            sut.DisableAllScanners();

            // ASSERT
            httpClientMock.Verify();
        }
        public void DisableScanners(
            [Frozen] Mock <IHttpClient> httpClientMock,
            [Greedy] PassiveScannerComponent sut,
            int[] ids)
        {
            // ARRANGE
            httpClientMock.SetupApiCall(sut, CallType.Action, "disableScanners",
                                        new Parameters
            {
                { "ids", string.Join(",", ids) }
            })
            .ReturnsOkResult()
            .Verifiable();

            // ACT
            sut.DisableScanners(ids);

            // ASSERT
            httpClientMock.Verify();
        }
        public void GetScanners(
            [Frozen] Mock <IHttpClient> httpClientMock,
            [Greedy] PassiveScannerComponent sut,
            IEnumerable <PassiveScanner> scanners)
        {
            // ARRANGE
            var json = new JObject(
                new JProperty("scanners", JArray.FromObject(scanners)));

            httpClientMock.SetupApiCall(sut, CallType.View, "scanners")
            .Returns(json.ToString())
            .Verifiable();

            // ACT
            var result = sut.GetScanners();

            // ASSERT
            result.ShouldBeEquivalentTo(scanners);
            httpClientMock.Verify();
        }
        public void GetRecordsToScan(
            [Frozen] Mock <IHttpClient> httpClientMock,
            [Greedy] PassiveScannerComponent sut,
            int recordsToScan)
        {
            // ARRANGE
            var json = new JObject(
                new JProperty("recordsToScan", recordsToScan));

            httpClientMock.SetupApiCall(sut, CallType.View, "recordsToScan")
            .Returns(json.ToString())
            .Verifiable();

            // ACT
            var result = sut.GetRecordsToScan();

            // ASSERT
            result.Should().Be(recordsToScan);
            httpClientMock.Verify();
        }
        public void SetEnabled(
            [Frozen] Mock <IHttpClient> httpClientMock,
            [Greedy] PassiveScannerComponent sut,
            bool enabled)
        {
            // ARRANGE
            httpClientMock.SetupApiCall(sut, CallType.Action, "setEnabled",
                                        new Parameters
            {
                { "enabled", enabled }
            })
            .ReturnsOkResult()
            .Verifiable();

            // ACT
            sut.SetEnabled(enabled);

            // ASSERT
            httpClientMock.Verify();
        }
        public void SetScannerAlertThreshold(
            [Frozen] Mock <IHttpClient> httpClientMock,
            [Greedy] PassiveScannerComponent sut,
            int id,
            AlertThreshold alertThreshold)
        {
            // ARRANGE
            httpClientMock.SetupApiCall(sut, CallType.Action, "setScannerAlertThreshold",
                                        new Parameters
            {
                { "id", id },
                { "alertThreshold", alertThreshold }
            })
            .ReturnsOkResult()
            .Verifiable();

            // ACT
            sut.SetScannerAlertThreshold(id, alertThreshold);

            // ASSERT
            httpClientMock.Verify();
        }