diff --git a/api/src/backend/conftest.py b/api/src/backend/conftest.py index 54ea2d8039..e6a083c276 100644 --- a/api/src/backend/conftest.py +++ b/api/src/backend/conftest.py @@ -58,7 +58,10 @@ from api.rls import Tenant from api.v1.serializers import TokenSerializer from prowler.lib.check.models import Severity from prowler.lib.outputs.finding import Status -from tasks.jobs.backfill import backfill_resource_scan_summaries, backfill_scan_category_summaries +from tasks.jobs.backfill import ( + backfill_resource_scan_summaries, + backfill_scan_category_summaries, +) TODAY = str(datetime.today().date()) API_JSON_CONTENT_TYPE = "application/vnd.api+json" diff --git a/api/src/backend/tasks/tasks.py b/api/src/backend/tasks/tasks.py index 73fab9ffed..1aa20e28f8 100644 --- a/api/src/backend/tasks/tasks.py +++ b/api/src/backend/tasks/tasks.py @@ -20,7 +20,10 @@ from config.django.base import DJANGO_FINDINGS_BATCH_SIZE, DJANGO_TMP_OUTPUT_DIR from prowler.lib.check.compliance_models import Compliance from prowler.lib.outputs.compliance.generic.generic import GenericCompliance from prowler.lib.outputs.finding import Finding as FindingOutput -from tasks.jobs.attack_paths import attack_paths_scan, can_provider_run_attack_paths_scan +from tasks.jobs.attack_paths import ( + attack_paths_scan, + can_provider_run_attack_paths_scan, +) from tasks.jobs.backfill import ( backfill_compliance_summaries, backfill_daily_severity_summaries, diff --git a/api/src/backend/tasks/tests/test_tasks.py b/api/src/backend/tasks/tests/test_tasks.py index bdda0f6bcb..84bf994335 100644 --- a/api/src/backend/tasks/tests/test_tasks.py +++ b/api/src/backend/tasks/tests/test_tasks.py @@ -733,19 +733,15 @@ class TestGenerateOutputs: class TestScanCompleteTasks: -<<<<<<< HEAD - @patch("tasks.tasks.perform_attack_paths_scan_task.apply_async") - @patch("tasks.tasks.create_compliance_requirements_task.apply_async") -======= @patch("tasks.tasks.aggregate_attack_surface_task.apply_async") @patch("tasks.tasks.chain") @patch("tasks.tasks.create_compliance_requirements_task.si") @patch("tasks.tasks.update_provider_compliance_scores_task.si") ->>>>>>> 1bf49747adaefcb19db66274478f6933342112c1 @patch("tasks.tasks.perform_scan_summary_task.si") @patch("tasks.tasks.generate_outputs_task.si") @patch("tasks.tasks.generate_compliance_reports_task.si") @patch("tasks.tasks.check_integrations_task.si") + @patch("tasks.tasks.perform_attack_paths_scan_task.apply_async") def test_scan_complete_tasks( self, mock_check_integrations_task, @@ -754,12 +750,9 @@ class TestScanCompleteTasks: mock_scan_summary_task, mock_update_compliance_scores_task, mock_compliance_requirements_task, -<<<<<<< HEAD - mock_attack_paths_task, -======= mock_chain, mock_attack_surface_task, ->>>>>>> 1bf49747adaefcb19db66274478f6933342112c1 + mock_attack_paths_task, ): """Test that scan complete tasks are properly orchestrated with optimized reports.""" _perform_scan_complete_tasks("tenant-id", "scan-id", "provider-id") @@ -806,6 +799,7 @@ class TestScanCompleteTasks: scan_id="scan-id", ) + # Verify Attack Paths task is called mock_attack_paths_task.assert_called_once_with( kwargs={"tenant_id": "tenant-id", "scan_id": "scan-id"} )