Tests / apps/projects/tests.py
ProjectTestsPage::test_project_with_tests
First seen 2 years, 9 months ago in d87c7a8
CI
github-actions:test
5 runs
Average
57 ms
median 61 ms
max 67 ms
max 67 ms
Phases
Setup 0.71 ms
Call 56 ms
Teardown 0.62 ms
Categories
Database 29 ms
App code 0.46 ms
Test code 0.34 ms
Other (Libraries, Unsampled, Templates, pytest) 27 ms
35 database queries per run
Needs 171 KB of memory (max 584 KB)
Duration per run
Where the time goes
Latest run in ci:github-actions:test, 45 minutes ago ·
open run
setup0.74 ms1.2%
__init____init__:-10.74 ms1.2%
call63 ms97.7%
ProjectTestsPage.test_project_with_testsapps/projects/tests.py:359 response = self.client.get(self.url)49 ms76.6%
Client.getdjango/test/client.py:112449 ms76.6%
RequestFactory.getdjango/test/client.py:47549 ms76.6%
RequestFactory.genericdjango/test/client.py:67149 ms76.6%
Client.requestdjango/test/client.py:108247 ms74.0%
ClientHandler.__call__django/test/client.py:17324 ms37.0%
BaseHandler.load_middlewaredjango/core/handlers/base.py:6224 ms37.0%
WhiteNoiseMiddleware.__init__whitenoise/middleware.py:10424 ms37.0%
WhiteNoise.add_fileswhitenoise/base.py:10824 ms37.0%
WhiteNoise.update_files_dictionarywhitenoise/base.py:12019 ms29.1%
WhiteNoise.add_file_to_dictionarywhitenoise/base.py:13119 ms29.1%
WhiteNoise.get_static_filewhitenoise/base.py:20810 ms15.8%
StaticFile.__init__whitenoise/responders.py:735 ms7.9%
StaticFile.get_headerswhitenoise/responders.py:1762 ms2.6%
formatdate<stdlib>/email/utils.py:2662 ms2.6%
StaticFile.get_headerswhitenoise/responders.py:1782 ms2.6%
parsedate<stdlib>/email/_parseaddr.py:1852 ms2.6%
StaticFile.get_headerswhitenoise/responders.py:1672 ms2.6%
StaticFile.__init__whitenoise/responders.py:742 ms2.6%
parsedate<stdlib>/email/_parseaddr.py:1852 ms2.6%
StaticFile.__init__whitenoise/responders.py:722 ms2.6%
StaticFile.get_file_statswhitenoise/responders.py:1612 ms2.6%
__init____init__:-12 ms2.6%
FileEntry.__init__whitenoise/responders.py:2632 ms2.6%
FileEntry.stat_regular_filewhitenoise/responders.py:2762 ms2.6%
<GC>~2 ms2.6%
StaticFile.__init__whitenoise/responders.py:772 ms2.6%
StaticFile.get_alternativeswhitenoise/responders.py:2002 ms2.6%
WhiteNoise.get_static_filewhitenoise/base.py:2038 ms13.2%
WhiteNoise.add_cache_headerswhitenoise/base.py:2248 ms13.2%
WhiteNoiseMiddleware.immutable_file_testwhitenoise/middleware.py:1767 ms10.6%
WhiteNoiseMiddleware.get_static_urlwhitenoise/middleware.py:1977 ms10.6%
URLMixin.urldebug_toolbar/panels/staticfiles.py:203 ms5.3%
HashedFilesMixin.urldjango/contrib/staticfiles/storage.py:2053 ms5.3%
HashedFilesMixin._urldjango/contrib/staticfiles/storage.py:1862 ms2.6%
HashedFilesMixin._urldjango/contrib/staticfiles/storage.py:1842 ms2.6%
ManifestFilesMixin.stored_namedjango/contrib/staticfiles/storage.py:5182 ms2.6%
WhiteNoise.update_files_dictionarywhitenoise/base.py:1155 ms7.9%
scantreewhitenoise/base.py:2625 ms7.9%
scantreewhitenoise/base.py:2625 ms7.9%
scantreewhitenoise/base.py:2623 ms5.3%
scantreewhitenoise/base.py:2623 ms5.3%
scantreewhitenoise/base.py:2642 ms2.6%
scantreewhitenoise/base.py:2622 ms2.6%
scantreewhitenoise/base.py:2642 ms2.6%
scantreewhitenoise/base.py:2642 ms2.6%
ClientHandler.__call__django/test/client.py:18624 ms37.0%
BaseHandler.get_responsedjango/core/handlers/base.py:14124 ms37.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5524 ms37.0%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:13024 ms37.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5524 ms37.0%
MiddlewareMixin.__call__django/utils/deprecation.py:30924 ms37.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5524 ms37.0%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:12324 ms37.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5524 ms37.0%
MiddlewareMixin.__call__django/utils/deprecation.py:30922 ms34.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5522 ms34.3%
MiddlewareMixin.__call__django/utils/deprecation.py:30922 ms34.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5522 ms34.3%
MiddlewareMixin.__call__django/utils/deprecation.py:30922 ms34.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5522 ms34.3%
MiddlewareMixin.__call__django/utils/deprecation.py:30922 ms34.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5522 ms34.3%
MiddlewareMixin.__call__django/utils/deprecation.py:30922 ms34.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5522 ms34.3%
MiddlewareMixin.__call__django/utils/deprecation.py:30922 ms34.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5522 ms34.3%
AccountMiddleware.<locals>.middlewareallauth/account/middleware.py:3422 ms34.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5522 ms34.3%
BaseHandler._get_responsedjango/core/handlers/base.py:19822 ms34.3%
project_testsapps/projects/urls.py:1777 ms10.6%
find_projectapps/projects/urls.py:525 ms7.9%
can_viewapps/projects/urls.py:335 ms7.9%
can_manage_projectapps/projects/urls.py:38 if not user.is_authenticated:3 ms5.3%
new_method_proxy.<locals>.innerdjango/utils/functional.py:2513 ms5.3%
SimpleLazyObject._setupdjango/utils/functional.py:4043 ms5.3%
AuthenticationMiddleware.process_request.<locals>.<lambda>django/contrib/auth/middleware.py:403 ms5.3%
get_userdjango/contrib/auth/middleware.py:203 ms5.3%
get_userdjango/contrib/auth/__init__.py:3112 ms2.6%
_get_user_session_keydjango/contrib/auth/__init__.py:952 ms2.6%
SessionBase.__getitem__django/contrib/sessions/backends/base.py:552 ms2.6%
SessionBase._get_sessiondjango/contrib/sessions/backends/base.py:2512 ms2.6%
SessionStore.loaddjango/contrib/sessions/backends/db.py:552 ms2.6%
SessionStore._get_session_from_dbdjango/contrib/sessions/backends/db.py:342 ms2.6%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.6%
QuerySet.getdjango/db/models/query.py:6352 ms2.6%
QuerySet.__len__django/db/models/query.py:3722 ms2.6%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.6%
ModelIterable.__iter__django/db/models/query.py:952 ms2.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16222 ms2.6%
get_userdjango/contrib/auth/__init__.py:3182 ms2.6%
ModelBackend.get_userdjango/contrib/auth/backends.py:2322 ms2.6%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.6%
QuerySet.getdjango/db/models/query.py:6352 ms2.6%
QuerySet.__len__django/db/models/query.py:3722 ms2.6%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.6%
ModelIterable.__iter__django/db/models/query.py:952 ms2.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.6%
Cursor.executepsycopg/cursor.py:1132 ms2.6%
Connection.waitpsycopg/connection.py:4952 ms2.6%
BaseCursor._execute_genpsycopg/_cursor_base.py:2052 ms2.6%
BaseCursor._convert_querypsycopg/_cursor_base.py:4652 ms2.6%
PostgresClientQuery.convertpsycopg/_queries.py:2892 ms2.6%
PostgresClientQuery.dumppsycopg/_queries.py:2982 ms2.6%
can_manage_projectapps/projects/urls.py:40 return user.is_superuser or project.organization.membership_set.filter(user=user).exists()2 ms2.6%
QuerySet.existsdjango/db/models/query.py:13372 ms2.6%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms2.6%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms2.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms2.6%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:9812 ms2.6%
find_projectapps/projects/urls.py:49 project = get_object_or_404(2 ms2.6%
get_object_or_404django/shortcuts.py:902 ms2.6%
QuerySet.getdjango/db/models/query.py:6352 ms2.6%
QuerySet.__len__django/db/models/query.py:3722 ms2.6%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.6%
ModelIterable.__iter__django/db/models/query.py:952 ms2.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.6%
Cursor.executepsycopg/cursor.py:1132 ms2.6%
Connection.waitpsycopg/connection.py:4952 ms2.6%
project_testsapps/projects/urls.py:1807 ms10.6%
shellapps/projects/urls.py:71 return org_shell(request, project.organization if project else None, section) | {5 ms7.9%
org_shellapps/orgs/views.py:33 organizations = [] if user.is_anonymous else list(Organization.objects.filter(membership__user=user))2 ms2.6%
QuerySet.__iter__django/db/models/query.py:3902 ms2.6%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.6%
ModelIterable.__iter__django/db/models/query.py:952 ms2.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.6%
Cursor.executepsycopg/cursor.py:1132 ms2.6%
Connection.waitpsycopg/connection.py:4952 ms2.6%
org_shellapps/orgs/views.py:40 "org_projects": list(organization.project_set.order_by("name")) if member else [],2 ms2.6%
QuerySet.__iter__django/db/models/query.py:3902 ms2.6%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.6%
ModelIterable.__iter__django/db/models/query.py:952 ms2.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.6%
Cursor.executepsycopg/cursor.py:1132 ms2.6%
Connection.waitpsycopg/connection.py:4952 ms2.6%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms2.6%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms2.6%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms2.6%
org_shellapps/orgs/views.py:422 ms2.6%
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.6%
QuerySet.existsdjango/db/models/query.py:13372 ms2.6%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms2.6%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms2.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.6%
Cursor.executepsycopg/cursor.py:1132 ms2.6%
Connection.waitpsycopg/connection.py:4952 ms2.6%
BaseCursor._execute_genpsycopg/_cursor_base.py:2052 ms2.6%
BaseCursor._convert_querypsycopg/_cursor_base.py:4652 ms2.6%
PostgresClientQuery.convertpsycopg/_queries.py:2892 ms2.6%
PostgresClientQuery.dumppsycopg/_queries.py:2992 ms2.6%
PostgresClientQuery.dump.<locals>.<genexpr>psycopg/_queries.py:3002 ms2.6%
shellapps/projects/urls.py:732 ms2.6%
can_manageapps/projects/urls.py:442 ms2.6%
can_manage_projectapps/projects/urls.py:40 return user.is_superuser or project.organization.membership_set.filter(user=user).exists()2 ms2.6%
QuerySet.existsdjango/db/models/query.py:13372 ms2.6%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms2.6%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms2.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.6%
Cursor.executepsycopg/cursor.py:1132 ms2.6%
Connection.waitpsycopg/connection.py:4952 ms2.6%
project_testsapps/projects/urls.py:259 return render(request, "project_tests.html", context)5 ms7.9%
renderdjango/shortcuts.py:255 ms7.9%
render_to_stringdjango/template/loader.py:625 ms7.9%
Template.renderdjango/template/backends/django.py:1075 ms7.9%
Template.renderdjango/template/base.py:1745 ms7.9%
instrumented_test_renderdjango/test/utils.py:1145 ms7.9%
NodeList.renderdjango/template/base.py:10915 ms7.9%
Node.render_annotateddjango/template/base.py:10525 ms7.9%
ExtendsNode.renderdjango/template/loader_tags.py:1605 ms7.9%
instrumented_test_renderdjango/test/utils.py:1145 ms7.9%
NodeList.renderdjango/template/base.py:10915 ms7.9%
Node.render_annotateddjango/template/base.py:10525 ms7.9%
ExtendsNode.renderdjango/template/loader_tags.py:1605 ms7.9%
instrumented_test_renderdjango/test/utils.py:1145 ms7.9%
NodeList.renderdjango/template/base.py:10915 ms7.9%
Node.render_annotateddjango/template/base.py:10525 ms7.9%
BlockNode.renderdjango/template/loader_tags.py:665 ms7.9%
NodeList.renderdjango/template/base.py:10915 ms7.9%
Node.render_annotateddjango/template/base.py:10525 ms7.9%
IfNode.renderdjango/template/defaulttags.py:3333 ms5.3%
NodeList.renderdjango/template/base.py:10913 ms5.3%
Node.render_annotateddjango/template/base.py:10523 ms5.3%
IfNode.renderdjango/template/defaulttags.py:3332 ms2.6%
NodeList.renderdjango/template/base.py:10912 ms2.6%
Node.render_annotateddjango/template/base.py:10522 ms2.6%
SimpleNode.renderdjango/template/library.py:3252 ms2.6%
heroicon_miniheroicons/templatetags/heroicons.py:182 ms2.6%
SimpleNode.renderdjango/template/library.py:3252 ms2.6%
heroicon_miniheroicons/templatetags/heroicons.py:182 ms2.6%
_render_iconheroicons/templatetags/heroicons.py:392 ms2.6%
_render_iconheroicons/__init__.py:632 ms2.6%
tostring<stdlib>/xml/etree/ElementTree.py:11102 ms2.6%
ElementTree.write<stdlib>/xml/etree/ElementTree.py:7492 ms2.6%
_serialize_xml<stdlib>/xml/etree/ElementTree.py:9122 ms2.6%
BlockNode.renderdjango/template/loader_tags.py:662 ms2.6%
NodeList.renderdjango/template/base.py:10912 ms2.6%
Node.render_annotateddjango/template/base.py:10522 ms2.6%
IfNode.renderdjango/template/defaulttags.py:3332 ms2.6%
NodeList.renderdjango/template/base.py:10912 ms2.6%
Node.render_annotateddjango/template/base.py:10522 ms2.6%
IfNode.renderdjango/template/defaulttags.py:3322 ms2.6%
Page.__len__django/core/paginator.py:3192 ms2.6%
QuerySet.__len__django/db/models/query.py:3722 ms2.6%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.6%
ValuesIterable.__iter__django/db/models/query.py:2222 ms2.6%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms2.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.6%
Cursor.executepsycopg/cursor.py:1132 ms2.6%
Connection.waitpsycopg/connection.py:4952 ms2.6%
project_testsapps/projects/urls.py:248 tests.annotate(2 ms2.6%
QuerySet.annotatedjango/db/models/query.py:16992 ms2.6%
QuerySet._annotatedjango/db/models/query.py:17512 ms2.6%
project_testsapps/projects/urls.py:257 page = paginator.get_page(request.GET.get("page"))2 ms2.6%
Paginator.get_pagedjango/core/paginator.py:1682 ms2.6%
Paginator.validate_numberdjango/core/paginator.py:1602 ms2.6%
cached_property.__get__django/utils/functional.py:472 ms2.6%
Paginator.num_pagesdjango/core/paginator.py:1952 ms2.6%
cached_property.__get__django/utils/functional.py:472 ms2.6%
Paginator.countdjango/core/paginator.py:1892 ms2.6%
QuerySet.countdjango/db/models/query.py:6102 ms2.6%
Query.get_countdjango/db/models/sql/query.py:6512 ms2.6%
Query.get_aggregationdjango/db/models/sql/query.py:6332 ms2.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.6%
MiddlewareMixin.__call__django/utils/deprecation.py:3112 ms2.6%
SessionMiddleware.process_responsedjango/contrib/sessions/middleware.py:592 ms2.6%
SessionStore.savedjango/contrib/sessions/backends/db.py:1272 ms2.6%
Model.savedjango/db/models/base.py:8742 ms2.6%
Model.save_basedjango/db/models/base.py:9662 ms2.6%
Model._save_tabledjango/db/models/base.py:11102 ms2.6%
Model._do_updatedjango/db/models/base.py:11882 ms2.6%
QuerySet.filterdjango/db/models/query.py:15422 ms2.6%
QuerySet._filter_or_excludedjango/db/models/query.py:15602 ms2.6%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15702 ms2.6%
Query.add_qdjango/db/models/sql/query.py:16712 ms2.6%
Query._add_qdjango/db/models/sql/query.py:17032 ms2.6%
Client.requestdjango/test/client.py:10972 ms2.6%
ProjectTestsPage.setUpapps/projects/tests.py:337 self.client.force_login(self.user)12 ms18.5%
ClientMixin.force_logindjango/test/client.py:85510 ms15.8%
ClientMixin._logindjango/test/client.py:8817 ms10.6%
logindjango/contrib/auth/__init__.py:1873 ms5.3%
SessionBase.cycle_keydjango/contrib/sessions/backends/base.py:4342 ms2.6%
SessionStore.createdjango/contrib/sessions/backends/db.py:742 ms2.6%
SessionStore.savedjango/contrib/sessions/backends/db.py:1272 ms2.6%
Model.savedjango/db/models/base.py:8742 ms2.6%
Model.save_basedjango/db/models/base.py:9662 ms2.6%
Model._save_tabledjango/db/models/base.py:11672 ms2.6%
Model._do_insertdjango/db/models/base.py:12182 ms2.6%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.6%
QuerySet._insertdjango/db/models/query.py:19182 ms2.6%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms2.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.6%
Cursor.executepsycopg/cursor.py:1132 ms2.6%
Connection.waitpsycopg/connection.py:4952 ms2.6%
BaseCursor._execute_genpsycopg/_cursor_base.py:2052 ms2.6%
BaseCursor._convert_querypsycopg/_cursor_base.py:4652 ms2.6%
PostgresClientQuery.convertpsycopg/_queries.py:2892 ms2.6%
PostgresClientQuery.dumppsycopg/_queries.py:2992 ms2.6%
SessionBase.cycle_keydjango/contrib/sessions/backends/base.py:4372 ms2.6%
SessionStore.deletedjango/contrib/sessions/backends/db.py:1752 ms2.6%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.6%
QuerySet.getdjango/db/models/query.py:6352 ms2.6%
QuerySet.__len__django/db/models/query.py:3722 ms2.6%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.6%
ModelIterable.__iter__django/db/models/query.py:952 ms2.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.6%
Cursor.executepsycopg/cursor.py:1132 ms2.6%
Connection.waitpsycopg/connection.py:4952 ms2.6%
logindjango/contrib/auth/__init__.py:1732 ms2.6%
AbstractBaseUser.get_session_auth_hashdjango/contrib/auth/base_user.py:1362 ms2.6%
AbstractBaseUser._get_session_auth_hashdjango/contrib/auth/base_user.py:1442 ms2.6%
salted_hmacdjango/utils/crypto.py:452 ms2.6%
new<stdlib>/hmac.py:2302 ms2.6%
logindjango/contrib/auth/__init__.py:1972 ms2.6%
Signal.senddjango/dispatch/dispatcher.py:2092 ms2.6%
update_last_logindjango/contrib/auth/models.py:242 ms2.6%
AbstractBaseUser.savedjango/contrib/auth/base_user.py:622 ms2.6%
Model.savedjango/db/models/base.py:8742 ms2.6%
Model.save_basedjango/db/models/base.py:9662 ms2.6%
Model._save_tabledjango/db/models/base.py:11102 ms2.6%
ClientMixin._logindjango/test/client.py:8762 ms2.6%
ClientMixin.sessiondjango/test/client.py:8122 ms2.6%
SessionStore.savedjango/contrib/sessions/backends/db.py:1212 ms2.6%
SessionStore.createdjango/contrib/sessions/backends/db.py:742 ms2.6%
SessionStore.savedjango/contrib/sessions/backends/db.py:1262 ms2.6%
Atomic.__enter__django/db/transaction.py:2112 ms2.6%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms2.6%
BaseDatabaseWrapper.savepointdjango/db/backends/base/base.py:4002 ms2.6%
BaseDatabaseWrapper._savepointdjango/db/backends/base/base.py:3672 ms2.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.6%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms2.6%
Cursor.executepsycopg/cursor.py:1132 ms2.6%
Connection.waitpsycopg/connection.py:4952 ms2.6%
ClientMixin._logindjango/test/client.py:8832 ms2.6%
SessionStore.savedjango/contrib/sessions/backends/db.py:1272 ms2.6%
Model.savedjango/db/models/base.py:8742 ms2.6%
Model.save_basedjango/db/models/base.py:9662 ms2.6%
Model._save_tabledjango/db/models/base.py:10572 ms2.6%
TransactionTestCase._post_teardowndjango/test/testcases.py:1240 self._fixture_teardown()2 ms2.6%
TestCase._fixture_teardowndjango/test/testcases.py:14952 ms2.6%
DatabaseWrapper.check_constraintsdjango/db/backends/postgresql/base.py:4842 ms2.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.6%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms2.6%
Cursor.executepsycopg/cursor.py:1132 ms2.6%
Connection.waitpsycopg/connection.py:4952 ms2.6%
Estimated from 38 samples; phase durations are exact. Frames from pytest and pluggy are
hidden
.
Hot lines in your code
|
apps/projects/tests.py:359
response = self.client.get(self.url)
ProjectTestsPage.test_project_with_tests
· Libraries
|
27 ms |
|
apps/projects/tests.py:337
self.client.force_login(self.user)
ProjectTestsPage.setUp
· Database
|
12 ms |
|
apps/projects/urls.py:259
return render(request, "project_tests.html", context)
project_tests
· Templates
|
5 ms |
|
apps/projects/urls.py:38
if not user.is_authenticated:
can_manage_project
· Database
|
3 ms |
|
apps/projects/urls.py:40
return user.is_superuser or project.organization.membership_set.filter(user=user).exists()
can_manage_project
· Database
|
3 ms |
|
apps/projects/urls.py:49
project = get_object_or_404(
find_project
· 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 |
|
apps/projects/urls.py:248
tests.annotate(
project_tests
· Database
|
2 ms |
Fixtures
Exact setup time| _template_string_if_invalid_marker function | 0.06 ms |
| _dj_autoclear_mailbox function | 0.04 ms |
| _django_db_marker function | 0.03 ms |
| _django_set_urlconf function | 0.03 ms |
| _live_server_helper function | 0.03 ms |
| _django_clear_site_cache function | 0.03 ms |
| monkeypatch function | 0.02 ms |
Database
35 queries · 13 msNo repeated queries.
Biggest pieces of work
|
call test body
apps/projects/tests.py:359
|
49 ms |
|
call setUp
apps/projects/tests.py:337
|
12 ms |
|
call _post_teardown
django/test/testcases.py:1240
|
2 ms |
|
setup __init__
__init__:-1
|
0.74 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 | |
|---|---|---|---|---|
| 45 minutes ago | CI github-actions:test | passed | 64 ms | Profile |
| an hour ago | CI github-actions:test | passed | 61 ms | Profile |
| 7 hours ago | CI github-actions:test | passed | 67 ms | Profile |
| 8 hours ago | CI github-actions:test | passed | 34 ms | Profile |
| 8 hours ago | CI github-actions:test | passed | 59 ms | Profile |
| 2 years ago | CI github-actions | passed | 134 ms | Run |
| 2 years, 2 months ago | CI github-actions | passed | 124 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 | 136 ms | Run |
| 2 years, 4 months ago | CI github-actions | passed | 130 ms | Run |
| 2 years, 4 months ago | CI github-actions | passed | 192 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 139 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 158 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 127 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 121 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 126 ms | Run |
| 2 years, 6 months ago | CI github-actions | passed | 125 ms | Run |
| 2 years, 6 months ago | CI github-actions | passed | 125 ms | Run |
| 2 years, 6 months ago | CI github-actions | passed | 120 ms | Run |