Tests / apps/projects/tests.py
ProjectsPageTest::test_no_project
First seen 2 years, 9 months ago in b9e98d9
CI
github-actions:test
5 runs
Average
65 ms
median 68 ms
max 87 ms
max 87 ms
Phases
Setup 0.69 ms
Call 64 ms
Teardown 0.18 ms
Categories
Database 36 ms
Other (Libraries, pytest, Unsampled, Templates) 29 ms
41 database queries per run
Needs 238 KB of memory (max 808 KB)
Duration per run
Where the time goes
Latest run in ci:github-actions:test, 18 minutes ago ·
open run
call86 ms98.8%
ProjectsPageTest.test_no_projectapps/projects/tests.py:109 response = self.client.get("/projects/", follow=True)65 ms74.8%
Client.getdjango/test/client.py:112449 ms56.1%
RequestFactory.getdjango/test/client.py:47549 ms56.1%
RequestFactory.genericdjango/test/client.py:67149 ms56.1%
Client.requestdjango/test/client.py:108249 ms56.1%
ClientHandler.__call__django/test/client.py:17342 ms48.1%
BaseHandler.load_middlewaredjango/core/handlers/base.py:6242 ms48.1%
WhiteNoiseMiddleware.__init__whitenoise/middleware.py:10442 ms48.1%
WhiteNoise.add_fileswhitenoise/base.py:10842 ms48.1%
WhiteNoise.update_files_dictionarywhitenoise/base.py:12030 ms34.7%
WhiteNoise.add_file_to_dictionarywhitenoise/base.py:13130 ms34.7%
WhiteNoise.get_static_filewhitenoise/base.py:20819 ms21.4%
StaticFile.__init__whitenoise/responders.py:7314 ms16.0%
StaticFile.get_headerswhitenoise/responders.py:1785 ms5.3%
StaticFile.get_headerswhitenoise/responders.py:1765 ms5.3%
formatdate<stdlib>/email/utils.py:2662 ms2.7%
StaticFile.get_headerswhitenoise/responders.py:1672 ms2.7%
StaticFile.__init__whitenoise/responders.py:762 ms2.7%
StaticFile.get_not_modified_responsewhitenoise/responders.py:1892 ms2.7%
<GC>~2 ms2.7%
StaticFile.__init__whitenoise/responders.py:752 ms2.7%
WhiteNoise.get_static_filewhitenoise/base.py:2039 ms10.7%
WhiteNoise.add_cache_headerswhitenoise/base.py:2249 ms10.7%
WhiteNoiseMiddleware.immutable_file_testwhitenoise/middleware.py:1767 ms8.0%
WhiteNoiseMiddleware.get_static_urlwhitenoise/middleware.py:1972 ms2.7%
URLMixin.urldebug_toolbar/panels/staticfiles.py:202 ms2.7%
WhiteNoise.update_files_dictionarywhitenoise/base.py:11512 ms13.4%
scantreewhitenoise/base.py:2629 ms10.7%
scantreewhitenoise/base.py:2629 ms10.7%
scantreewhitenoise/base.py:2627 ms8.0%
scantreewhitenoise/base.py:2627 ms8.0%
scantreewhitenoise/base.py:2625 ms5.3%
scantreewhitenoise/base.py:2645 ms5.3%
scantreewhitenoise/base.py:2642 ms2.7%
scantreewhitenoise/base.py:2642 ms2.7%
ClientHandler.__call__django/test/client.py:1867 ms8.0%
BaseHandler.get_responsedjango/core/handlers/base.py:1417 ms8.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms8.0%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:1307 ms8.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms8.0%
MiddlewareMixin.__call__django/utils/deprecation.py:3097 ms8.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms8.0%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:1237 ms8.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms8.0%
MiddlewareMixin.__call__django/utils/deprecation.py:3097 ms8.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms8.0%
MiddlewareMixin.__call__django/utils/deprecation.py:3097 ms8.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms8.0%
MiddlewareMixin.__call__django/utils/deprecation.py:3097 ms8.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms8.0%
MiddlewareMixin.__call__django/utils/deprecation.py:3097 ms8.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms8.0%
MiddlewareMixin.__call__django/utils/deprecation.py:3097 ms8.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms8.0%
MiddlewareMixin.__call__django/utils/deprecation.py:3097 ms8.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms8.0%
AccountMiddleware.<locals>.middlewareallauth/account/middleware.py:347 ms8.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms8.0%
BaseHandler._get_responsedjango/core/handlers/base.py:1987 ms8.0%
user_passes_test.<locals>.decorator.<locals>._view_wrapperdjango/contrib/auth/decorators.py:565 ms5.3%
login_required.<locals>.<lambda>django/contrib/auth/decorators.py:795 ms5.3%
new_method_proxy.<locals>.innerdjango/utils/functional.py:2515 ms5.3%
SimpleLazyObject._setupdjango/utils/functional.py:4045 ms5.3%
AuthenticationMiddleware.process_request.<locals>.<lambda>django/contrib/auth/middleware.py:405 ms5.3%
get_userdjango/contrib/auth/middleware.py:205 ms5.3%
get_userdjango/contrib/auth/__init__.py:3112 ms2.7%
_get_user_session_keydjango/contrib/auth/__init__.py:952 ms2.7%
SessionBase.__getitem__django/contrib/sessions/backends/base.py:552 ms2.7%
SessionBase._get_sessiondjango/contrib/sessions/backends/base.py:2512 ms2.7%
SessionStore.loaddjango/contrib/sessions/backends/db.py:552 ms2.7%
SessionStore._get_session_from_dbdjango/contrib/sessions/backends/db.py:342 ms2.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.7%
QuerySet.getdjango/db/models/query.py:6352 ms2.7%
QuerySet.__len__django/db/models/query.py:3722 ms2.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.7%
ModelIterable.__iter__django/db/models/query.py:952 ms2.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms2.7%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7952 ms2.7%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5782 ms2.7%
WhereNode.as_sqldjango/db/models/sql/where.py:1512 ms2.7%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5782 ms2.7%
BuiltinLookup.as_sqldjango/db/models/lookups.py:2382 ms2.7%
BuiltinLookup.process_lhsdjango/db/models/lookups.py:2302 ms2.7%
Lookup.process_lhsdjango/db/models/lookups.py:1092 ms2.7%
BaseExpression.resolve_expressiondjango/db/models/expressions.py:2972 ms2.7%
get_userdjango/contrib/auth/__init__.py:3182 ms2.7%
ModelBackend.get_userdjango/contrib/auth/backends.py:2322 ms2.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.7%
QuerySet.getdjango/db/models/query.py:6252 ms2.7%
QuerySet.filterdjango/db/models/query.py:15422 ms2.7%
QuerySet._filter_or_excludedjango/db/models/query.py:15602 ms2.7%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15702 ms2.7%
Query.add_qdjango/db/models/sql/query.py:16712 ms2.7%
Query._add_qdjango/db/models/sql/query.py:17032 ms2.7%
Query.build_filterdjango/db/models/sql/query.py:16132 ms2.7%
user_passes_test.<locals>.decorator.<locals>._view_wrapperdjango/contrib/auth/decorators.py:592 ms2.7%
homeapps/orgs/views.py:722 ms2.7%
current_organizationapps/orgs/views.py:542 ms2.7%
ensure_organizationapps/orgs/models.py:130 organization = Organization.objects.create(2 ms2.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.7%
QuerySet.createdjango/db/models/query.py:6692 ms2.7%
Model.savedjango/db/models/base.py:8742 ms2.7%
Model.save_basedjango/db/models/base.py:9662 ms2.7%
Model._save_tabledjango/db/models/base.py:11672 ms2.7%
Model._do_insertdjango/db/models/base.py:12182 ms2.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.7%
QuerySet._insertdjango/db/models/query.py:19182 ms2.7%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms2.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.7%
Cursor.executepsycopg/cursor.py:1132 ms2.7%
Connection.waitpsycopg/connection.py:4952 ms2.7%
Client.getdjango/test/client.py:113316 ms18.7%
Client._handle_redirectsdjango/test/client.py:138416 ms18.7%
ClientMixin._follow_redirectdjango/test/client.py:100216 ms18.7%
Client.getdjango/test/client.py:112416 ms18.7%
RequestFactory.getdjango/test/client.py:47516 ms18.7%
RequestFactory.genericdjango/test/client.py:67116 ms18.7%
Client.requestdjango/test/client.py:108216 ms18.7%
ClientHandler.__call__django/test/client.py:18616 ms18.7%
BaseHandler.get_responsedjango/core/handlers/base.py:14116 ms18.7%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5516 ms18.7%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:13016 ms18.7%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5516 ms18.7%
MiddlewareMixin.__call__django/utils/deprecation.py:30916 ms18.7%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5516 ms18.7%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:12316 ms18.7%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5516 ms18.7%
MiddlewareMixin.__call__django/utils/deprecation.py:30914 ms16.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5514 ms16.0%
MiddlewareMixin.__call__django/utils/deprecation.py:30914 ms16.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5514 ms16.0%
MiddlewareMixin.__call__django/utils/deprecation.py:30914 ms16.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5514 ms16.0%
MiddlewareMixin.__call__django/utils/deprecation.py:30914 ms16.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5514 ms16.0%
MiddlewareMixin.__call__django/utils/deprecation.py:30914 ms16.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5514 ms16.0%
MiddlewareMixin.__call__django/utils/deprecation.py:30914 ms16.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5514 ms16.0%
AccountMiddleware.<locals>.middlewareallauth/account/middleware.py:3414 ms16.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5514 ms16.0%
BaseHandler._get_responsedjango/core/handlers/base.py:19814 ms16.0%
user_passes_test.<locals>.decorator.<locals>._view_wrapperdjango/contrib/auth/decorators.py:5912 ms13.4%
project_createapps/orgs/views.py:1417 ms8.0%
org_shellapps/orgs/views.py:33 organizations = [] if user.is_anonymous else list(Organization.objects.filter(membership__user=user))2 ms2.7%
QuerySet.__iter__django/db/models/query.py:3902 ms2.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.7%
ModelIterable.__iter__django/db/models/query.py:952 ms2.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.7%
Cursor.executepsycopg/cursor.py:1132 ms2.7%
Connection.waitpsycopg/connection.py:4952 ms2.7%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms2.7%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms2.7%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms2.7%
org_shellapps/orgs/views.py:40 "org_projects": list(organization.project_set.order_by("name")) if member else [],2 ms2.7%
QuerySet.__iter__django/db/models/query.py:3902 ms2.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.7%
ModelIterable.__iter__django/db/models/query.py:952 ms2.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.7%
Cursor.executepsycopg/cursor.py:1132 ms2.7%
Connection.waitpsycopg/connection.py:4952 ms2.7%
org_shellapps/orgs/views.py:422 ms2.7%
Organization.is_ownerapps/orgs/models.py:65 return user.is_authenticated and self.membership_set.filter(user=user, role=Membership.Role.OWNER).exists()2 ms2.7%
QuerySet.existsdjango/db/models/query.py:13372 ms2.7%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms2.7%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms2.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.7%
Cursor.executepsycopg/cursor.py:1132 ms2.7%
Connection.waitpsycopg/connection.py:4952 ms2.7%
project_createapps/orgs/views.py:137 return render(5 ms5.3%
renderdjango/shortcuts.py:252 ms2.7%
render_to_stringdjango/template/loader.py:622 ms2.7%
Template.renderdjango/template/backends/django.py:1072 ms2.7%
Template.renderdjango/template/base.py:1742 ms2.7%
instrumented_test_renderdjango/test/utils.py:1142 ms2.7%
NodeList.renderdjango/template/base.py:10912 ms2.7%
Node.render_annotateddjango/template/base.py:10522 ms2.7%
ExtendsNode.renderdjango/template/loader_tags.py:1602 ms2.7%
instrumented_test_renderdjango/test/utils.py:1142 ms2.7%
NodeList.renderdjango/template/base.py:10912 ms2.7%
Node.render_annotateddjango/template/base.py:10522 ms2.7%
ExtendsNode.renderdjango/template/loader_tags.py:1602 ms2.7%
instrumented_test_renderdjango/test/utils.py:1142 ms2.7%
NodeList.renderdjango/template/base.py:10912 ms2.7%
Node.render_annotateddjango/template/base.py:10522 ms2.7%
BlockNode.renderdjango/template/loader_tags.py:662 ms2.7%
NodeList.renderdjango/template/base.py:10912 ms2.7%
Node.render_annotateddjango/template/base.py:10522 ms2.7%
IfNode.renderdjango/template/defaulttags.py:3332 ms2.7%
NodeList.renderdjango/template/base.py:10912 ms2.7%
Node.render_annotateddjango/template/base.py:10522 ms2.7%
IfNode.renderdjango/template/defaulttags.py:3332 ms2.7%
NodeList.renderdjango/template/base.py:10912 ms2.7%
Node.render_annotateddjango/template/base.py:10522 ms2.7%
SimpleNode.renderdjango/template/library.py:3252 ms2.7%
heroicon_miniheroicons/templatetags/heroicons.py:182 ms2.7%
_render_iconheroicons/templatetags/heroicons.py:392 ms2.7%
_render_iconheroicons/__init__.py:632 ms2.7%
tostring<stdlib>/xml/etree/ElementTree.py:11102 ms2.7%
renderdjango/shortcuts.py:262 ms2.7%
HttpResponse.__init__django/http/response.py:3822 ms2.7%
user_passes_test.<locals>.decorator.<locals>._view_wrapperdjango/contrib/auth/decorators.py:562 ms2.7%
login_required.<locals>.<lambda>django/contrib/auth/decorators.py:792 ms2.7%
new_method_proxy.<locals>.innerdjango/utils/functional.py:2512 ms2.7%
SimpleLazyObject._setupdjango/utils/functional.py:4042 ms2.7%
AuthenticationMiddleware.process_request.<locals>.<lambda>django/contrib/auth/middleware.py:402 ms2.7%
get_userdjango/contrib/auth/middleware.py:202 ms2.7%
get_userdjango/contrib/auth/__init__.py:3112 ms2.7%
_get_user_session_keydjango/contrib/auth/__init__.py:952 ms2.7%
SessionBase.__getitem__django/contrib/sessions/backends/base.py:552 ms2.7%
SessionBase._get_sessiondjango/contrib/sessions/backends/base.py:2512 ms2.7%
SessionStore.loaddjango/contrib/sessions/backends/db.py:552 ms2.7%
SessionStore._get_session_from_dbdjango/contrib/sessions/backends/db.py:342 ms2.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.7%
QuerySet.getdjango/db/models/query.py:6352 ms2.7%
QuerySet.__len__django/db/models/query.py:3722 ms2.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.7%
ModelIterable.__iter__django/db/models/query.py:952 ms2.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.7%
Cursor.executepsycopg/cursor.py:1132 ms2.7%
Connection.waitpsycopg/connection.py:4952 ms2.7%
MiddlewareMixin.__call__django/utils/deprecation.py:3112 ms2.7%
SessionMiddleware.process_responsedjango/contrib/sessions/middleware.py:592 ms2.7%
SessionStore.savedjango/contrib/sessions/backends/db.py:1272 ms2.7%
Model.savedjango/db/models/base.py:8742 ms2.7%
Model.save_basedjango/db/models/base.py:9662 ms2.7%
Model._save_tabledjango/db/models/base.py:11102 ms2.7%
Model._do_updatedjango/db/models/base.py:12112 ms2.7%
QuerySet._updatedjango/db/models/query.py:13272 ms2.7%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21402 ms2.7%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms2.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.7%
Cursor.executepsycopg/cursor.py:1132 ms2.7%
Connection.waitpsycopg/connection.py:4952 ms2.7%
ProjectsPageTest.setUpapps/projects/tests.py:100 self.client.force_login(self.user)14 ms16.0%
ClientMixin.force_logindjango/test/client.py:85514 ms16.0%
ClientMixin._logindjango/test/client.py:88112 ms13.4%
logindjango/contrib/auth/__init__.py:1877 ms8.0%
SessionBase.cycle_keydjango/contrib/sessions/backends/base.py:4345 ms5.3%
SessionStore.createdjango/contrib/sessions/backends/db.py:702 ms2.7%
SessionBase._get_new_session_keydjango/contrib/sessions/backends/base.py:1982 ms2.7%
SessionStore.existsdjango/contrib/sessions/backends/db.py:632 ms2.7%
QuerySet.existsdjango/db/models/query.py:13372 ms2.7%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms2.7%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms2.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.7%
Cursor.executepsycopg/cursor.py:1132 ms2.7%
Connection.waitpsycopg/connection.py:4952 ms2.7%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms2.7%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms2.7%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms2.7%
SessionStore.createdjango/contrib/sessions/backends/db.py:742 ms2.7%
SessionStore.savedjango/contrib/sessions/backends/db.py:1262 ms2.7%
Atomic.__exit__django/db/transaction.py:2472 ms2.7%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms2.7%
BaseDatabaseWrapper.savepoint_commitdjango/db/backends/base/base.py:4312 ms2.7%
BaseDatabaseWrapper._savepoint_commitdjango/db/backends/base/base.py:3752 ms2.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.7%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms2.7%
Cursor.executepsycopg/cursor.py:1132 ms2.7%
Connection.waitpsycopg/connection.py:4952 ms2.7%
SessionBase.cycle_keydjango/contrib/sessions/backends/base.py:4372 ms2.7%
SessionStore.deletedjango/contrib/sessions/backends/db.py:1752 ms2.7%
Model.deletedjango/db/models/base.py:12982 ms2.7%
Collector.deletedjango/db/models/deletion.py:4522 ms2.7%
DeleteQuery.delete_batchdjango/db/models/sql/subqueries.py:432 ms2.7%
DeleteQuery.do_querydjango/db/models/sql/subqueries.py:252 ms2.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.7%
Cursor.executepsycopg/cursor.py:1132 ms2.7%
Connection.waitpsycopg/connection.py:4952 ms2.7%
logindjango/contrib/auth/__init__.py:1752 ms2.7%
SessionBase.__contains__django/contrib/sessions/backends/base.py:522 ms2.7%
SessionBase._get_sessiondjango/contrib/sessions/backends/base.py:2512 ms2.7%
SessionStore.loaddjango/contrib/sessions/backends/db.py:552 ms2.7%
SessionStore._get_session_from_dbdjango/contrib/sessions/backends/db.py:342 ms2.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.7%
QuerySet.getdjango/db/models/query.py:6352 ms2.7%
QuerySet.__len__django/db/models/query.py:3722 ms2.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.7%
ModelIterable.__iter__django/db/models/query.py:952 ms2.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms2.7%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms2.7%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:862 ms2.7%
SQLCompiler.setup_querydjango/db/models/sql/compiler.py:752 ms2.7%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:3172 ms2.7%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5782 ms2.7%
logindjango/contrib/auth/__init__.py:1972 ms2.7%
Signal.senddjango/dispatch/dispatcher.py:2092 ms2.7%
update_last_logindjango/contrib/auth/models.py:242 ms2.7%
AbstractBaseUser.savedjango/contrib/auth/base_user.py:622 ms2.7%
Model.savedjango/db/models/base.py:8742 ms2.7%
Model.save_basedjango/db/models/base.py:9662 ms2.7%
Model._save_tabledjango/db/models/base.py:11102 ms2.7%
Model._do_updatedjango/db/models/base.py:12112 ms2.7%
QuerySet._updatedjango/db/models/query.py:13272 ms2.7%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21402 ms2.7%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms2.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.7%
Cursor.executepsycopg/cursor.py:1132 ms2.7%
Connection.waitpsycopg/connection.py:4952 ms2.7%
ClientMixin._logindjango/test/client.py:8832 ms2.7%
SessionStore.savedjango/contrib/sessions/backends/db.py:1262 ms2.7%
Atomic.__exit__django/db/transaction.py:2472 ms2.7%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms2.7%
BaseDatabaseWrapper.savepoint_commitdjango/db/backends/base/base.py:4312 ms2.7%
BaseDatabaseWrapper._savepoint_commitdjango/db/backends/base/base.py:3752 ms2.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.7%
ProjectsPageTest.test_no_projectapps/projects/tests.py:110 organization = Membership.objects.get(user=self.user).organization # created for them5 ms5.3%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.7%
QuerySet.getdjango/db/models/query.py:6352 ms2.7%
QuerySet.__len__django/db/models/query.py:3722 ms2.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.7%
ModelIterable.__iter__django/db/models/query.py:952 ms2.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.7%
Cursor.executepsycopg/cursor.py:1132 ms2.7%
Connection.waitpsycopg/connection.py:4952 ms2.7%
ForwardManyToOneDescriptor.__get__django/db/models/fields/related_descriptors.py:2572 ms2.7%
ForwardManyToOneDescriptor.get_objectdjango/db/models/fields/related_descriptors.py:2222 ms2.7%
QuerySet.getdjango/db/models/query.py:6352 ms2.7%
QuerySet.__len__django/db/models/query.py:3722 ms2.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.7%
ModelIterable.__iter__django/db/models/query.py:952 ms2.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.7%
TransactionTestCase._post_teardowndjango/test/testcases.py:1240 self._fixture_teardown()2 ms2.7%
TestCase._fixture_teardowndjango/test/testcases.py:14952 ms2.7%
DatabaseWrapper.check_constraintsdjango/db/backends/postgresql/base.py:4842 ms2.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.7%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms2.7%
Cursor.executepsycopg/cursor.py:1132 ms2.7%
Connection.waitpsycopg/connection.py:4952 ms2.7%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms2.7%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms2.7%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms2.7%
Estimated from 37 samples; phase durations are exact. Frames from pytest and pluggy are
hidden
.
Hot lines in your code
|
apps/projects/tests.py:109
response = self.client.get("/projects/", follow=True)
ProjectsPageTest.test_no_project
· Libraries
|
51 ms |
|
apps/projects/tests.py:100
self.client.force_login(self.user)
ProjectsPageTest.setUp
· Database
|
14 ms |
|
apps/orgs/views.py:137
return render(
project_create
· Templates
|
5 ms |
|
apps/projects/tests.py:110
organization = Membership.objects.get(user=self.user).organization # created for them
ProjectsPageTest.test_no_project
· Database
|
5 ms |
|
apps/orgs/models.py:130
organization = Organization.objects.create(
ensure_organization
· Database
|
2 ms |
|
apps/orgs/views.py:33
organizations = [] if user.is_anonymous else list(Organization.objects.filter(membership__user=user))
org_shell
· Database
|
2 ms |
|
apps/orgs/views.py:40
"org_projects": list(organization.project_set.order_by("name")) if member else [],
org_shell
· Database
|
2 ms |
|
apps/orgs/models.py:65
return user.is_authenticated and self.membership_set.filter(user=user, role=Membership.Role.OWNER).exists()
Organization.is_owner
· Database
|
2 ms |
Fixtures
Exact setup time| _dj_autoclear_mailbox function | 0.06 ms |
| _template_string_if_invalid_marker function | 0.06 ms |
| _django_db_marker function | 0.05 ms |
| _django_set_urlconf function | 0.05 ms |
| _live_server_helper function | 0.04 ms |
| _django_clear_site_cache function | 0.03 ms |
| monkeypatch function | 0.02 ms |
Database
41 queries · 14 ms
Repeated queries are usually N+1 lookups: fetch them once with select_related / prefetch_related (or selectinload).
3×
SELECT "django_session"."session_key", "django_session"."session_data", "django_session"."expire_date" FROM "django_session" WHERE ("django_session"."expire_date" > %s AND "django_session"."session_key" = %s) LIMIT ?
Biggest pieces of work
|
call test body
apps/projects/tests.py:109
|
70 ms |
|
call setUp
apps/projects/tests.py:100
|
14 ms |
|
call _post_teardown
django/test/testcases.py:1240
|
2 ms |
Reliability
5 results · 0 CI failures · 0 local failuresThis test hasn't failed recently.
History
Latest 50 results, oldest first in the strip| When | Environment | Outcome | Duration | |
|---|---|---|---|---|
| 18 minutes ago | CI github-actions:test | passed | 87 ms | Profile |
| 43 minutes ago | CI github-actions:test | passed | 62 ms | Profile |
| 7 hours ago | CI github-actions:test | passed | 73 ms | Profile |
| 7 hours ago | CI github-actions:test | passed | 35 ms | Profile |
| 7 hours ago | CI github-actions:test | passed | 68 ms | Profile |
| 2 years ago | CI github-actions | passed | 121 ms | Run |
| 2 years, 2 months ago | CI github-actions | passed | 116 ms | Run |
| 2 years, 3 months ago | CI github-actions | passed | 131 ms | Run |
| 2 years, 4 months ago | CI github-actions | passed | 132 ms | Run |
| 2 years, 4 months ago | CI github-actions | passed | 128 ms | Run |
| 2 years, 4 months ago | CI github-actions | passed | 128 ms | Run |
| 2 years, 4 months ago | CI github-actions | passed | 114 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 114 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 111 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 114 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 113 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 116 ms | Run |
| 2 years, 6 months ago | CI github-actions | passed | 115 ms | Run |
| 2 years, 6 months ago | CI github-actions | passed | 116 ms | Run |
| 2 years, 6 months ago | CI github-actions | passed | 111 ms | Run |