setup.py
    F 25:0 get_requirements - A (4)
tests/test_user_notification.py
    F 8:0 mock_response - A (3)
    F 49:0 test_send_notification - A (2)
tests/test_auth.py
    F 8:0 mock_response - A (3)
    F 49:0 test_init_auth_sa_token - A (3)
tests/__init__.py
    F 23:0 test_dummy - A (2)
tests/test_utils.py
    F 128:0 test_select_latest_version - B (6)
    F 35:0 test_execute_gremlin_dsl - A (5)
    F 85:0 mock_response - A (5)
    F 8:0 test_check_license_conflict - A (3)
    F 21:0 test_execute_gremlin_dsl2 - A (2)
    C 70:0 MockedSession - A (1)
    M 73:4 MockedSession.__init__ - A (1)
    M 78:4 MockedSession.post - A (1)
tests/test_entry.py
    F 112:0 test_get_version_data - A (5)
    F 218:0 test_check_license_compatibility - A (4)
    F 153:0 test_get_repos - A (3)
    F 164:0 test_find_latest_version - A (3)
    F 104:0 test_read_packages - A (2)
    F 271:0 test_generate_notification_payload - A (2)
    F 298:0 test_run - A (2)
    F 7:0 mock_repo_response - A (1)
    F 22:0 mock_repo_combo_response - A (1)
    F 46:0 mock_repo_tr_response - A (1)
    F 70:0 mock_response - A (1)
    F 86:0 mock_ver_response - 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)
f8a_notification/auth.py
    C 28:0 Authentication - A (5)
    M 31:4 Authentication.init_auth_sa_token - A (5)
f8a_notification/utils.py
    F 99:0 select_latest_version - A (5)
    F 43:0 convert_version_to_proper_semantic - A (3)
    F 86:0 find_latest_version - A (3)
    F 160:0 execute_gremlin_dsl - A (3)
    F 71:0 version_info_tuple - A (2)
    F 137:0 get_session_retry - A (2)
    F 180:0 check_license_conflict - A (2)
    F 152:0 get_response_data - A (1)
f8a_notification/entryscript.py
    F 289:0 find_latest_version - C (19)
    F 173:0 get_repos - C (16)
    F 106:0 get_version_data - C (11)
    F 356:0 check_license_compatibility - B (6)
    F 390:0 generate_notification_payload - A (5)
    F 74:0 read_packages - A (4)
    F 47:0 get_value - A (1)
    F 52:0 run - A (1)
f8a_notification/github_utils.py
    M 129:4 MavenUpdates.find_and_modify_maven_file - C (15)
    C 116:0 MavenUpdates - B (6)
    F 226:0 start_gh_operation - A (3)
    F 246:0 fetch_dependency_files - A (2)
    M 49:4 GithubHelperFunctions.check_collaborator - A (2)
    C 42:0 GithubHelperFunctions - A (1)
    M 45:4 GithubHelperFunctions.__init__ - A (1)
    M 62:4 GithubHelperFunctions.get_gh_token - A (1)
    M 66:4 GithubHelperFunctions.get_gh_user - A (1)
    M 70:4 GithubHelperFunctions.get_gh_project - A (1)
    M 75:4 GithubHelperFunctions.create_pull_request - A (1)
    M 96:4 GithubHelperFunctions.clone_repo - A (1)
    M 108:4 GithubHelperFunctions.commit_changed_files - A (1)
    M 119:4 MavenUpdates.__init__ - A (1)
    M 124:4 MavenUpdates.fetch_maven_dep_files - A (1)
f8a_notification/user_notification.py
    C 27:0 UserNotification - A (3)
    M 30:4 UserNotification.send_notification - A (3)

65 blocks (classes, functions, methods) analyzed.
Average complexity: A (3.292307692307692)