| config.py |
map_legacy_config |
|
3 |
1 |
0 |
|
67% |
| config.py |
(no function) |
|
80 |
1 |
12 |
|
99% |
| config_local.py |
(no function) |
|
5 |
0 |
0 |
|
100% |
| config_local_test.py |
(no function) |
|
1 |
1 |
0 |
|
0% |
| ivatar / __init__.py |
(no function) |
|
1 |
0 |
0 |
|
100% |
| ivatar / context_processors.py |
basepage |
|
18 |
0 |
1 |
|
100% |
| ivatar / context_processors.py |
(no function) |
|
3 |
0 |
0 |
|
100% |
| ivatar / file_security.py |
FileValidator.__init__ |
|
4 |
0 |
0 |
|
100% |
| ivatar / file_security.py |
FileValidator.validate_basic |
|
12 |
2 |
0 |
|
83% |
| ivatar / file_security.py |
FileValidator.validate_magic_bytes |
|
13 |
0 |
0 |
|
100% |
| ivatar / file_security.py |
FileValidator.validate_mime_type |
|
11 |
3 |
0 |
|
73% |
| ivatar / file_security.py |
FileValidator.validate_pil_image |
|
14 |
3 |
0 |
|
79% |
| ivatar / file_security.py |
FileValidator.sanitize_exif_data |
|
13 |
2 |
0 |
|
85% |
| ivatar / file_security.py |
FileValidator.scan_for_malicious_content |
|
10 |
0 |
0 |
|
100% |
| ivatar / file_security.py |
FileValidator.comprehensive_validation |
|
39 |
4 |
0 |
|
90% |
| ivatar / file_security.py |
validate_uploaded_file |
|
6 |
0 |
0 |
|
100% |
| ivatar / file_security.py |
get_file_security_report |
|
2 |
0 |
0 |
|
100% |
| ivatar / file_security.py |
(no function) |
|
27 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / __init__.py |
(no function) |
|
1 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / admin.py |
(no function) |
|
13 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / auth.py |
add_confirmed_email |
|
13 |
2 |
0 |
|
85% |
| ivatar / ivataraccount / auth.py |
associate_by_confirmed_email |
|
12 |
1 |
0 |
|
92% |
| ivatar / ivataraccount / auth.py |
(no function) |
|
11 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / forms.py |
AddEmailForm.clean_email |
|
1 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / forms.py |
AddEmailForm.save |
|
22 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / forms.py |
UploadPhotoForm.clean_photo |
|
36 |
11 |
0 |
|
69% |
| ivatar / ivataraccount / forms.py |
UploadPhotoForm.save |
|
14 |
5 |
0 |
|
64% |
| ivatar / ivataraccount / forms.py |
AddOpenIDForm.clean_openid |
|
2 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / forms.py |
AddOpenIDForm.save |
|
11 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / forms.py |
(no function) |
|
40 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / gravatar.py |
get_photo |
|
12 |
1 |
6 |
|
92% |
| ivatar / ivataraccount / gravatar.py |
(no function) |
|
6 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / migrations / 0001_initial.py |
(no function) |
|
7 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / migrations / 0002_openidassociation_openidnonce.py |
(no function) |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / migrations / 0003_auto_20180508_0637.py |
(no function) |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / migrations / 0004_auto_20180508_0742.py |
(no function) |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / migrations / 0005_auto_20180522_1155.py |
(no function) |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / migrations / 0006_auto_20180626_1445.py |
(no function) |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / migrations / 0007_auto_20180627_0624.py |
add_sha256 |
|
2 |
0 |
1 |
|
100% |
| ivatar / ivataraccount / migrations / 0007_auto_20180627_0624.py |
(no function) |
|
6 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / migrations / 0008_userpreference.py |
add_preference_to_user |
|
3 |
0 |
2 |
|
100% |
| ivatar / ivataraccount / migrations / 0008_userpreference.py |
(no function) |
|
7 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / migrations / 0009_auto_20180705_1152.py |
(no function) |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / migrations / 0010_auto_20180705_1201.py |
(no function) |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / migrations / 0011_auto_20181107_1550.py |
(no function) |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / migrations / 0012_auto_20181107_1732.py |
(no function) |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / migrations / 0013_auto_20181203_1421.py |
(no function) |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / migrations / 0014_auto_20190218_1602.py |
(no function) |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / migrations / 0015_auto_20200225_0934.py |
(no function) |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / migrations / 0016_auto_20210413_0904.py |
(no function) |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / migrations / 0017_auto_20210528_1314.py |
(no function) |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / migrations / 0018_alter_photo_format.py |
(no function) |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / migrations / 0019_confirmedemail_bluesky_handle.py |
(no function) |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / migrations / 0020_confirmedopenid_bluesky_handle.py |
(no function) |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / migrations / 0021_add_performance_indexes.py |
create_indexes |
|
26 |
11 |
0 |
|
58% |
| ivatar / ivataraccount / migrations / 0021_add_performance_indexes.py |
drop_indexes |
|
8 |
8 |
0 |
|
0% |
| ivatar / ivataraccount / migrations / 0021_add_performance_indexes.py |
(no function) |
|
7 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / migrations / __init__.py |
(no function) |
|
0 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / models.py |
file_format |
|
9 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / models.py |
pil_format |
|
10 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / models.py |
UserPreference.__str__ |
|
1 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / models.py |
Photo.import_image |
|
24 |
8 |
4 |
|
67% |
| ivatar / ivataraccount / models.py |
Photo.save |
|
10 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / models.py |
Photo.perform_crop |
|
36 |
14 |
0 |
|
61% |
| ivatar / ivataraccount / models.py |
Photo.__str__ |
|
1 |
1 |
0 |
|
0% |
| ivatar / ivataraccount / models.py |
ConfirmedEmailManager.create_confirmed_email |
|
10 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / models.py |
ConfirmedEmail.set_photo |
|
2 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / models.py |
ConfirmedEmail.set_bluesky_handle |
|
7 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / models.py |
ConfirmedEmail.save |
|
18 |
6 |
0 |
|
67% |
| ivatar / ivataraccount / models.py |
ConfirmedEmail.__str__ |
|
1 |
1 |
0 |
|
0% |
| ivatar / ivataraccount / models.py |
UnconfirmedEmail.save |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / models.py |
UnconfirmedEmail.send_confirmation_mail |
|
11 |
2 |
0 |
|
82% |
| ivatar / ivataraccount / models.py |
UnconfirmedEmail.__str__ |
|
1 |
1 |
0 |
|
0% |
| ivatar / ivataraccount / models.py |
UnconfirmedOpenId.__str__ |
|
1 |
1 |
0 |
|
0% |
| ivatar / ivataraccount / models.py |
ConfirmedOpenId.set_photo |
|
2 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / models.py |
ConfirmedOpenId.set_bluesky_handle |
|
7 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / models.py |
ConfirmedOpenId.save |
|
24 |
6 |
3 |
|
75% |
| ivatar / ivataraccount / models.py |
ConfirmedOpenId.__str__ |
|
1 |
1 |
0 |
|
0% |
| ivatar / ivataraccount / models.py |
OpenIDNonce.__str__ |
|
1 |
1 |
0 |
|
0% |
| ivatar / ivataraccount / models.py |
OpenIDAssociation.__str__ |
|
1 |
1 |
0 |
|
0% |
| ivatar / ivataraccount / models.py |
DjangoOpenIDStore.storeAssociation |
|
0 |
0 |
12 |
|
100% |
| ivatar / ivataraccount / models.py |
DjangoOpenIDStore.getAssociation |
|
0 |
0 |
37 |
|
100% |
| ivatar / ivataraccount / models.py |
DjangoOpenIDStore.removeAssociation |
|
0 |
0 |
12 |
|
100% |
| ivatar / ivataraccount / models.py |
DjangoOpenIDStore.useNonce |
|
0 |
0 |
19 |
|
100% |
| ivatar / ivataraccount / models.py |
DjangoOpenIDStore.cleanupNonces |
|
0 |
0 |
6 |
|
100% |
| ivatar / ivataraccount / models.py |
DjangoOpenIDStore.cleanupAssociations |
|
0 |
0 |
6 |
|
100% |
| ivatar / ivataraccount / models.py |
(no function) |
|
124 |
0 |
11 |
|
100% |
| ivatar / ivataraccount / test_auth.py |
AuthFedoraTestCase._authenticate |
|
3 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_auth.py |
AuthFedoraTestCase.test_new_user |
|
3 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_auth.py |
AuthFedoraTestCase.test_new_user_untrusted_backend |
|
2 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_auth.py |
AuthFedoraTestCase.test_existing_user |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_auth.py |
AuthFedoraTestCase.test_existing_user_with_confirmed_email |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_auth.py |
AuthFedoraTestCase.test_existing_confirmed_email |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_auth.py |
(no function) |
|
15 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.login |
|
1 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.setUp |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_new_user |
|
7 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_new_user_twice |
|
7 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_set_password |
|
11 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_add_email |
|
8 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_confirm_email |
|
10 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_confirm_email_w_invalid_auth_key |
|
7 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_confirm_email_w_non_existing_auth_key |
|
7 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_remove_confirmed_email |
|
11 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_remove_not_existing_confirmed_email |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_remove_unconfirmed_email |
|
7 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_gravatar_photo_import |
|
12 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_raw_image |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_delete_photo |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_delete_non_existing_photo |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_too_many_unconfirmed_email |
|
6 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_add_mail_address_twice |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_add_already_confirmed_email_self |
|
3 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_add_already_confirmed_email_other |
|
7 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_remove_unconfirmed_non_existing_email |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_upload_image |
|
12 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_upload_too_many_images |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_upload_too_big_image |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_upload_invalid_image |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_upload_invalid_image_format |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_upload_gif_image |
|
1 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_upload_jpg_image |
|
1 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_upload_webp_image |
|
1 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester._extracted_from_test_upload_webp_image_5 |
|
12 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_upload_unsupported_tif_image |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_automatic_photo_assign_to_confirmed_mail |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_assign_photo_to_email |
|
8 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_no_photo_to_email |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_assign_photo_to_email_wo_photo_for_testing_template |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_assign_invalid_photo_id_to_email |
|
7 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_post_to_assign_photo_without_photo_id |
|
7 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_assign_photo_to_non_existing_mail |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_import_photo_with_non_existing_email |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_import_nothing |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester._manual_confirm |
|
7 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_add_openid |
|
7 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_add_openid_twice |
|
17 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester._check_form_validity |
|
6 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_assign_photo_to_openid |
|
8 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_assign_photo_to_openid_wo_photo_for_testing_template |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_assign_invalid_photo_id_to_openid |
|
6 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_post_to_assign_photo_openid_without_photo_id |
|
7 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_assign_photo_to_openid_non_existing_openid |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_remove_confirmed_openid |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_remove_not_existing_confirmed_openid |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_remove_unconfirmed_openid |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_remove_unconfirmed_non_existing_openid |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_openid_redirect_view |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_set_photo_on_openid |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_avatar_url_mail |
|
9 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_avatar_url_openid |
|
7 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_avatar_url_non_existing_mail_digest |
|
8 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_avatar_url_non_existing_mail_digest_gravatarproxy_disabled |
|
7 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_avatar_url_non_existing_mail_digest_w_default_mm |
|
3 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_avatar_url_non_existing_mail_digest_w_default_mm_gravatarproxy_disabled |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_avatar_url_non_existing_mail_digest_wo_default |
|
9 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_avatar_url_non_existing_mail_digest_wo_default_gravatarproxy_disabled |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_avatar_url_default |
|
6 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_avatar_url_default_gravatarproxy_disabled |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_avatar_url_default_external |
|
6 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_avatar_url_default_external_trusted |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_avatar_url_default_external_gravatarproxy_disabled |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_crop_photo |
|
8 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_password_change_view |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_password_change_view_post_wrong_old_pw |
|
3 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_password_change_view_post_wrong_new_password1 |
|
3 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_password_change_view_post_wrong_new_password2 |
|
3 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_password_change_view_post_common_password |
|
3 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_profile_must_list_first_and_lastname |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_password_reset_page |
|
2 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_password_reset_wo_mail |
|
6 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_password_reset_w_mail |
|
8 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_password_reset_w_confirmed_mail |
|
10 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_password_reset_w_confirmed_mail_no_password |
|
15 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_export |
|
24 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_upload_export |
|
10 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester._uploading_export_check |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_preferences_page |
|
2 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_delete_user |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
Tester.test_confirm_already_confirmed |
|
8 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
OpenIDErrorHandlingTestCase.setUp |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
OpenIDErrorHandlingTestCase.login |
|
1 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
OpenIDErrorHandlingTestCase.test_openid_discovery_failure_renders_error_template |
|
17 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
OpenIDErrorHandlingTestCase.test_openid_confirmation_failure_renders_error_template |
|
17 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
OpenIDErrorHandlingTestCase.test_openid_cancellation_renders_error_template |
|
16 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
OpenIDErrorHandlingTestCase.test_openid_unknown_error_renders_error_template |
|
15 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
OpenIDErrorHandlingTestCase.test_openid_nonexistent_id_error |
|
6 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
OpenIDErrorHandlingTestCase.test_django_openid_auth_failure_template_coverage |
|
3 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
OpenIDErrorHandlingTestCase.test_error_template_direct_rendering |
|
19 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
OpenIDErrorHandlingTestCase.test_openid_failure_template_inheritance |
|
13 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views.py |
(no function) |
|
135 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views_bluesky.py |
Tester.login |
|
1 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views_bluesky.py |
Tester.setUp |
|
3 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views_bluesky.py |
Tester.tearDown |
|
1 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views_bluesky.py |
Tester.create_confirmed_openid |
|
1 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views_bluesky.py |
Tester.create_confirmed_email |
|
1 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views_bluesky.py |
Tester.test_bluesky_handle_for_mail_via_model_handle_does_not_exist |
|
6 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views_bluesky.py |
Tester.test_bluesky_handle_for_mail_via_model_handle_exists |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views_bluesky.py |
Tester.test_bluesky_handle_for_openid_via_model_handle_does_not_exist |
|
6 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views_bluesky.py |
Tester.test_bluesky_handle_for_openid_via_model_handle_exists |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views_bluesky.py |
Tester.test_bluesky_fetch_mail |
|
8 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views_bluesky.py |
Tester.test_bluesky_fetch_openid |
|
8 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views_bluesky.py |
Tester.test_assign_bluesky_handle_to_openid |
|
3 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views_bluesky.py |
Tester.test_assign_bluesky_handle_to_email |
|
3 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views_bluesky.py |
Tester._assign_handle_to |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views_bluesky.py |
Tester.test_assign_photo_to_mail_removes_bluesky_handle |
|
3 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views_bluesky.py |
Tester.test_assign_photo_to_openid_removes_bluesky_handle |
|
3 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views_bluesky.py |
Tester._assign_bluesky_handle |
|
7 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / test_views_bluesky.py |
(no function) |
|
51 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / urls.py |
(no function) |
|
20 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
openid_logging |
|
0 |
0 |
2 |
|
100% |
| ivatar / ivataraccount / views.py |
CreateView.form_valid |
|
9 |
0 |
1 |
|
100% |
| ivatar / ivataraccount / views.py |
CreateView._extracted_from_form_valid_ |
|
8 |
7 |
0 |
|
12% |
| ivatar / ivataraccount / views.py |
CreateView.get |
|
3 |
1 |
0 |
|
67% |
| ivatar / ivataraccount / views.py |
PasswordSetView.get_form_kwargs |
|
3 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
PasswordSetView.form_valid |
|
3 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
AddEmailView.form_valid |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
RemoveUnconfirmedEmailView.post |
|
7 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
ConfirmEmailView.get |
|
20 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
RemoveConfirmedEmailView.post |
|
7 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
AssignPhotoEmailView.post |
|
26 |
2 |
0 |
|
92% |
| ivatar / ivataraccount / views.py |
AssignPhotoEmailView.get_context_data |
|
3 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
AssignPhotoOpenIDView.post |
|
21 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
AssignPhotoOpenIDView.get_context_data |
|
3 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
AssignBlueskyHandleToEmailView.post |
|
24 |
11 |
0 |
|
54% |
| ivatar / ivataraccount / views.py |
AssignBlueskyHandleToEmailView.get_context_data |
|
3 |
3 |
0 |
|
0% |
| ivatar / ivataraccount / views.py |
AssignBlueskyHandleToOpenIdView.post |
|
24 |
11 |
0 |
|
54% |
| ivatar / ivataraccount / views.py |
AssignBlueskyHandleToOpenIdView.get_context_data |
|
3 |
3 |
0 |
|
0% |
| ivatar / ivataraccount / views.py |
ImportPhotoView.get_context_data |
|
19 |
19 |
0 |
|
0% |
| ivatar / ivataraccount / views.py |
ImportPhotoView.post |
|
26 |
6 |
2 |
|
77% |
| ivatar / ivataraccount / views.py |
RawImageView.get |
|
4 |
1 |
0 |
|
75% |
| ivatar / ivataraccount / views.py |
DeletePhotoView.get |
|
8 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
UploadPhotoView.post |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
UploadPhotoView.form_valid |
|
16 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
AddOpenIDView.form_valid |
|
3 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
RemoveUnconfirmedOpenIDView.post |
|
5 |
0 |
2 |
|
100% |
| ivatar / ivataraccount / views.py |
RemoveConfirmedOpenIDView.post |
|
12 |
1 |
0 |
|
92% |
| ivatar / ivataraccount / views.py |
RedirectOpenIDView.get |
|
11 |
0 |
13 |
|
100% |
| ivatar / ivataraccount / views.py |
ConfirmOpenIDView.do_request |
|
0 |
0 |
53 |
|
100% |
| ivatar / ivataraccount / views.py |
ConfirmOpenIDView.get |
|
0 |
0 |
4 |
|
100% |
| ivatar / ivataraccount / views.py |
ConfirmOpenIDView.post |
|
0 |
0 |
4 |
|
100% |
| ivatar / ivataraccount / views.py |
CropPhotoView.get |
|
4 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
CropPhotoView.post |
|
10 |
4 |
0 |
|
60% |
| ivatar / ivataraccount / views.py |
UserPreferenceView.post |
|
29 |
29 |
0 |
|
0% |
| ivatar / ivataraccount / views.py |
UserPreferenceView.get |
|
1 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
UserPreferenceView.get_object |
|
2 |
2 |
0 |
|
0% |
| ivatar / ivataraccount / views.py |
UploadLibravatarExportView.post |
|
35 |
33 |
0 |
|
6% |
| ivatar / ivataraccount / views.py |
UploadLibravatarExportView.form_valid |
|
7 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
ResendConfirmationMailView.get |
|
8 |
8 |
2 |
|
0% |
| ivatar / ivataraccount / views.py |
IvatarLoginView.get |
|
7 |
4 |
0 |
|
43% |
| ivatar / ivataraccount / views.py |
IvatarLoginView.post |
|
1 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
IvatarLoginView.get_context_data |
|
3 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
ProfileView.get |
|
8 |
5 |
0 |
|
38% |
| ivatar / ivataraccount / views.py |
ProfileView.get_context_data |
|
6 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
ProfileView._confirm_claimed_openid |
|
12 |
10 |
0 |
|
17% |
| ivatar / ivataraccount / views.py |
PasswordResetView.post |
|
15 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
DeleteAccountView.get |
|
1 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
DeleteAccountView.post |
|
9 |
4 |
0 |
|
56% |
| ivatar / ivataraccount / views.py |
ExportView.get |
|
1 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
ExportView.post |
|
27 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
ExportView.post.xml_header |
|
1 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
ExportView.post.xml_footer |
|
1 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
ExportView.post.xml_account |
|
3 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
ExportView.post.xml_email |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
ExportView.post.xml_openid |
|
5 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
ExportView.post.xml_photos |
|
7 |
0 |
0 |
|
100% |
| ivatar / ivataraccount / views.py |
(no function) |
|
199 |
0 |
14 |
|
100% |
| ivatar / middleware.py |
CustomLocaleMiddleware.process_response |
|
12 |
0 |
0 |
|
100% |
| ivatar / middleware.py |
MultipleProxyMiddleware.process_request |
|
2 |
1 |
0 |
|
50% |
| ivatar / middleware.py |
(no function) |
|
6 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_config.py |
OpenTelemetryConfig.__init__ |
|
5 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_config.py |
OpenTelemetryConfig._is_export_enabled |
|
1 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_config.py |
OpenTelemetryConfig._get_service_name |
|
1 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_config.py |
OpenTelemetryConfig._get_environment |
|
1 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_config.py |
OpenTelemetryConfig._create_resource |
|
7 |
2 |
0 |
|
71% |
| ivatar / opentelemetry_config.py |
OpenTelemetryConfig.setup_tracing |
|
15 |
4 |
0 |
|
73% |
| ivatar / opentelemetry_config.py |
OpenTelemetryConfig.setup_metrics |
|
31 |
10 |
0 |
|
68% |
| ivatar / opentelemetry_config.py |
OpenTelemetryConfig._start_prometheus_server |
|
16 |
5 |
0 |
|
69% |
| ivatar / opentelemetry_config.py |
OpenTelemetryConfig.setup_instrumentation |
|
9 |
2 |
0 |
|
78% |
| ivatar / opentelemetry_config.py |
OpenTelemetryConfig.get_tracer |
|
1 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_config.py |
OpenTelemetryConfig.get_meter |
|
1 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_config.py |
get_ot_config |
|
3 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_config.py |
setup_opentelemetry |
|
14 |
4 |
0 |
|
71% |
| ivatar / opentelemetry_config.py |
get_tracer |
|
1 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_config.py |
get_meter |
|
1 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_config.py |
is_enabled |
|
1 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_config.py |
is_export_enabled |
|
1 |
1 |
0 |
|
0% |
| ivatar / opentelemetry_config.py |
(no function) |
|
38 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_middleware.py |
OpenTelemetryMiddleware.__init__ |
|
1 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_middleware.py |
OpenTelemetryMiddleware.__call__ |
|
6 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_middleware.py |
OpenTelemetryMiddleware.process_request |
|
8 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_middleware.py |
OpenTelemetryMiddleware.process_response |
|
14 |
1 |
0 |
|
93% |
| ivatar / opentelemetry_middleware.py |
OpenTelemetryMiddleware._is_avatar_request |
|
1 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_middleware.py |
OpenTelemetryMiddleware._add_avatar_attributes |
|
7 |
2 |
0 |
|
71% |
| ivatar / opentelemetry_middleware.py |
OpenTelemetryMiddleware._get_avatar_size |
|
2 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_middleware.py |
OpenTelemetryMiddleware._get_avatar_format |
|
2 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_middleware.py |
OpenTelemetryMiddleware._get_avatar_email |
|
7 |
3 |
0 |
|
57% |
| ivatar / opentelemetry_middleware.py |
OpenTelemetryMiddleware._get_client_ip |
|
4 |
1 |
0 |
|
75% |
| ivatar / opentelemetry_middleware.py |
trace_avatar_operation |
|
3 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_middleware.py |
trace_avatar_operation.decorator |
|
2 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_middleware.py |
trace_avatar_operation.decorator.wrapper |
|
12 |
1 |
0 |
|
92% |
| ivatar / opentelemetry_middleware.py |
trace_file_upload |
|
3 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_middleware.py |
trace_file_upload.decorator |
|
2 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_middleware.py |
trace_file_upload.decorator.wrapper |
|
15 |
8 |
0 |
|
47% |
| ivatar / opentelemetry_middleware.py |
trace_authentication |
|
3 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_middleware.py |
trace_authentication.decorator |
|
2 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_middleware.py |
trace_authentication.decorator.wrapper |
|
10 |
4 |
0 |
|
60% |
| ivatar / opentelemetry_middleware.py |
AvatarMetrics.__init__ |
|
8 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_middleware.py |
AvatarMetrics.record_avatar_request |
|
1 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_middleware.py |
AvatarMetrics.record_avatar_generated |
|
1 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_middleware.py |
AvatarMetrics.record_cache_hit |
|
1 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_middleware.py |
AvatarMetrics.record_cache_miss |
|
1 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_middleware.py |
AvatarMetrics.record_external_request |
|
1 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_middleware.py |
AvatarMetrics.record_file_upload |
|
2 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_middleware.py |
get_avatar_metrics |
|
3 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_middleware.py |
reset_avatar_metrics |
|
1 |
0 |
0 |
|
100% |
| ivatar / opentelemetry_middleware.py |
(no function) |
|
34 |
0 |
0 |
|
100% |
| ivatar / pagan_optimized.py |
OptimizedPagan._get_cached_avatar |
|
20 |
4 |
0 |
|
80% |
| ivatar / pagan_optimized.py |
OptimizedPagan.get_cache_stats |
|
4 |
0 |
0 |
|
100% |
| ivatar / pagan_optimized.py |
OptimizedPagan.clear_cache |
|
3 |
0 |
0 |
|
100% |
| ivatar / pagan_optimized.py |
OptimizedPagan.generate_optimized |
|
10 |
5 |
0 |
|
50% |
| ivatar / pagan_optimized.py |
create_optimized_pagan |
|
23 |
16 |
0 |
|
30% |
| ivatar / pagan_optimized.py |
get_pagan_cache_info |
|
1 |
0 |
0 |
|
100% |
| ivatar / pagan_optimized.py |
clear_pagan_cache |
|
1 |
0 |
0 |
|
100% |
| ivatar / pagan_optimized.py |
create_pagan_avatar |
|
1 |
1 |
0 |
|
0% |
| ivatar / pagan_optimized.py |
(no function) |
|
24 |
0 |
0 |
|
100% |
| ivatar / robohash.py |
OptimizedRobohash.__init__ |
|
4 |
0 |
0 |
|
100% |
| ivatar / robohash.py |
OptimizedRobohash._get_cache_key |
|
3 |
0 |
0 |
|
100% |
| ivatar / robohash.py |
OptimizedRobohash.assemble_optimized |
|
28 |
9 |
0 |
|
68% |
| ivatar / robohash.py |
OptimizedRobohash.get_cache_stats |
|
4 |
0 |
0 |
|
100% |
| ivatar / robohash.py |
OptimizedRobohash.clear_cache |
|
3 |
0 |
0 |
|
100% |
| ivatar / robohash.py |
create_robohash |
|
15 |
8 |
0 |
|
47% |
| ivatar / robohash.py |
get_robohash_cache_stats |
|
1 |
0 |
0 |
|
100% |
| ivatar / robohash.py |
clear_robohash_cache |
|
1 |
0 |
0 |
|
100% |
| ivatar / robohash.py |
(no function) |
|
24 |
0 |
0 |
|
100% |
| ivatar / settings.py |
_test_logs_directory_writeability |
|
9 |
2 |
0 |
|
78% |
| ivatar / settings.py |
(no function) |
|
62 |
14 |
0 |
|
77% |
| ivatar / telemetry_utils.py |
_no_op_trace_decorator |
|
2 |
0 |
0 |
|
100% |
| ivatar / telemetry_utils.py |
_no_op_trace_decorator.decorator |
|
1 |
0 |
0 |
|
100% |
| ivatar / telemetry_utils.py |
NoOpMetrics.record_avatar_generated |
|
1 |
0 |
0 |
|
100% |
| ivatar / telemetry_utils.py |
NoOpMetrics.record_avatar_request |
|
1 |
0 |
0 |
|
100% |
| ivatar / telemetry_utils.py |
NoOpMetrics.record_cache_hit |
|
1 |
0 |
0 |
|
100% |
| ivatar / telemetry_utils.py |
NoOpMetrics.record_cache_miss |
|
1 |
0 |
0 |
|
100% |
| ivatar / telemetry_utils.py |
NoOpMetrics.record_external_request |
|
1 |
0 |
0 |
|
100% |
| ivatar / telemetry_utils.py |
NoOpMetrics.record_file_upload |
|
1 |
0 |
0 |
|
100% |
| ivatar / telemetry_utils.py |
get_telemetry_decorators |
|
1 |
0 |
0 |
|
100% |
| ivatar / telemetry_utils.py |
get_telemetry_metrics |
|
1 |
0 |
0 |
|
100% |
| ivatar / telemetry_utils.py |
is_telemetry_available |
|
1 |
0 |
0 |
|
100% |
| ivatar / telemetry_utils.py |
(no function) |
|
21 |
0 |
0 |
|
100% |
| ivatar / test_auxiliary.py |
Tester.setUp |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_auxiliary.py |
Tester.test_pil_format |
|
6 |
0 |
0 |
|
100% |
| ivatar / test_auxiliary.py |
Tester.test_userprefs_str |
|
2 |
0 |
0 |
|
100% |
| ivatar / test_auxiliary.py |
(no function) |
|
10 |
0 |
0 |
|
100% |
| ivatar / test_config_defaults.py |
ConfigurableDefaultsTestCase.test_config_imports_successfully |
|
7 |
2 |
0 |
|
71% |
| ivatar / test_config_defaults.py |
ConfigurableDefaultsTestCase.test_views_imports_config_successfully |
|
7 |
2 |
0 |
|
71% |
| ivatar / test_config_defaults.py |
ConfigurableDefaultsTestCase.test_config_values_can_be_overridden |
|
4 |
0 |
0 |
|
100% |
| ivatar / test_config_defaults.py |
ConfigurableDefaultsTestCase.test_default_values_are_correct |
|
4 |
0 |
0 |
|
100% |
| ivatar / test_config_defaults.py |
(no function) |
|
17 |
1 |
0 |
|
94% |
| ivatar / test_file_security.py |
FileSecurityTestCase.setUp |
|
4 |
0 |
0 |
|
100% |
| ivatar / test_file_security.py |
FileSecurityTestCase.tearDown |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_file_security.py |
FileSecurityTestCase.test_valid_jpeg_validation |
|
7 |
0 |
0 |
|
100% |
| ivatar / test_file_security.py |
FileSecurityTestCase.test_magic_bytes_validation |
|
4 |
0 |
0 |
|
100% |
| ivatar / test_file_security.py |
FileSecurityTestCase.test_malicious_content_detection |
|
4 |
0 |
0 |
|
100% |
| ivatar / test_file_security.py |
FileSecurityTestCase.test_file_size_validation |
|
4 |
0 |
0 |
|
100% |
| ivatar / test_file_security.py |
FileSecurityTestCase.test_invalid_extension_validation |
|
4 |
0 |
0 |
|
100% |
| ivatar / test_file_security.py |
FileSecurityTestCase.test_exif_sanitization |
|
4 |
0 |
0 |
|
100% |
| ivatar / test_file_security.py |
FileSecurityTestCase.test_comprehensive_validation_function |
|
6 |
0 |
0 |
|
100% |
| ivatar / test_file_security.py |
FileSecurityTestCase.test_security_report_generation |
|
6 |
0 |
0 |
|
100% |
| ivatar / test_file_security.py |
FileSecurityTestCase.test_mime_type_validation |
|
5 |
0 |
0 |
|
100% |
| ivatar / test_file_security.py |
FileSecurityTestCase.test_polyglot_attack_detection |
|
6 |
0 |
0 |
|
100% |
| ivatar / test_file_security.py |
UploadPhotoFormSecurityTestCase.setUp |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_file_security.py |
UploadPhotoFormSecurityTestCase.test_form_validation_with_valid_file |
|
7 |
0 |
0 |
|
100% |
| ivatar / test_file_security.py |
UploadPhotoFormSecurityTestCase.test_form_validation_with_malicious_file |
|
9 |
0 |
0 |
|
100% |
| ivatar / test_file_security.py |
UploadPhotoViewSecurityTestCase.setUp |
|
1 |
1 |
0 |
|
0% |
| ivatar / test_file_security.py |
UploadPhotoViewSecurityTestCase.tearDown |
|
1 |
1 |
0 |
|
0% |
| ivatar / test_file_security.py |
FileSecurityIntegrationTestCase.setUp |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_file_security.py |
FileSecurityIntegrationTestCase.test_end_to_end_security_validation |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_file_security.py |
FileSecurityIntegrationTestCase.test_security_logging |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_file_security.py |
(no function) |
|
32 |
0 |
0 |
|
100% |
| ivatar / test_graceful_degradation.py |
GracefulDegradationTestCase.setUp |
|
3 |
0 |
0 |
|
100% |
| ivatar / test_graceful_degradation.py |
GracefulDegradationTestCase._create_test_image |
|
5 |
0 |
0 |
|
100% |
| ivatar / test_graceful_degradation.py |
GracefulDegradationTestCase.test_no_op_decorators_work |
|
13 |
0 |
0 |
|
100% |
| ivatar / test_graceful_degradation.py |
GracefulDegradationTestCase.test_no_op_decorators_work.avatar_function |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_graceful_degradation.py |
GracefulDegradationTestCase.test_no_op_decorators_work.upload_function |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_graceful_degradation.py |
GracefulDegradationTestCase.test_no_op_decorators_work.auth_function |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_graceful_degradation.py |
GracefulDegradationTestCase.test_no_op_metrics_work |
|
9 |
0 |
0 |
|
100% |
| ivatar / test_graceful_degradation.py |
GracefulDegradationTestCase.test_telemetry_utils_api_consistency |
|
10 |
0 |
0 |
|
100% |
| ivatar / test_graceful_degradation.py |
GracefulDegradationTestCase.test_views_handle_telemetry_gracefully |
|
5 |
0 |
0 |
|
100% |
| ivatar / test_graceful_degradation.py |
GracefulDegradationTestCase.test_file_upload_handles_telemetry_gracefully |
|
14 |
4 |
0 |
|
71% |
| ivatar / test_graceful_degradation.py |
GracefulDegradationTestCase.test_authentication_handles_telemetry_gracefully |
|
12 |
1 |
0 |
|
92% |
| ivatar / test_graceful_degradation.py |
GracefulDegradationTestCase.test_forced_no_op_mode |
|
7 |
0 |
0 |
|
100% |
| ivatar / test_graceful_degradation.py |
GracefulDegradationTestCase.test_middleware_robustness |
|
2 |
0 |
0 |
|
100% |
| ivatar / test_graceful_degradation.py |
GracefulDegradationTestCase.test_stats_endpoint_robustness |
|
2 |
0 |
0 |
|
100% |
| ivatar / test_graceful_degradation.py |
GracefulDegradationTestCase.test_decorated_methods_in_views |
|
6 |
0 |
0 |
|
100% |
| ivatar / test_graceful_degradation.py |
GracefulDegradationTestCase.test_metrics_integration_robustness |
|
8 |
0 |
0 |
|
100% |
| ivatar / test_graceful_degradation.py |
GracefulDegradationTestCase.test_import_safety |
|
10 |
2 |
0 |
|
80% |
| ivatar / test_graceful_degradation.py |
GracefulDegradationTestCase.test_view_imports_safety |
|
7 |
2 |
0 |
|
71% |
| ivatar / test_graceful_degradation.py |
GracefulDegradationTestCase.test_end_to_end_avatar_workflow |
|
6 |
0 |
0 |
|
100% |
| ivatar / test_graceful_degradation.py |
(no function) |
|
25 |
1 |
0 |
|
96% |
| ivatar / test_no_opentelemetry.py |
NoOpenTelemetryTestCase.setUp |
|
7 |
0 |
0 |
|
100% |
| ivatar / test_no_opentelemetry.py |
NoOpenTelemetryTestCase.tearDown |
|
9 |
0 |
0 |
|
100% |
| ivatar / test_no_opentelemetry.py |
NoOpenTelemetryTestCase._mock_import_error |
|
3 |
3 |
0 |
|
0% |
| ivatar / test_no_opentelemetry.py |
NoOpenTelemetryTestCase._create_test_image |
|
5 |
0 |
0 |
|
100% |
| ivatar / test_no_opentelemetry.py |
NoOpenTelemetryTestCase.test_telemetry_utils_without_opentelemetry |
|
21 |
0 |
0 |
|
100% |
| ivatar / test_no_opentelemetry.py |
NoOpenTelemetryTestCase.test_telemetry_utils_without_opentelemetry.mock_import |
|
3 |
0 |
0 |
|
100% |
| ivatar / test_no_opentelemetry.py |
NoOpenTelemetryTestCase.test_telemetry_utils_without_opentelemetry.test_func |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_no_opentelemetry.py |
NoOpenTelemetryTestCase.test_views_work_without_opentelemetry |
|
10 |
0 |
0 |
|
100% |
| ivatar / test_no_opentelemetry.py |
NoOpenTelemetryTestCase.test_avatar_generation_without_opentelemetry |
|
2 |
0 |
0 |
|
100% |
| ivatar / test_no_opentelemetry.py |
NoOpenTelemetryTestCase.test_file_upload_without_opentelemetry |
|
5 |
0 |
0 |
|
100% |
| ivatar / test_no_opentelemetry.py |
NoOpenTelemetryTestCase.test_authentication_without_opentelemetry |
|
4 |
0 |
0 |
|
100% |
| ivatar / test_no_opentelemetry.py |
NoOpenTelemetryTestCase.test_user_registration_without_opentelemetry |
|
6 |
2 |
0 |
|
67% |
| ivatar / test_no_opentelemetry.py |
NoOpenTelemetryTestCase.test_decorated_functions_work_without_opentelemetry |
|
12 |
0 |
0 |
|
100% |
| ivatar / test_no_opentelemetry.py |
NoOpenTelemetryTestCase.test_decorated_functions_work_without_opentelemetry.avatar_function |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_no_opentelemetry.py |
NoOpenTelemetryTestCase.test_decorated_functions_work_without_opentelemetry.upload_function |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_no_opentelemetry.py |
NoOpenTelemetryTestCase.test_decorated_functions_work_without_opentelemetry.auth_function |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_no_opentelemetry.py |
NoOpenTelemetryTestCase.test_metrics_recording_without_opentelemetry |
|
9 |
0 |
0 |
|
100% |
| ivatar / test_no_opentelemetry.py |
NoOpenTelemetryTestCase.test_application_startup_without_opentelemetry |
|
3 |
0 |
0 |
|
100% |
| ivatar / test_no_opentelemetry.py |
NoOpenTelemetryTestCase.test_views_import_safely_without_opentelemetry |
|
7 |
2 |
0 |
|
71% |
| ivatar / test_no_opentelemetry.py |
NoOpenTelemetryTestCase.test_middleware_handles_missing_opentelemetry |
|
2 |
0 |
0 |
|
100% |
| ivatar / test_no_opentelemetry.py |
OpenTelemetryFallbackIntegrationTest.setUp |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_no_opentelemetry.py |
OpenTelemetryFallbackIntegrationTest.test_full_avatar_workflow_without_opentelemetry |
|
5 |
0 |
0 |
|
100% |
| ivatar / test_no_opentelemetry.py |
OpenTelemetryFallbackIntegrationTest.test_stats_endpoint_without_opentelemetry |
|
2 |
0 |
0 |
|
100% |
| ivatar / test_no_opentelemetry.py |
OpenTelemetryFallbackIntegrationTest.test_version_endpoint_without_opentelemetry |
|
2 |
0 |
0 |
|
100% |
| ivatar / test_no_opentelemetry.py |
(no function) |
|
34 |
1 |
0 |
|
97% |
| ivatar / test_opentelemetry.py |
OpenTelemetryConfigTest.setUp |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
OpenTelemetryConfigTest.tearDown |
|
2 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
OpenTelemetryConfigTest.test_config_always_enabled |
|
2 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
OpenTelemetryConfigTest.test_config_enabled_with_env_var |
|
3 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
OpenTelemetryConfigTest.test_service_name_default |
|
7 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
OpenTelemetryConfigTest.test_service_name_custom |
|
3 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
OpenTelemetryConfigTest.test_environment_default |
|
7 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
OpenTelemetryConfigTest.test_environment_custom |
|
3 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
OpenTelemetryConfigTest.test_resource_creation |
|
10 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
OpenTelemetryConfigTest.test_setup_tracing_with_otlp |
|
8 |
3 |
0 |
|
62% |
| ivatar / test_opentelemetry.py |
OpenTelemetryConfigTest.test_setup_metrics_with_prometheus_and_otlp |
|
9 |
3 |
0 |
|
67% |
| ivatar / test_opentelemetry.py |
OpenTelemetryConfigTest.test_setup_instrumentation |
|
7 |
3 |
0 |
|
57% |
| ivatar / test_opentelemetry.py |
OpenTelemetryMiddlewareTest.setUp |
|
3 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
OpenTelemetryMiddlewareTest.test_middleware_enabled |
|
3 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
OpenTelemetryMiddlewareTest.test_avatar_request_attributes |
|
3 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
OpenTelemetryMiddlewareTest.test_is_avatar_request |
|
4 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
OpenTelemetryMiddlewareTest.test_get_avatar_size |
|
3 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
OpenTelemetryMiddlewareTest.test_get_avatar_format |
|
3 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
OpenTelemetryMiddlewareTest.test_get_avatar_email |
|
3 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
AvatarMetricsTest.setUp |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
AvatarMetricsTest.test_metrics_enabled |
|
6 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
TracingDecoratorsTest.test_trace_avatar_operation |
|
5 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
TracingDecoratorsTest.test_trace_avatar_operation.test_function |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
TracingDecoratorsTest.test_trace_avatar_operation_exception |
|
5 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
TracingDecoratorsTest.test_trace_avatar_operation_exception.test_function |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
TracingDecoratorsTest.test_trace_file_upload |
|
4 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
TracingDecoratorsTest.test_trace_file_upload.test_function |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
TracingDecoratorsTest.test_trace_authentication |
|
4 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
TracingDecoratorsTest.test_trace_authentication.test_function |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
IntegrationTest.setUp |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
IntegrationTest.tearDown |
|
2 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
IntegrationTest.test_setup_opentelemetry_called |
|
3 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
IntegrationTest.test_is_enabled_function |
|
4 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
OpenTelemetryDisabledTest.setUp |
|
3 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
OpenTelemetryDisabledTest.tearDown |
|
2 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
OpenTelemetryDisabledTest.test_opentelemetry_always_enabled |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
OpenTelemetryDisabledTest.test_decorators_work |
|
4 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
OpenTelemetryDisabledTest.test_decorators_work.test_function |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
OpenTelemetryDisabledTest.test_metrics_work |
|
6 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
OpenTelemetryDisabledTest.test_middleware_enabled |
|
6 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
PrometheusMetricsIntegrationTest.setUp |
|
6 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
PrometheusMetricsIntegrationTest.tearDown |
|
3 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
PrometheusMetricsIntegrationTest.test_prometheus_server_starts |
|
10 |
2 |
0 |
|
80% |
| ivatar / test_opentelemetry.py |
PrometheusMetricsIntegrationTest.test_custom_metrics_available |
|
27 |
8 |
0 |
|
70% |
| ivatar / test_opentelemetry.py |
PrometheusMetricsIntegrationTest.test_metrics_increment_correctly |
|
31 |
15 |
0 |
|
52% |
| ivatar / test_opentelemetry.py |
PrometheusMetricsIntegrationTest.test_different_metric_labels |
|
28 |
10 |
0 |
|
64% |
| ivatar / test_opentelemetry.py |
PrometheusMetricsIntegrationTest.test_histogram_metrics |
|
24 |
7 |
0 |
|
71% |
| ivatar / test_opentelemetry.py |
PrometheusMetricsIntegrationTest.test_server_port_conflict_handling |
|
8 |
0 |
0 |
|
100% |
| ivatar / test_opentelemetry.py |
PrometheusMetricsIntegrationTest.test_no_prometheus_endpoint_in_production_mode |
|
10 |
1 |
0 |
|
90% |
| ivatar / test_opentelemetry.py |
(no function) |
|
63 |
1 |
0 |
|
98% |
| ivatar / test_pagan_optimized.py |
TestOptimizedPagan.setUp |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_pagan_optimized.py |
TestOptimizedPagan.test_pagan_generation |
|
6 |
0 |
0 |
|
100% |
| ivatar / test_pagan_optimized.py |
TestOptimizedPagan.test_deterministic_generation |
|
8 |
0 |
0 |
|
100% |
| ivatar / test_pagan_optimized.py |
TestOptimizedPagan.test_different_digests_produce_different_images |
|
9 |
0 |
0 |
|
100% |
| ivatar / test_pagan_optimized.py |
TestOptimizedPagan.test_compatibility_with_original |
|
11 |
0 |
0 |
|
100% |
| ivatar / test_pagan_optimized.py |
TestOptimizedPagan.test_caching_functionality |
|
18 |
0 |
0 |
|
100% |
| ivatar / test_pagan_optimized.py |
TestOptimizedPagan.test_different_sizes |
|
6 |
0 |
0 |
|
100% |
| ivatar / test_pagan_optimized.py |
TestOptimizedPagan.test_cache_size_limit |
|
10 |
0 |
0 |
|
100% |
| ivatar / test_pagan_optimized.py |
TestOptimizedPagan.test_create_optimized_pagan_function |
|
7 |
0 |
0 |
|
100% |
| ivatar / test_pagan_optimized.py |
TestOptimizedPagan.test_error_handling |
|
6 |
2 |
0 |
|
67% |
| ivatar / test_pagan_optimized.py |
TestOptimizedPagan.test_performance_improvement |
|
33 |
0 |
0 |
|
100% |
| ivatar / test_pagan_optimized.py |
TestOptimizedPagan.test_cache_stats |
|
11 |
0 |
0 |
|
100% |
| ivatar / test_pagan_optimized.py |
TestPaganPerformance.test_bulk_generation_performance |
|
12 |
0 |
0 |
|
100% |
| ivatar / test_pagan_optimized.py |
TestPaganPerformance.test_cache_hit_performance |
|
13 |
0 |
0 |
|
100% |
| ivatar / test_pagan_optimized.py |
(no function) |
|
26 |
1 |
0 |
|
96% |
| ivatar / test_robohash.py |
RobohashOptimizationTestCase.setUp |
|
3 |
0 |
0 |
|
100% |
| ivatar / test_robohash.py |
RobohashOptimizationTestCase.test_optimized_robohash_functionality |
|
9 |
0 |
0 |
|
100% |
| ivatar / test_robohash.py |
RobohashOptimizationTestCase.test_identical_results |
|
13 |
0 |
0 |
|
100% |
| ivatar / test_robohash.py |
RobohashOptimizationTestCase.test_performance_improvement |
|
11 |
0 |
0 |
|
100% |
| ivatar / test_robohash.py |
RobohashOptimizationTestCase.test_integration_function |
|
8 |
0 |
0 |
|
100% |
| ivatar / test_robohash.py |
RobohashOptimizationTestCase.test_cache_functionality |
|
10 |
0 |
0 |
|
100% |
| ivatar / test_robohash.py |
RobohashOptimizationTestCase.test_multiple_random_emails_results |
|
13 |
0 |
0 |
|
100% |
| ivatar / test_robohash.py |
RobohashOptimizationTestCase.test_performance_improvement_multiple_cases |
|
12 |
0 |
0 |
|
100% |
| ivatar / test_robohash.py |
RobohashOptimizationTestCase.test_random_email_generation_and_processing |
|
12 |
0 |
0 |
|
100% |
| ivatar / test_robohash.py |
(no function) |
|
18 |
0 |
0 |
|
100% |
| ivatar / test_robohash_cached.py |
TestConsolidatedRobohash.setUp |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_robohash_cached.py |
TestConsolidatedRobohash.test_cache_functionality |
|
8 |
0 |
0 |
|
100% |
| ivatar / test_robohash_cached.py |
TestConsolidatedRobohash.test_cache_stats |
|
13 |
0 |
0 |
|
100% |
| ivatar / test_robohash_cached.py |
TestConsolidatedRobohash.test_different_sizes_handled_correctly |
|
7 |
0 |
0 |
|
100% |
| ivatar / test_robohash_cached.py |
TestConsolidatedRobohash.test_create_robohash_function |
|
6 |
0 |
0 |
|
100% |
| ivatar / test_robohash_cached.py |
TestConsolidatedRobohash.test_performance_characteristics |
|
14 |
0 |
0 |
|
100% |
| ivatar / test_robohash_cached.py |
TestConsolidatedRobohash.test_cache_size_management |
|
8 |
0 |
0 |
|
100% |
| ivatar / test_robohash_cached.py |
TestConsolidatedRobohash.test_error_handling |
|
8 |
2 |
0 |
|
75% |
| ivatar / test_robohash_cached.py |
TestConsolidatedRobohash.test_different_robosets |
|
8 |
0 |
0 |
|
100% |
| ivatar / test_robohash_cached.py |
TestConsolidatedRobohash.test_create_function_with_different_parameters |
|
9 |
0 |
0 |
|
100% |
| ivatar / test_robohash_cached.py |
TestRobohashPerformance.test_performance_comparison |
|
15 |
0 |
0 |
|
100% |
| ivatar / test_robohash_cached.py |
(no function) |
|
21 |
1 |
0 |
|
95% |
| ivatar / test_security_fixes.py |
ETagSanitizationTest.setUp |
|
2 |
0 |
0 |
|
100% |
| ivatar / test_security_fixes.py |
ETagSanitizationTest.test_etag_with_newlines_sanitized |
|
8 |
0 |
0 |
|
100% |
| ivatar / test_security_fixes.py |
ETagSanitizationTest.test_etag_with_carriage_return_sanitized |
|
7 |
0 |
0 |
|
100% |
| ivatar / test_security_fixes.py |
ETagSanitizationTest.test_etag_with_control_characters_sanitized |
|
5 |
0 |
0 |
|
100% |
| ivatar / test_security_fixes.py |
ETagSanitizationTest.test_etag_normal_hash_unchanged |
|
5 |
0 |
0 |
|
100% |
| ivatar / test_security_fixes.py |
ETagSanitizationTest.test_etag_fallback_for_short_path |
|
6 |
0 |
0 |
|
100% |
| ivatar / test_security_fixes.py |
ETagSanitizationTest.test_non_avatar_urls_unchanged |
|
6 |
0 |
0 |
|
100% |
| ivatar / test_security_fixes.py |
URLValidationTest.test_invalid_url_handling |
|
4 |
0 |
0 |
|
100% |
| ivatar / test_security_fixes.py |
URLValidationTest.test_malformed_url_handling |
|
4 |
0 |
0 |
|
100% |
| ivatar / test_security_fixes.py |
URLValidationTest.test_unicode_error_handling |
|
4 |
0 |
0 |
|
100% |
| ivatar / test_security_fixes.py |
URLValidationTest.test_other_exceptions_passthrough |
|
3 |
0 |
0 |
|
100% |
| ivatar / test_security_fixes.py |
URLValidationTest.test_successful_url_request |
|
5 |
0 |
0 |
|
100% |
| ivatar / test_security_fixes.py |
URLValidationTest.test_security_logging |
|
7 |
0 |
0 |
|
100% |
| ivatar / test_security_fixes.py |
IntegrationTest.test_sql_injection_attempt_url |
|
9 |
0 |
0 |
|
100% |
| ivatar / test_security_fixes.py |
IntegrationTest.test_newline_injection_attempt |
|
9 |
0 |
0 |
|
100% |
| ivatar / test_security_fixes.py |
(no function) |
|
36 |
0 |
0 |
|
100% |
| ivatar / test_static_pages.py |
Tester.login |
|
1 |
1 |
0 |
|
0% |
| ivatar / test_static_pages.py |
Tester.setUp |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_static_pages.py |
Tester.test_contact_page |
|
2 |
0 |
0 |
|
100% |
| ivatar / test_static_pages.py |
Tester.test_description_page |
|
2 |
0 |
0 |
|
100% |
| ivatar / test_static_pages.py |
Tester.test_security_page |
|
2 |
0 |
0 |
|
100% |
| ivatar / test_static_pages.py |
(no function) |
|
21 |
0 |
0 |
|
100% |
| ivatar / test_telemetry_integration.py |
TelemetryIntegrationTestCase.setUp |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_telemetry_integration.py |
TelemetryIntegrationTestCase.test_telemetry_utils_import |
|
8 |
0 |
0 |
|
100% |
| ivatar / test_telemetry_integration.py |
TelemetryIntegrationTestCase.test_decorators_work_as_no_op |
|
10 |
0 |
0 |
|
100% |
| ivatar / test_telemetry_integration.py |
TelemetryIntegrationTestCase.test_decorators_work_as_no_op.test_function |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_telemetry_integration.py |
TelemetryIntegrationTestCase.test_decorators_work_as_no_op.test_upload |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_telemetry_integration.py |
TelemetryIntegrationTestCase.test_decorators_work_as_no_op.test_login |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_telemetry_integration.py |
TelemetryIntegrationTestCase.test_metrics_work_as_no_op |
|
6 |
0 |
0 |
|
100% |
| ivatar / test_telemetry_integration.py |
TelemetryIntegrationTestCase.test_telemetry_available_true |
|
2 |
0 |
0 |
|
100% |
| ivatar / test_telemetry_integration.py |
TelemetryIntegrationTestCase.test_views_import_telemetry_safely |
|
4 |
0 |
0 |
|
100% |
| ivatar / test_telemetry_integration.py |
MockTelemetryTestCase.setUp |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_telemetry_integration.py |
MockTelemetryTestCase.test_avatar_generation_metrics |
|
3 |
0 |
0 |
|
100% |
| ivatar / test_telemetry_integration.py |
MockTelemetryTestCase.test_file_upload_metrics |
|
2 |
0 |
0 |
|
100% |
| ivatar / test_telemetry_integration.py |
MockTelemetryTestCase.test_external_request_metrics |
|
2 |
0 |
0 |
|
100% |
| ivatar / test_telemetry_integration.py |
MockTelemetryTestCase.test_cache_metrics |
|
4 |
0 |
0 |
|
100% |
| ivatar / test_telemetry_integration.py |
(no function) |
|
23 |
1 |
0 |
|
96% |
| ivatar / test_utils.py |
Tester.test_openid_variations |
|
20 |
0 |
0 |
|
100% |
| ivatar / test_utils.py |
Tester.test_is_trusted_url |
|
12 |
0 |
0 |
|
100% |
| ivatar / test_utils.py |
(no function) |
|
5 |
0 |
0 |
|
100% |
| ivatar / test_views.py |
Tester.login |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_views.py |
Tester.setUp |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_views.py |
Tester.test_incorrect_digest |
|
2 |
0 |
0 |
|
100% |
| ivatar / test_views.py |
Tester.test_logout |
|
5 |
0 |
0 |
|
100% |
| ivatar / test_views.py |
Tester.test_Bluesky_client |
|
6 |
4 |
0 |
|
33% |
| ivatar / test_views.py |
(no function) |
|
26 |
0 |
0 |
|
100% |
| ivatar / test_views_stats.py |
StatsTester.login |
|
1 |
1 |
0 |
|
0% |
| ivatar / test_views_stats.py |
StatsTester.setUp |
|
1 |
0 |
0 |
|
100% |
| ivatar / test_views_stats.py |
StatsTester.test_stats_basic |
|
9 |
0 |
0 |
|
100% |
| ivatar / test_views_stats.py |
StatsTester.test_stats_comprehensive |
|
57 |
0 |
0 |
|
100% |
| ivatar / test_views_stats.py |
StatsTester.test_stats_edge_cases |
|
10 |
0 |
0 |
|
100% |
| ivatar / test_views_stats.py |
StatsTester.test_stats_with_bluesky_handles |
|
15 |
0 |
0 |
|
100% |
| ivatar / test_views_stats.py |
StatsTester.test_stats_photo_duplicates |
|
11 |
0 |
0 |
|
100% |
| ivatar / test_views_stats.py |
(no function) |
|
21 |
0 |
0 |
|
100% |
| ivatar / test_wsgi.py |
TestCase.test_run_wsgi |
|
2 |
0 |
0 |
|
100% |
| ivatar / test_wsgi.py |
(no function) |
|
7 |
0 |
0 |
|
100% |
| ivatar / tools / __init__.py |
(no function) |
|
0 |
0 |
0 |
|
100% |
| ivatar / tools / forms.py |
CheckForm.clean |
|
16 |
8 |
0 |
|
50% |
| ivatar / tools / forms.py |
CheckForm.clean_openid |
|
2 |
0 |
0 |
|
100% |
| ivatar / tools / forms.py |
CheckForm.clean_mail |
|
2 |
0 |
0 |
|
100% |
| ivatar / tools / forms.py |
(no function) |
|
18 |
0 |
0 |
|
100% |
| ivatar / tools / test_views.py |
Tester.login |
|
1 |
0 |
0 |
|
100% |
| ivatar / tools / test_views.py |
Tester.setUp |
|
1 |
0 |
0 |
|
100% |
| ivatar / tools / test_views.py |
Tester.test_check_mail |
|
8 |
0 |
0 |
|
100% |
| ivatar / tools / test_views.py |
Tester.test_check_openid |
|
7 |
0 |
0 |
|
100% |
| ivatar / tools / test_views.py |
Tester.test_check_domain |
|
7 |
0 |
0 |
|
100% |
| ivatar / tools / test_views.py |
(no function) |
|
21 |
0 |
0 |
|
100% |
| ivatar / tools / urls.py |
(no function) |
|
3 |
0 |
0 |
|
100% |
| ivatar / tools / views.py |
CheckDomainView.form_valid |
|
11 |
0 |
0 |
|
100% |
| ivatar / tools / views.py |
CheckView.form_valid |
|
46 |
13 |
0 |
|
72% |
| ivatar / tools / views.py |
lookup_avatar_server |
|
27 |
9 |
0 |
|
67% |
| ivatar / tools / views.py |
srv_hostname |
|
29 |
25 |
0 |
|
14% |
| ivatar / tools / views.py |
lookup_ip_address |
|
18 |
6 |
0 |
|
67% |
| ivatar / tools / views.py |
(no function) |
|
25 |
0 |
0 |
|
100% |
| ivatar / urls.py |
(no function) |
|
19 |
3 |
0 |
|
84% |
| ivatar / utils.py |
urlopen |
|
16 |
0 |
0 |
|
100% |
| ivatar / utils.py |
Bluesky.__init__ |
|
3 |
0 |
0 |
|
100% |
| ivatar / utils.py |
Bluesky._is_session_valid |
|
4 |
2 |
0 |
|
50% |
| ivatar / utils.py |
Bluesky.login |
|
12 |
3 |
0 |
|
75% |
| ivatar / utils.py |
Bluesky.clear_shared_session |
|
3 |
0 |
0 |
|
100% |
| ivatar / utils.py |
Bluesky.normalize_handle |
|
7 |
3 |
0 |
|
57% |
| ivatar / utils.py |
Bluesky._make_profile_request |
|
17 |
9 |
0 |
|
47% |
| ivatar / utils.py |
Bluesky.get_profile |
|
3 |
0 |
0 |
|
100% |
| ivatar / utils.py |
Bluesky.get_avatar |
|
2 |
0 |
0 |
|
100% |
| ivatar / utils.py |
random_string |
|
1 |
0 |
0 |
|
100% |
| ivatar / utils.py |
generate_random_email |
|
4 |
0 |
0 |
|
100% |
| ivatar / utils.py |
random_ip_address |
|
1 |
0 |
0 |
|
100% |
| ivatar / utils.py |
openid_variations |
|
8 |
0 |
0 |
|
100% |
| ivatar / utils.py |
mm_ng |
|
32 |
32 |
0 |
|
0% |
| ivatar / utils.py |
is_trusted_url |
|
24 |
1 |
0 |
|
96% |
| ivatar / utils.py |
resize_animated_gif |
|
6 |
6 |
0 |
|
0% |
| ivatar / utils.py |
resize_animated_gif._thumbnail_frames |
|
4 |
4 |
0 |
|
0% |
| ivatar / utils.py |
(no function) |
|
41 |
0 |
0 |
|
100% |
| ivatar / views.py |
get_size |
|
12 |
1 |
0 |
|
92% |
| ivatar / views.py |
CachingHttpResponse.__init__ |
|
3 |
0 |
0 |
|
100% |
| ivatar / views.py |
AvatarImageView.options |
|
3 |
3 |
0 |
|
0% |
| ivatar / views.py |
AvatarImageView.get |
|
126 |
42 |
0 |
|
67% |
| ivatar / views.py |
AvatarImageView._redirect_static_w_size |
|
4 |
1 |
0 |
|
75% |
| ivatar / views.py |
AvatarImageView._return_cached_response |
|
4 |
4 |
0 |
|
0% |
| ivatar / views.py |
AvatarImageView._return_cached_png |
|
2 |
2 |
0 |
|
0% |
| ivatar / views.py |
GravatarProxyView.get |
|
54 |
39 |
0 |
|
28% |
| ivatar / views.py |
GravatarProxyView.get.redir_default |
|
4 |
1 |
0 |
|
75% |
| ivatar / views.py |
BlueskyProxyView.get |
|
73 |
73 |
0 |
|
0% |
| ivatar / views.py |
BlueskyProxyView.get.redir_default |
|
4 |
4 |
0 |
|
0% |
| ivatar / views.py |
StatsView.get |
|
61 |
3 |
0 |
|
95% |
| ivatar / views.py |
_get_git_info_from_files |
|
68 |
23 |
0 |
|
66% |
| ivatar / views.py |
_get_cached_version_info |
|
6 |
1 |
0 |
|
83% |
| ivatar / views.py |
DeploymentVersionView.get |
|
13 |
7 |
0 |
|
46% |
| ivatar / views.py |
(no function) |
|
62 |
0 |
0 |
|
100% |
| ivatar / wsgi.py |
(no function) |
|
4 |
0 |
0 |
|
100% |
| manage.py |
(no function) |
|
7 |
7 |
2 |
|
0% |
| scripts / run_tests_with_coverage.py |
main |
|
17 |
2 |
0 |
|
88% |
| scripts / run_tests_with_coverage.py |
(no function) |
|
8 |
0 |
0 |
|
100% |
| setup.py |
(no function) |
|
2 |
2 |
0 |
|
0% |