示例#1
0
        public void GivenCmdOutputAndNullProcess_WhenGetOpenPorts_ThenItThrowsProper()
        {
            CommandLineHelper cmdHelper     = ProcessWatchTestHelper.GivenCommandLineHelper();
            NetworkHelper     networkHelper = new NetworkHelper(cmdHelper);

            Assert.Throws <ArgumentNullException>(() => networkHelper.GetOpenTcpAndUdpPortsForProcess(null));
        }
        public void GivenRunningProcess_WhenInstantiateProcessWatch_ThenItIsRunning()
        {
            Process process = ProcessWatchTestHelper.GivenFirstRunningProcess();

            IProcessWatch subject = GivenProcessWatch(process.ProcessName, false, process);

            Assert.True(subject.IsRunning);
        }
        public void GivenRunningProcess_WhenGettingProcessInfo_ThenItReturnsProper()
        {
            Process process = ProcessWatchTestHelper.GivenFirstRunningProcess();

            IProcessWatch subject = GivenProcessWatch(process.ProcessName, false, process);

            Assert.Equal(process.ProcessName, subject.ProcessName);
        }
示例#4
0
        public void GivenCmdOutputAndNoOpenPorts_WhenGetOpenPorts_ThenItReturnsNoPorts()
        {
            Process           process       = ProcessWatchTestHelper.GivenFirstRunningProcess();
            CommandLineHelper cmdHelper     = ProcessWatchTestHelper.GivenCommandLineHelper();
            NetworkHelper     networkHelper = new NetworkHelper(cmdHelper);

            IEnumerable <int> ports = networkHelper.GetOpenTcpAndUdpPortsForProcess(process);

            Assert.False(ports.Any());
        }
示例#5
0
        public void GivenCmdOutputAndOpenTCPPorts_WhenSetOpenPorts_ThenItSetsProperPorts()
        {
            Process           process       = ProcessWatchTestHelper.GivenFirstRunningProcess();
            CommandLineHelper cmdHelper     = ProcessWatchTestHelper.GivenCommandLineHelper();
            NetworkHelper     networkHelper = new NetworkHelper(cmdHelper);

            IEnumerable <int> ports = networkHelper.GetOpenTcpAndUdpPortsForProcess(process, 888);

            Assert.Equal(2, ports.Count());
            Assert.All(ports, p => Assert.Equal(135, p));
        }
示例#6
0
        public void GivenCmdOutputAndOpenUDPPorts_WhenGetOpenPorts_ThenItReturnsProperPorts()
        {
            Process           process       = ProcessWatchTestHelper.GivenFirstRunningProcess();
            CommandLineHelper cmdHelper     = ProcessWatchTestHelper.GivenCommandLineHelper();
            NetworkHelper     networkHelper = new NetworkHelper(cmdHelper);

            IEnumerable <int> ports = networkHelper.GetOpenTcpAndUdpPortsForProcess(process, 4640);

            Assert.Equal(4, ports.Count());
            Assert.Equal(2, ports.Count(p => p == 4500));
            Assert.Equal(2, ports.Count(p => p == 500));
        }
示例#7
0
        public void GivenAddedProcessWatchWithNoCapture_WhenStartCapture_CaptureDeviceFilterDoesntChange()
        {
            Process         runningProcess = ProcessWatchTestHelper.GivenFirstRunningProcess();
            IProcessWatcher watchdog       = GivenProcessWatcher();

            watchdog.AddProcessToWatchList(runningProcess.ProcessName, false);
            watchdog.StartCapture();

            WatchJobHandler.Invoke(null, new EventArgs() as ElapsedEventArgs);

            Assert.Equal(string.Empty, CaptureDeviceFilter);
        }
示例#8
0
        public void GivenRunningProcess_WhenAddProcessWatch_ProcessIsRunning()
        {
            IProcessWatcher watchdog       = GivenProcessWatcher();
            Process         runningProcess = ProcessWatchTestHelper.GivenFirstRunningProcess();

            watchdog.AddProcessToWatchList(runningProcess.ProcessName, false);
            IEnumerable <IProcessWatch> processWatches = watchdog.GetProcessUnderWatch();
            IProcessWatch processWatch =
                processWatches.SingleOrDefault(pw => pw.ProcessName.Equals(runningProcess.ProcessName));

            Assert.True(processWatch?.IsRunning);
            Assert.Equal(2, processWatches.Count());
        }
示例#9
0
        public void GivenUpdateProcessWatchToNoCapture_WhenStartCapture_ThenItRemovesProcessPortsFromWatchList()
        {
            Process         runningProcess = ProcessWatchTestHelper.GivenFirstRunningProcess();
            IProcessWatcher watchdog       = GivenProcessWatcher();

            watchdog.AddProcessToWatchList(runningProcess.ProcessName, true);
            watchdog.UpdateProcessCaptureInWatchList(runningProcess.ProcessName, false);
            watchdog.StartCapture();

            WatchJobHandler.Invoke(null, new EventArgs() as ElapsedEventArgs);

            Assert.Equal(string.Empty, CaptureDeviceFilter);
        }
示例#10
0
        public void GivenProcessUnderWatch_WhenRemoveProcess_ThenItRemovesProperly()
        {
            Process         runningProcess = ProcessWatchTestHelper.GivenFirstRunningProcess();
            IProcessWatcher watchdog       = GivenProcessWatcher();

            watchdog.AddProcessToWatchList(runningProcess.ProcessName, false);
            IEnumerable <IProcessWatch> processWatches = watchdog.GetProcessUnderWatch();

            Assert.Equal(2, processWatches.Count());

            watchdog.RemoveProcessFromWatchList(runningProcess.ProcessName);
            processWatches = watchdog.GetProcessUnderWatch();

            Assert.Single(processWatches);
        }