setup.py F 25:0 get_requirements - A (4) f8a_report/s3_helper.py M 16:4 S3Helper.__init__ - C (12) M 55:4 S3Helper.s3_client - B (6) M 109:4 S3Helper.list_objects - B (6) C 13:0 S3Helper - A (5) M 93:4 S3Helper.read_json_object - A (4) M 129:4 S3Helper.store_file_object - A (3) M 83:4 S3Helper.store_json_content - A (2) f8a_report/unknown_deps_report_helper.py M 18:4 UnknownDepsReportHelper.get_unknown_list - A (5) C 11:0 UnknownDepsReportHelper - A (2) M 51:4 UnknownDepsReportHelper.get_current_ingestion_status - A (2) M 14:4 UnknownDepsReportHelper.__init__ - A (1) M 37:4 UnknownDepsReportHelper.get_past_unknown_deps - A (1) f8a_report/sentry_report_helper.py M 92:4 SentryReportHelper.retrieve_events - C (14) M 49:4 SentryReportHelper.normalize_sentry_data - B (7) C 12:0 SentryReportHelper - B (6) M 27:4 SentryReportHelper.retrieve_sentry_logs - A (4) M 15:4 SentryReportHelper.__init__ - A (1) f8a_report/graph_report_generator.py F 58:0 generate_report_for_cves - B (10) F 253:0 batch_query_executor - B (9) F 159:0 generate_report_for_latest_version - B (6) F 127:0 find_ingested_epv - A (5) F 29:0 rectify_latest_version - A (4) F 95:0 generate_report_for_unknown_epvs - A (4) F 210:0 execute_gremlin_dsl - A (3) F 227:0 get_session_retry - A (2) F 246:0 get_value - A (2) F 238:0 get_response_data - A (1) f8a_report/manifest_helper.py M 65:4 FilterStacks.filter_stacks_on_ecosystem - B (8) C 62:0 FilterStacks - A (4) M 101:4 FilterStacks.clean_stacks - A (4) M 44:4 GetReport.generate_manifest_for_maven - A (3) C 15:0 GetReport - A (2) M 18:4 GetReport.__init__ - A (2) M 26:4 GetReport.generate_manifest_for_pypi - A (2) M 35:4 GetReport.generate_manifest_for_npm - A (2) F 112:0 manifest_interface - A (1) M 54:4 GetReport.save_manifest_to_s3 - A (1) M 95:4 FilterStacks.filter_stacks_on_size - A (1) f8a_report/main.py F 20:0 main - A (4) F 14:0 time_to_generate_monthly_report - A (1) f8a_report/report_helper.py M 605:4 ReportHelper.generate_results - C (16) M 392:4 ReportHelper.normalize_worker_data - C (15) M 288:4 ReportHelper.store_training_data - B (8) M 804:4 ReportHelper.get_report - B (7) M 205:4 ReportHelper.collate_raw_data - B (6) M 169:4 ReportHelper.populate_key_count - A (5) M 265:4 ReportHelper.get_training_data_for_ecosystem - A (5) M 724:4 ReportHelper.populate_default_information - A (5) M 105:4 ReportHelper.retrieve_stack_analyses_ids - A (4) M 701:4 ReportHelper.check_latest_node - A (4) C 41:0 ReportHelper - A (3) M 187:4 ReportHelper.set_unique_stack_deps_count - A (3) M 237:4 ReportHelper.invoke_emr_api - A (3) M 558:4 ReportHelper.retrieve_worker_results - A (3) M 755:4 ReportHelper.normalize_ingestion_data - A (3) M 68:4 ReportHelper.cleanup_db_tables - A (2) M 97:4 ReportHelper.validate_and_process_date - A (2) M 138:4 ReportHelper.retrieve_stack_analyses_content - A (2) M 197:4 ReportHelper.normalize_deps_list - A (2) M 357:4 ReportHelper.save_result - A (2) M 368:4 ReportHelper.get_report_name - A (2) M 844:4 ReportHelper.re_train - A (2) C 27:0 Postgres - A (1) M 30:4 Postgres.__init__ - A (1) M 44:4 ReportHelper.__init__ - A (1) M 133:4 ReportHelper.get_time_delta - A (1) M 159:4 ReportHelper.flatten_list - A (1) M 163:4 ReportHelper.datediff_in_millisecs - A (1) M 330:4 ReportHelper.get_trending - A (1) M 334:4 ReportHelper.get_ecosystem_summary - A (1) M 375:4 ReportHelper.collate_and_retrain - A (1) M 382:4 ReportHelper.create_venus_report - A (1) M 587:4 ReportHelper.retrieve_ingestion_results - A (1) f8a_report/cve_helper.py M 50:4 CVE.validate_cveids_in_graph - B (7) M 25:4 CVE.get_cveids_from_cvedb_prs - A (5) M 93:4 CVE.call_github_api - A (5) M 114:4 CVE.get_open_cves_count - A (5) C 13:0 CVE - A (4) M 135:4 CVE.generate_cve_report - A (3) M 82:4 CVE.get_fp_cves_count - A (2) M 16:4 CVE.__init__ - A (1) tests/test_stack_report_helper.py F 158:0 test_retrieve_stack_analyses_ids_wrong_dates - C (13) F 204:0 test_flatten_list_already_flat_list - B (7) F 117:0 test_validate_and_process_date_no_real_dates - A (5) F 128:0 test_validate_and_process_date_failure - A (5) F 367:0 test_normalize_worker_data - A (5) F 197:0 test_flatten_list - A (4) F 108:0 test_validate_and_process_date_success - A (3) F 191:0 test_flatten_list_empty_input - A (3) F 225:0 test_datediff_in_millisecs - A (3) F 243:0 test_datediff_in_millisecs_one_sec_change - A (3) F 250:0 test_datediff_in_millisecs_one_day_change - A (3) F 269:0 test_normalize_deps_list_sorted - A (3) F 286:0 test_populate_key_count_failure - A (3) F 151:0 test_retrieve_stack_analyses_ids - A (2) F 219:0 test_datediff_in_millisecs_same_dates - A (2) F 236:0 test_datediff_in_millisecs_no_negative_result - A (2) F 257:0 test_normalize_deps_list - A (2) F 263:0 test_normalize_deps_list_empty_input - A (2) F 280:0 test_populate_key_count_success - A (2) F 293:0 test_store_training_data - A (2) F 301:0 test_get_training_data_for_eco - A (2) F 308:0 test_collate_raw_data - A (2) F 351:0 test_invoke_emr_api_success - A (2) F 359:0 test_invoke_emr_api_failure - A (2) F 387:0 test_normalize_worker_data_no_stack_aggregator - A (2) F 399:0 test_get_report - A (2) F 414:0 test_get_report_negative_results - A (2) F 427:0 test_retrieve_worker_results - A (2) F 433:0 test_normalize_ingestion_data - A (2) F 442:0 test_get_trending - A (2) F 450:0 test_re_train - A (2) F 459:0 test_create_venus_report - A (2) F 466:0 test_collate_and_retrain - A (2) F 317:0 mock_emr_api - A (1) F 334:0 mock_emr_api_fail - A (1) C 139:0 MockPostgres - A (1) M 142:4 MockPostgres.execute - A (1) M 146:4 MockPostgres.fetchall - A (1) tests/test_sentry_report_helper.py F 95:0 test_retrieve_sentry_logs_success - A (2) F 117:0 test_retrieve_sentry_logs_failure - A (2) F 123:0 test_retrieve_sentry_logs_nostacktrace - A (2) tests/test_main.py F 62:0 test_environment - A (5) F 43:0 test_time_to_generate_monthly_report - A (3) F 52:0 test_main - A (2) C 11:0 TodayMockClass - A (1) M 14:4 TodayMockClass.__init__ - A (1) C 19:0 MockReportHelper - A (1) M 22:4 MockReportHelper.get_report - A (1) M 27:4 MockReportHelper.re_train - A (1) M 32:4 MockReportHelper.cleanup_db_tables - A (1) M 37:4 MockReportHelper.retrieve_stack_analyses_content - A (1) tests/test_manifest_helper.py F 19:0 test_manifests_helper - A (2) F 24:0 test_generate_manifest_for_pypi - A (2) F 32:0 test_generate_manifest_for_npm - A (2) F 40:0 test_generate_manifest_for_maven - A (2) F 48:0 test_save_manifest_to_s3 - A (2) F 60:0 test_clean_stacks - A (2) F 68:0 test_filter_stack_on_size - A (2) F 75:0 test_manifests_interface - A (2) F 82:0 test_filter_stacks_on_ecosystem - A (2) tests/test_cve_helper.py F 88:0 test_validate_cveids_in_graph - B (8) F 75:0 test_get_cveids_from_cvedb_prs - A (5) F 111:0 test_get_fp_cves_count - A (4) F 124:0 test_call_github_api - A (3) F 35:0 mock_graph_post_error - A (2) F 55:0 mock_graph_post - A (2) F 138:0 test_get_open_cves_count - A (2) F 147:0 test_generate_cve_report - A (2) F 17:0 mock_github_get - A (1) tests/test_s3_helper.py F 34:0 test_read_json_object - A (3) F 47:0 test_list_objects - A (3) F 13:0 test_s3_helper - A (2) F 18:0 test_s3_client - A (2) F 60:0 test_store_file_object - A (2) F 25:0 test_store_json_content - A (1) tests/test_unknown_deps_report_helper.py F 36:0 test_get_current_ingestion_status - A (5) F 31:0 test_get_unknown_list - A (2) tests/test_graph_report_generator.py F 152:0 test_generate_report_for_latest_version - B (7) F 217:0 test_find_ingested_epv - A (5) F 177:0 test_generate_report_for_cves - A (4) F 133:0 test_generate_report_for_unknown_epvs - A (3) F 201:0 test_execute_gremlin_dsl - A (2) F 237:0 test_rectify_latest_version - A (2) F 251:0 test_rectify_latest_version2 - A (2) F 10:0 mock_post_with_payload_check - A (1) F 28:0 mock_response - A (1) F 45:0 mock_response1 - A (1) F 74:0 mock_response2 - A (1) F 116:0 mock_response3 - A (1) tools/check_python_version.py F 19:0 get_expected_version - A (4) F 48:0 compare_versions - A (2) F 59:0 main - A (2) F 43:0 get_actual_version - A (1) 175 blocks (classes, functions, methods) analyzed. Average complexity: A (3.125714285714286)