Coverage report: 43%

Files Functions Classes

coverage.py v7.6.9, created at 2024-12-23 11:16 -0600

File statements missing excluded coverage
/Users/davegaeddert/Developer/dropseed/plain/plain-auth/plain/auth/__init__.py 2 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-auth/plain/auth/config.py 3 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-auth/plain/auth/default_settings.py 6 1 0 83%
/Users/davegaeddert/Developer/dropseed/plain/plain-auth/plain/auth/middleware.py 16 1 0 94%
/Users/davegaeddert/Developer/dropseed/plain/plain-auth/plain/auth/sessions.py 69 33 0 52%
/Users/davegaeddert/Developer/dropseed/plain/plain-auth/plain/auth/signals.py 4 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-auth/plain/auth/utils.py 17 5 0 71%
/Users/davegaeddert/Developer/dropseed/plain/plain-auth/plain/auth/views.py 52 6 0 88%
/Users/davegaeddert/Developer/dropseed/plain/plain-htmx/plain/htmx/templates.py 88 66 0 25%
/Users/davegaeddert/Developer/dropseed/plain/plain-htmx/plain/htmx/views.py 39 24 0 38%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/__init__.py 26 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/aggregates.py 127 74 0 42%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/backends/base/base.py 361 120 0 67%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/backends/base/client.py 13 4 0 69%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/backends/base/creation.py 110 64 0 42%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/backends/base/features.py 149 14 0 91%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/backends/base/introspection.py 69 43 0 38%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/backends/base/operations.py 265 147 0 45%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/backends/base/schema.py 677 442 0 35%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/backends/base/validation.py 14 9 0 36%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/backends/ddl_references.py 137 69 0 50%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/backends/signals.py 2 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/backends/sqlite3/_functions.py 346 247 0 29%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/backends/sqlite3/base.py 123 19 0 85%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/backends/sqlite3/client.py 7 2 0 71%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/backends/sqlite3/creation.py 98 66 0 33%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/backends/sqlite3/features.py 60 9 0 85%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/backends/sqlite3/introspection.py 196 168 0 14%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/backends/sqlite3/operations.py 211 114 0 46%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/backends/sqlite3/schema.py 212 172 0 19%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/backends/utils.py 157 83 0 47%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/base.py 983 607 0 38%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/cli.py 656 526 0 20%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/config.py 4 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/constants.py 5 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/constraints.py 233 180 0 23%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/database_url.py 67 43 0 36%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/db.py 160 48 0 70%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/default_settings.py 8 1 0 88%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/deletion.py 244 134 0 45%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/enums.py 53 22 0 58%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/expressions.py 983 590 0 40%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/fields/__init__.py 1203 627 0 48%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/fields/json.py 341 194 0 43%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/fields/mixins.py 29 17 0 41%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/fields/proxy.py 6 3 0 50%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/fields/related.py 734 552 0 25%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/fields/related_descriptors.py 569 516 0 9%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/fields/related_lookups.py 94 66 0 30%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/fields/reverse_related.py 153 88 0 42%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/functions/__init__.py 6 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/functions/comparison.py 95 54 0 43%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/functions/datetime.py 195 92 0 53%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/functions/math.py 103 20 0 81%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/functions/mixins.py 23 14 0 39%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/functions/text.py 150 46 0 69%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/functions/window.py 69 20 0 71%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/indexes.py 143 113 0 21%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/lookups.py 448 169 0 62%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/manager.py 101 19 0 81%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/migrations/__init__.py 2 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/migrations/autodetector.py 640 581 0 9%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/migrations/exceptions.py 26 5 0 81%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/migrations/executor.py 225 137 0 39%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/migrations/graph.py 178 89 0 50%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/migrations/loader.py 180 85 0 53%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/migrations/migration.py 102 63 0 38%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/migrations/operations/__init__.py 4 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/migrations/operations/base.py 40 15 0 62%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/migrations/operations/fields.py 174 100 0 43%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/migrations/operations/models.py 464 285 0 39%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/migrations/operations/special.py 124 91 0 27%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/migrations/optimizer.py 33 30 0 9%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/migrations/questioner.py 152 116 0 24%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/migrations/recorder.py 52 6 0 88%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/migrations/serializer.py 223 139 0 38%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/migrations/state.py 550 263 0 52%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/migrations/utils.py 55 33 0 40%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/migrations/writer.py 180 145 0 19%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/options.py 421 151 0 64%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/preflight.py 119 100 0 16%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/query.py 1237 947 0 23%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/query_utils.py 233 135 0 42%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/signals.py 23 8 0 65%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/sql/__init__.py 5 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/sql/compiler.py 1031 631 0 39%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/sql/constants.py 8 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/sql/datastructures.py 95 61 0 36%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/sql/query.py 1276 816 0 36%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/sql/subqueries.py 90 35 0 61%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/sql/where.py 211 114 0 46%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/test/pytest.py 42 2 0 95%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/test/utils.py 72 11 0 85%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/transaction.py 120 49 0 59%
/Users/davegaeddert/Developer/dropseed/plain/plain-models/plain/models/utils.py 34 18 0 47%
/Users/davegaeddert/Developer/dropseed/plain/plain-pytest/plain/pytest/__init__.py 2 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-pytest/plain/pytest/cli.py 14 6 0 57%
/Users/davegaeddert/Developer/dropseed/plain/plain-pytest/plain/pytest/plugin.py 34 18 0 47%
/Users/davegaeddert/Developer/dropseed/plain/plain-sessions/plain/sessions/__init__.py 1 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-sessions/plain/sessions/backends/base.py 177 69 0 61%
/Users/davegaeddert/Developer/dropseed/plain/plain-sessions/plain/sessions/backends/db.py 69 21 0 70%
/Users/davegaeddert/Developer/dropseed/plain/plain-sessions/plain/sessions/config.py 4 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-sessions/plain/sessions/default_settings.py 10 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-sessions/plain/sessions/exceptions.py 5 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-sessions/plain/sessions/middleware.py 42 16 0 62%
/Users/davegaeddert/Developer/dropseed/plain/plain-sessions/plain/sessions/migrations/0001_initial.py 6 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-sessions/plain/sessions/migrations/0002_alter_session_options_alter_session_expire_date_and_more.py 5 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-sessions/plain/sessions/models.py 26 12 0 54%
/Users/davegaeddert/Developer/dropseed/plain/plain-sessions/plain/sessions/preflight.py 40 22 0 45%
/Users/davegaeddert/Developer/dropseed/plain/plain-staff/plain/staff/__init__.py 2 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-staff/plain/staff/config.py 16 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-staff/plain/staff/dates.py 46 15 0 67%
/Users/davegaeddert/Developer/dropseed/plain/plain-staff/plain/staff/default_settings.py 1 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-staff/plain/staff/impersonate/__init__.py 2 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-staff/plain/staff/impersonate/middleware.py 23 12 0 48%
/Users/davegaeddert/Developer/dropseed/plain/plain-staff/plain/staff/impersonate/permissions.py 9 6 0 33%
/Users/davegaeddert/Developer/dropseed/plain/plain-staff/plain/staff/impersonate/settings.py 5 3 0 40%
/Users/davegaeddert/Developer/dropseed/plain/plain-staff/plain/staff/impersonate/urls.py 4 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-staff/plain/staff/impersonate/views.py 15 7 0 53%
/Users/davegaeddert/Developer/dropseed/plain/plain-staff/plain/staff/middleware.py 7 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-staff/plain/staff/querystats/__init__.py 2 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-staff/plain/staff/querystats/core.py 79 26 0 67%
/Users/davegaeddert/Developer/dropseed/plain/plain-staff/plain/staff/querystats/middleware.py 53 11 0 79%
/Users/davegaeddert/Developer/dropseed/plain/plain-staff/plain/staff/querystats/urls.py 4 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-staff/plain/staff/querystats/views.py 16 8 0 50%
/Users/davegaeddert/Developer/dropseed/plain/plain-staff/plain/staff/templates.py 18 2 0 89%
/Users/davegaeddert/Developer/dropseed/plain/plain-staff/plain/staff/toolbar.py 11 2 0 82%
/Users/davegaeddert/Developer/dropseed/plain/plain-staff/plain/staff/urls.py 7 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-staff/plain/staff/views/__init__.py 4 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-staff/plain/staff/views/base.py 211 96 0 55%
/Users/davegaeddert/Developer/dropseed/plain/plain-staff/plain/staff/views/default.py 25 5 0 80%
/Users/davegaeddert/Developer/dropseed/plain/plain-staff/plain/staff/views/models.py 140 87 0 38%
/Users/davegaeddert/Developer/dropseed/plain/plain-staff/plain/staff/views/registry.py 74 46 0 38%
app/settings.py 6 0 0 100%
app/urls.py 11 2 0 82%
app/users/models.py 4 0 0 100%
test_staff.py 9 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-tailwind/plain/tailwind/__init__.py 2 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-tailwind/plain/tailwind/cli.py 64 48 0 25%
/Users/davegaeddert/Developer/dropseed/plain/plain-tailwind/plain/tailwind/core.py 103 69 0 33%
/Users/davegaeddert/Developer/dropseed/plain/plain-tailwind/plain/tailwind/default_settings.py 3 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain-tailwind/plain/tailwind/templates.py 11 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/assets/compile.py 46 34 0 26%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/assets/finders.py 28 22 0 21%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/assets/fingerprints.py 22 5 0 77%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/assets/urls.py 15 3 0 80%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/assets/views.py 154 125 0 19%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/csrf/middleware.py 210 120 0 43%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/exceptions.py 109 55 0 50%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/http/__init__.py 4 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/http/cookie.py 11 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/http/multipartparser.py 361 305 0 16%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/http/request.py 399 203 0 49%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/http/response.py 353 146 0 59%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/internal/files/__init__.py 2 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/internal/files/base.py 100 70 0 30%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/internal/files/temp.py 33 26 0 21%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/internal/files/uploadedfile.py 59 33 0 44%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/internal/files/uploadhandler.py 82 47 0 43%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/internal/files/utils.py 51 26 0 49%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/internal/handlers/base.py 65 7 0 89%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/internal/handlers/exception.py 59 27 0 54%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/internal/handlers/wsgi.py 122 49 0 60%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/internal/middleware/headers.py 11 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/internal/middleware/https.py 18 3 0 83%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/internal/middleware/slash.py 28 12 0 57%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/json.py 30 21 0 30%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/logs/__init__.py 4 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/logs/configure.py 8 1 0 88%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/logs/loggers.py 46 30 0 35%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/logs/utils.py 13 3 0 77%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/packages/__init__.py 3 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/packages/config.py 108 35 0 68%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/packages/registry.py 170 59 0 65%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/paginator.py 107 66 0 38%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/preflight/__init__.py 6 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/preflight/files.py 9 4 0 56%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/preflight/messages.py 54 25 0 54%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/preflight/registry.py 33 13 0 61%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/preflight/security.py 37 19 0 49%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/preflight/urls.py 49 38 0 22%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/runtime/__init__.py 25 4 0 84%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/runtime/global_settings.py 42 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/runtime/user_settings.py 170 52 0 69%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/signals/__init__.py 4 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/signals/dispatch/__init__.py 1 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/signals/dispatch/dispatcher.py 123 31 0 75%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/signing.py 118 15 0 87%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/templates/__init__.py 3 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/templates/core.py 16 3 0 81%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/templates/jinja/__init__.py 41 8 0 80%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/templates/jinja/environments.py 26 1 0 96%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/templates/jinja/extensions.py 25 8 0 68%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/templates/jinja/filters.py 10 3 0 70%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/templates/jinja/globals.py 9 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/test/__init__.py 2 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/test/client.py 379 200 0 47%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/urls/__init__.py 6 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/urls/base.py 65 20 0 69%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/urls/conf.py 42 14 0 67%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/urls/converters.py 34 7 0 79%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/urls/exceptions.py 5 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/urls/resolvers.py 392 99 0 75%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/utils/cache.py 136 105 0 23%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/utils/connection.py 55 10 0 82%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/utils/crypto.py 30 9 0 70%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/utils/datastructures.py 178 64 0 64%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/utils/dateparse.py 55 40 0 27%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/utils/deconstruct.py 22 8 0 64%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/utils/decorators.py 41 33 0 20%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/utils/deprecation.py 4 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/utils/duration.py 28 23 0 18%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/utils/encoding.py 91 47 0 48%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/utils/functional.py 224 77 0 66%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/utils/hashable.py 11 5 0 55%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/utils/html.py 185 131 0 29%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/utils/http.py 190 124 0 35%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/utils/inspect.py 39 21 0 46%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/utils/ipv6.py 18 14 0 22%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/utils/itercompat.py 6 5 0 17%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/utils/module_loading.py 36 15 0 58%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/utils/regex_helper.py 194 93 0 52%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/utils/safestring.py 28 15 0 46%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/utils/text.py 243 173 0 29%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/utils/timesince.py 60 50 0 17%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/utils/timezone.py 75 28 0 63%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/utils/tree.py 50 20 0 60%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/validators.py 294 145 0 51%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/views/__init__.py 6 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/views/base.py 59 14 0 76%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/views/errors.py 21 0 0 100%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/views/exceptions.py 4 2 0 50%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/views/forms.py 37 21 0 43%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/views/objects.py 107 71 0 34%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/views/redirect.py 40 22 0 45%
/Users/davegaeddert/Developer/dropseed/plain/plain/plain/views/templates.py 32 2 0 94%
Total 28513 16117 0 43%

No items found using the specified filter.

12 empty files skipped.