public function testScanWithServiceInfo() { $outputFile = __DIR__ . '/Fixtures/test_scan_with_service_info.xml'; $expectedCommand = sprintf("nmap -sV -oX '%s' 'williamdurand.fr'", $outputFile); $executor = $this->getProcessExecutorMock(); $executor->expects($this->at(1))->method('execute')->with($this->equalTo($expectedCommand))->will($this->returnValue(0)); $nmap = new Nmap($executor, $outputFile); $hosts = $nmap->enableServiceInfo()->scan(array('williamdurand.fr')); $host = current($hosts); $ports = $host->getPorts(); $service = $ports[0]->getService(); $this->assertEquals('ssh', $service->getName()); $this->assertEquals('OpenSSH', $service->getProduct()); $this->assertEquals('5.1p1 Debian 5github8', $service->getVersion()); $service = $ports[1]->getService(); $this->assertEquals('http', $service->getName()); $this->assertEquals('nginx', $service->getProduct()); }