test-backend: Make test coverage gaps in zerver/lib more explicit.

This will make it much less likely that we'll have more regressions of
files losing 100% test coverage like push_notifications.py had
recently.
This commit is contained in:
Tim Abbott 2017-10-11 19:08:15 -07:00
parent 676a6af8cb
commit ce579d5896
1 changed files with 47 additions and 32 deletions

View File

@ -24,23 +24,7 @@ target_fully_covered = {path for target in [
'analytics/tests/*.py', 'analytics/tests/*.py',
'analytics/views.py', 'analytics/views.py',
'zerver/context_processors.py', 'zerver/context_processors.py',
'zerver/lib/alert_words.py', 'zerver/lib/*.py',
'zerver/lib/attachments.py',
'zerver/lib/avatar.py',
'zerver/lib/avatar_hash.py',
'zerver/lib/context_managers.py',
'zerver/lib/domains.py',
'zerver/lib/emoji.py',
'zerver/lib/i18n.py',
'zerver/lib/mention.py',
'zerver/lib/message.py',
'zerver/lib/name_restrictions.py',
'zerver/lib/push_notifications.py',
'zerver/lib/realm_icon.py',
'zerver/lib/retention.py',
'zerver/lib/streams.py',
'zerver/lib/users.py',
'zerver/lib/webhooks/*.py',
'zerver/logging_handlers.py', 'zerver/logging_handlers.py',
# As a project, we require 100% test coverage in the views files. # As a project, we require 100% test coverage in the views files.
'zerver/views/*.py', 'zerver/views/*.py',
@ -54,21 +38,6 @@ target_fully_covered = {path for target in [
# Uncovered but in exclude list and we'd like to have included soon # Uncovered but in exclude list and we'd like to have included soon
'confirmation/models.py', 'confirmation/models.py',
'zerver/decorator.py', 'zerver/decorator.py',
'zerver/lib/actions.py',
'zerver/lib/events.py',
'zerver/lib/bugdown/__init__.py',
'zerver/lib/events.py',
'zerver/lib/integrations.py',
'zerver/lib/message.py',
'zerver/lib/narrow.py',
'zerver/lib/notifications.py',
'zerver/lib/request.py',
'zerver/lib/response.py',
'zerver/lib/sessions.py',
'zerver/lib/test_helpers.py',
'zerver/lib/test_classes.py',
'zerver/lib/upload.py',
'zerver/lib/validator.py',
'zerver/models.py', 'zerver/models.py',
'zerver/webhooks/*/*.py', 'zerver/webhooks/*/*.py',
] for path in glob.glob(target)} ] for path in glob.glob(target)}
@ -84,12 +53,58 @@ not_yet_fully_covered = {
'confirmation/models.py', 'confirmation/models.py',
'zerver/decorator.py', 'zerver/decorator.py',
'zerver/lib/actions.py', 'zerver/lib/actions.py',
'zerver/lib/addressee.py',
'zerver/lib/bugdown/__init__.py', 'zerver/lib/bugdown/__init__.py',
'zerver/lib/cache.py',
'zerver/lib/cache_helpers.py',
'zerver/lib/create_user.py',
'zerver/lib/exceptions.py',
'zerver/lib/i18n.py', 'zerver/lib/i18n.py',
'zerver/lib/management.py',
'zerver/lib/message.py', 'zerver/lib/message.py',
'zerver/lib/notifications.py', 'zerver/lib/notifications.py',
'zerver/lib/rest.py',
'zerver/lib/send_email.py',
'zerver/lib/soft_deactivation.py',
'zerver/lib/upload.py', 'zerver/lib/upload.py',
'zerver/models.py', 'zerver/models.py',
# Other lib files that ideally would coverage, but aren't sorted
'zerver/lib/bot_lib.py',
'zerver/lib/camo.py',
'zerver/lib/db.py',
'zerver/lib/debug.py',
'zerver/lib/digest.py',
'zerver/lib/email_mirror.py',
'zerver/lib/error_notify.py',
'zerver/lib/export.py',
'zerver/lib/feedback.py',
'zerver/lib/fix_unreads.py',
'zerver/lib/hotspots.py',
'zerver/lib/html_diff.py',
'zerver/lib/initial_password.py',
'zerver/lib/logging_util.py',
'zerver/lib/migrate.py',
'zerver/lib/outgoing_webhook.py',
'zerver/lib/parallel.py',
'zerver/lib/profile.py',
'zerver/lib/queue.py',
'zerver/lib/rate_limiter.py',
'zerver/lib/sqlalchemy_utils.py',
'zerver/lib/str_utils.py',
'zerver/lib/stream_recipient.py',
'zerver/lib/tex.py',
'zerver/lib/timeout.py',
'zerver/lib/unminify.py',
'zerver/lib/user_agent.py',
'zerver/lib/utils.py',
# Low priority for coverage
'zerver/lib/bulk_create.py',
'zerver/lib/ccache.py',
'zerver/lib/generate_test_data.py',
'zerver/lib/initial_password',
'zerver/lib/statistics.py',
'zerver/lib/test_fixtures.py',
'zerver/lib/test_runner.py',
# Webhook integrations with incomplete coverage # Webhook integrations with incomplete coverage
'zerver/webhooks/basecamp/view.py', 'zerver/webhooks/basecamp/view.py',
'zerver/webhooks/beanstalk/view.py', 'zerver/webhooks/beanstalk/view.py',