@@ 236-268 (lines=33) @@ | ||
233 | with self.assertRaises(OspdError): |
|
234 | cmd.handle_xml(request) |
|
235 | ||
236 | @patch("ospd.ospd.create_process") |
|
237 | def test_scan_with_vts_and_param(self, mock_create_process): |
|
238 | daemon = DummyWrapper([]) |
|
239 | cmd = StartScan(daemon) |
|
240 | ||
241 | # No error |
|
242 | request = et.fromstring( |
|
243 | '<start_scan>' |
|
244 | '<targets>' |
|
245 | '<target>' |
|
246 | '<hosts>localhost</hosts>' |
|
247 | '<ports>80, 443</ports>' |
|
248 | '</target>' |
|
249 | '</targets>' |
|
250 | '<scanner_params />' |
|
251 | '<vt_selection>' |
|
252 | '<vt_single id="1234">' |
|
253 | '<vt_value id="ABC">200</vt_value>' |
|
254 | '</vt_single>' |
|
255 | '</vt_selection>' |
|
256 | '</start_scan>' |
|
257 | ) |
|
258 | response = et.fromstring(cmd.handle_xml(request)) |
|
259 | daemon.start_queued_scans() |
|
260 | ||
261 | scan_id = response.findtext('id') |
|
262 | ||
263 | self.assertEqual( |
|
264 | daemon.get_scan_vts(scan_id), |
|
265 | {'1234': {'ABC': '200'}, 'vt_groups': []}, |
|
266 | ) |
|
267 | daemon.start_queued_scans() |
|
268 | assert_called(mock_create_process) |
|
269 | ||
270 | def test_scan_with_vts_and_param_missing_vt_group_filter(self): |
|
271 | daemon = DummyWrapper([]) |
|
@@ 292-320 (lines=29) @@ | ||
289 | with self.assertRaises(OspdError): |
|
290 | cmd.handle_xml(request) |
|
291 | ||
292 | @patch("ospd.ospd.create_process") |
|
293 | def test_scan_with_vts_and_param_with_vt_group_filter( |
|
294 | self, mock_create_process |
|
295 | ): |
|
296 | daemon = DummyWrapper([]) |
|
297 | cmd = StartScan(daemon) |
|
298 | ||
299 | # No error |
|
300 | request = et.fromstring( |
|
301 | '<start_scan>' |
|
302 | '<targets>' |
|
303 | '<target>' |
|
304 | '<hosts>localhost</hosts>' |
|
305 | '<ports>80, 443</ports>' |
|
306 | '</target>' |
|
307 | '</targets>' |
|
308 | '<scanner_params />' |
|
309 | '<vt_selection>' |
|
310 | '<vt_group filter="a"/>' |
|
311 | '</vt_selection>' |
|
312 | '</start_scan>' |
|
313 | ) |
|
314 | response = et.fromstring(cmd.handle_xml(request)) |
|
315 | daemon.start_queued_scans() |
|
316 | scan_id = response.findtext('id') |
|
317 | ||
318 | self.assertEqual(daemon.get_scan_vts(scan_id), {'vt_groups': ['a']}) |
|
319 | ||
320 | assert_called(mock_create_process) |
|
321 | ||
322 | @patch("ospd.ospd.create_process") |
|
323 | @patch("ospd.command.command.logger") |