Tests / apps/projects/tests.py
ProjectPagesTest::test_configure_public
First seen 8 hours ago in 78a4357
CI
github-actions:test
5 runs
Average
55 ms
median 59 ms
max 63 ms
max 63 ms
Phases
Setup 0.75 ms
Call 54 ms
Teardown 0.18 ms
Categories
Database 28 ms
Other (Libraries, Unsampled, pytest) 26 ms
33 database queries per run
Needs 22 KB of memory (max 112 KB)
Duration per run
Where the time goes
Latest run in ci:github-actions:test, an hour ago ·
open run
call62 ms98.2%
CallInfo.from_call_pytest/runner.py:35362 ms98.2%
call_and_report.<locals>.<lambda>_pytest/runner.py:24562 ms98.2%
HookCaller.__call__pluggy/_hooks.py:51262 ms98.2%
PluginManager._hookexecpluggy/_manager.py:12062 ms98.2%
_multicallpluggy/_callers.py:12162 ms98.2%
pytest_runtest_call_pytest/runner.py:17962 ms98.2%
_django_setup_unittest.<locals>.non_debugging_runtestpytest_django/plugin.py:57362 ms98.2%
SimpleTestCase.__call__django/test/testcases.py:31362 ms98.2%
SimpleTestCase._setup_and_calldjango/test/testcases.py:36854 ms86.7%
TestCase.__call__<stdlib>/unittest/case.py:74754 ms86.7%
TestCase.run<stdlib>/unittest/case.py:69140 ms63.6%
TestCase._callTestMethod<stdlib>/unittest/case.py:63740 ms63.6%
ProjectPagesTest.test_configure_publicapps/projects/tests.py:1096 response = self.client.post(self.project.url("project_configure"), {})31 ms49.1%
Client.postdjango/test/client.py:115331 ms49.1%
RequestFactory.postdjango/test/client.py:49931 ms49.1%
RequestFactory.genericdjango/test/client.py:67131 ms49.1%
Client.requestdjango/test/client.py:108231 ms49.1%
ClientHandler.__call__django/test/client.py:17322 ms34.7%
BaseHandler.load_middlewaredjango/core/handlers/base.py:6222 ms34.7%
WhiteNoiseMiddleware.__init__whitenoise/middleware.py:10422 ms34.7%
WhiteNoise.add_fileswhitenoise/base.py:10822 ms34.7%
WhiteNoise.update_files_dictionarywhitenoise/base.py:12016 ms26.0%
WhiteNoise.add_file_to_dictionarywhitenoise/base.py:13116 ms26.0%
WhiteNoise.get_static_filewhitenoise/base.py:20814 ms23.1%
StaticFile.__init__whitenoise/responders.py:725 ms8.7%
StaticFile.get_file_statswhitenoise/responders.py:1615 ms8.7%
__init____init__:-15 ms8.7%
FileEntry.__init__whitenoise/responders.py:2604 ms5.8%
<GC>~4 ms5.8%
FileEntry.__init__whitenoise/responders.py:2632 ms2.9%
FileEntry.stat_regular_filewhitenoise/responders.py:2762 ms2.9%
<GC>~2 ms2.9%
StaticFile.__init__whitenoise/responders.py:735 ms8.7%
StaticFile.get_headerswhitenoise/responders.py:1782 ms2.9%
parsedate<stdlib>/email/_parseaddr.py:1852 ms2.9%
StaticFile.get_headerswhitenoise/responders.py:1672 ms2.9%
StaticFile.get_headerswhitenoise/responders.py:1762 ms2.9%
formatdate<stdlib>/email/utils.py:2662 ms2.9%
StaticFile.__init__whitenoise/responders.py:744 ms5.8%
parsedate<stdlib>/email/_parseaddr.py:1854 ms5.8%
WhiteNoise.get_static_filewhitenoise/base.py:2022 ms2.9%
WhiteNoise.update_files_dictionarywhitenoise/base.py:1154 ms5.8%
scantreewhitenoise/base.py:2624 ms5.8%
scantreewhitenoise/base.py:2624 ms5.8%
scantreewhitenoise/base.py:2622 ms2.9%
scantreewhitenoise/base.py:2622 ms2.9%
scantreewhitenoise/base.py:2622 ms2.9%
scantreewhitenoise/base.py:2642 ms2.9%
scantreewhitenoise/base.py:2642 ms2.9%
ClientHandler.__call__django/test/client.py:1869 ms14.4%
BaseHandler.get_responsedjango/core/handlers/base.py:1419 ms14.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:559 ms14.4%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:1309 ms14.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:559 ms14.4%
MiddlewareMixin.__call__django/utils/deprecation.py:3099 ms14.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:559 ms14.4%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:1239 ms14.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:559 ms14.4%
MiddlewareMixin.__call__django/utils/deprecation.py:3099 ms14.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:559 ms14.4%
MiddlewareMixin.__call__django/utils/deprecation.py:3099 ms14.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:559 ms14.4%
MiddlewareMixin.__call__django/utils/deprecation.py:3099 ms14.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:559 ms14.4%
MiddlewareMixin.__call__django/utils/deprecation.py:3099 ms14.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:559 ms14.4%
MiddlewareMixin.__call__django/utils/deprecation.py:3099 ms14.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:559 ms14.4%
MiddlewareMixin.__call__django/utils/deprecation.py:3099 ms14.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:559 ms14.4%
AccountMiddleware.<locals>.middlewareallauth/account/middleware.py:349 ms14.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:559 ms14.4%
BaseHandler._get_responsedjango/core/handlers/base.py:1989 ms14.4%
user_passes_test.<locals>.decorator.<locals>._view_wrapperdjango/contrib/auth/decorators.py:595 ms8.7%
project_configureapps/projects/urls.py:5284 ms5.8%
managed_projectapps/projects/urls.py:61 project = get_object_or_404(2 ms2.9%
get_object_or_404django/shortcuts.py:902 ms2.9%
QuerySet.getdjango/db/models/query.py:6352 ms2.9%
QuerySet.__len__django/db/models/query.py:3722 ms2.9%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.9%
ModelIterable.__iter__django/db/models/query.py:952 ms2.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.9%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.9%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1022 ms2.9%
QueryStats.addflakytest/profiling/dbtrack.py:382 ms2.9%
normalize_sqlflakytest/profiling/dbtrack.py:242 ms2.9%
managed_projectapps/projects/urls.py:642 ms2.9%
can_manageapps/projects/urls.py:442 ms2.9%
can_manage_projectapps/projects/urls.py:40 return user.is_superuser or project.organization.membership_set.filter(user=user).exists()2 ms2.9%
QuerySet.existsdjango/db/models/query.py:13372 ms2.9%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms2.9%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms2.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.9%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.9%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.9%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.9%
Cursor.executepsycopg/cursor.py:1132 ms2.9%
Connection.waitpsycopg/connection.py:4952 ms2.9%
project_configureapps/projects/urls.py:531 project.save(update_fields=["public"])2 ms2.9%
Model.savedjango/db/models/base.py:8742 ms2.9%
Model.save_basedjango/db/models/base.py:9662 ms2.9%
Model._save_tabledjango/db/models/base.py:11102 ms2.9%
Model._do_updatedjango/db/models/base.py:12112 ms2.9%
QuerySet._updatedjango/db/models/query.py:13272 ms2.9%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21402 ms2.9%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms2.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.9%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.9%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.9%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.9%
Cursor.executepsycopg/cursor.py:1132 ms2.9%
Connection.waitpsycopg/connection.py:4952 ms2.9%
user_passes_test.<locals>.decorator.<locals>._view_wrapperdjango/contrib/auth/decorators.py:564 ms5.8%
login_required.<locals>.<lambda>django/contrib/auth/decorators.py:794 ms5.8%
new_method_proxy.<locals>.innerdjango/utils/functional.py:2514 ms5.8%
SimpleLazyObject._setupdjango/utils/functional.py:4044 ms5.8%
AuthenticationMiddleware.process_request.<locals>.<lambda>django/contrib/auth/middleware.py:404 ms5.8%
get_userdjango/contrib/auth/middleware.py:204 ms5.8%
get_userdjango/contrib/auth/__init__.py:3112 ms2.9%
_get_user_session_keydjango/contrib/auth/__init__.py:952 ms2.9%
SessionBase.__getitem__django/contrib/sessions/backends/base.py:552 ms2.9%
SessionBase._get_sessiondjango/contrib/sessions/backends/base.py:2512 ms2.9%
SessionStore.loaddjango/contrib/sessions/backends/db.py:552 ms2.9%
SessionStore._get_session_from_dbdjango/contrib/sessions/backends/db.py:342 ms2.9%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.9%
QuerySet.getdjango/db/models/query.py:6352 ms2.9%
QuerySet.__len__django/db/models/query.py:3722 ms2.9%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.9%
ModelIterable.__iter__django/db/models/query.py:952 ms2.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.9%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.9%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.9%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.9%
Cursor.executepsycopg/cursor.py:1132 ms2.9%
Connection.waitpsycopg/connection.py:4952 ms2.9%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms2.9%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms2.9%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms2.9%
get_userdjango/contrib/auth/__init__.py:3182 ms2.9%
ModelBackend.get_userdjango/contrib/auth/backends.py:2322 ms2.9%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.9%
QuerySet.getdjango/db/models/query.py:6352 ms2.9%
QuerySet.__len__django/db/models/query.py:3722 ms2.9%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.9%
ModelIterable.__iter__django/db/models/query.py:952 ms2.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms2.9%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms2.9%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:862 ms2.9%
SQLCompiler.setup_querydjango/db/models/sql/compiler.py:752 ms2.9%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:3172 ms2.9%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5782 ms2.9%
ProjectPagesTest.test_configure_publicapps/projects/tests.py:1100 self.client.post(self.project.url("project_configure"), {"public": "on"})5 ms8.7%
Client.postdjango/test/client.py:11534 ms5.8%
RequestFactory.postdjango/test/client.py:4994 ms5.8%
RequestFactory.genericdjango/test/client.py:6714 ms5.8%
Client.requestdjango/test/client.py:10824 ms5.8%
ClientHandler.__call__django/test/client.py:1864 ms5.8%
BaseHandler.get_responsedjango/core/handlers/base.py:1414 ms5.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:554 ms5.8%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:1304 ms5.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:554 ms5.8%
MiddlewareMixin.__call__django/utils/deprecation.py:3094 ms5.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:554 ms5.8%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:1234 ms5.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:554 ms5.8%
MiddlewareMixin.__call__django/utils/deprecation.py:3094 ms5.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:554 ms5.8%
MiddlewareMixin.__call__django/utils/deprecation.py:3094 ms5.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:554 ms5.8%
MiddlewareMixin.__call__django/utils/deprecation.py:3094 ms5.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:554 ms5.8%
MiddlewareMixin.__call__django/utils/deprecation.py:3094 ms5.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:554 ms5.8%
MiddlewareMixin.__call__django/utils/deprecation.py:3094 ms5.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:554 ms5.8%
MiddlewareMixin.__call__django/utils/deprecation.py:3094 ms5.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:554 ms5.8%
AccountMiddleware.<locals>.middlewareallauth/account/middleware.py:344 ms5.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:554 ms5.8%
BaseHandler._get_responsedjango/core/handlers/base.py:1984 ms5.8%
user_passes_test.<locals>.decorator.<locals>._view_wrapperdjango/contrib/auth/decorators.py:562 ms2.9%
login_required.<locals>.<lambda>django/contrib/auth/decorators.py:792 ms2.9%
new_method_proxy.<locals>.innerdjango/utils/functional.py:2512 ms2.9%
SimpleLazyObject._setupdjango/utils/functional.py:4042 ms2.9%
AuthenticationMiddleware.process_request.<locals>.<lambda>django/contrib/auth/middleware.py:402 ms2.9%
get_userdjango/contrib/auth/middleware.py:202 ms2.9%
get_userdjango/contrib/auth/__init__.py:3112 ms2.9%
_get_user_session_keydjango/contrib/auth/__init__.py:952 ms2.9%
SessionBase.__getitem__django/contrib/sessions/backends/base.py:552 ms2.9%
SessionBase._get_sessiondjango/contrib/sessions/backends/base.py:2512 ms2.9%
SessionStore.loaddjango/contrib/sessions/backends/db.py:552 ms2.9%
SessionStore._get_session_from_dbdjango/contrib/sessions/backends/db.py:342 ms2.9%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.9%
QuerySet.getdjango/db/models/query.py:6352 ms2.9%
QuerySet.__len__django/db/models/query.py:3722 ms2.9%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.9%
ModelIterable.__iter__django/db/models/query.py:952 ms2.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms2.9%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms2.9%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:862 ms2.9%
SQLCompiler.setup_querydjango/db/models/sql/compiler.py:732 ms2.9%
user_passes_test.<locals>.decorator.<locals>._view_wrapperdjango/contrib/auth/decorators.py:592 ms2.9%
project_configureapps/projects/urls.py:531 project.save(update_fields=["public"])2 ms2.9%
Model.savedjango/db/models/base.py:8742 ms2.9%
Model.save_basedjango/db/models/base.py:9662 ms2.9%
Model._save_tabledjango/db/models/base.py:11102 ms2.9%
Model._do_updatedjango/db/models/base.py:12112 ms2.9%
QuerySet._updatedjango/db/models/query.py:13272 ms2.9%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21402 ms2.9%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms2.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.9%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.9%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.9%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.9%
Cursor.executepsycopg/cursor.py:1132 ms2.9%
Connection.waitpsycopg/connection.py:4952 ms2.9%
Project.urlapps/projects/models.py:59 return reverse(name, args=[self.organization.slug, self.slug, *args])2 ms2.9%
ForwardManyToOneDescriptor.__get__django/db/models/fields/related_descriptors.py:2572 ms2.9%
ForwardManyToOneDescriptor.get_objectdjango/db/models/fields/related_descriptors.py:2222 ms2.9%
QuerySet.getdjango/db/models/query.py:6352 ms2.9%
QuerySet.__len__django/db/models/query.py:3722 ms2.9%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.9%
ModelIterable.__iter__django/db/models/query.py:952 ms2.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.9%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.9%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.9%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.9%
Cursor.executepsycopg/cursor.py:1132 ms2.9%
Connection.waitpsycopg/connection.py:4952 ms2.9%
ProjectPagesTest.test_configure_publicapps/projects/tests.py:1098 self.project.refresh_from_db()2 ms2.9%
Model.refresh_from_dbdjango/db/models/base.py:7582 ms2.9%
QuerySet.getdjango/db/models/query.py:6352 ms2.9%
QuerySet.__len__django/db/models/query.py:3722 ms2.9%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.9%
ModelIterable.__iter__django/db/models/query.py:952 ms2.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.9%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.9%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.9%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.9%
Cursor.executepsycopg/cursor.py:1132 ms2.9%
Connection.waitpsycopg/connection.py:4952 ms2.9%
ProjectPagesTest.test_configure_publicapps/projects/tests.py:1101 self.project.refresh_from_db()2 ms2.9%
Model.refresh_from_dbdjango/db/models/base.py:7582 ms2.9%
QuerySet.getdjango/db/models/query.py:6352 ms2.9%
QuerySet.__len__django/db/models/query.py:3722 ms2.9%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.9%
ModelIterable.__iter__django/db/models/query.py:952 ms2.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.9%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.9%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.9%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.9%
Cursor.executepsycopg/cursor.py:1132 ms2.9%
Connection.waitpsycopg/connection.py:4952 ms2.9%
TestCase.run<stdlib>/unittest/case.py:68714 ms23.1%
TestCase._callSetUp<stdlib>/unittest/case.py:63414 ms23.1%
ProjectPagesTest.setUpapps/projects/tests.py:953 self.client.force_login(self.user)14 ms23.1%
ClientMixin.force_logindjango/test/client.py:85514 ms23.1%
ClientMixin._logindjango/test/client.py:8819 ms14.4%
logindjango/contrib/auth/__init__.py:1875 ms8.7%
SessionBase.cycle_keydjango/contrib/sessions/backends/base.py:4344 ms5.8%
SessionStore.createdjango/contrib/sessions/backends/db.py:702 ms2.9%
SessionBase._get_new_session_keydjango/contrib/sessions/backends/base.py:1982 ms2.9%
SessionStore.existsdjango/contrib/sessions/backends/db.py:632 ms2.9%
QuerySet.existsdjango/db/models/query.py:13372 ms2.9%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms2.9%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms2.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.9%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.9%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.9%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.9%
Cursor.executepsycopg/cursor.py:1132 ms2.9%
Connection.waitpsycopg/connection.py:4952 ms2.9%
SessionStore.createdjango/contrib/sessions/backends/db.py:742 ms2.9%
SessionStore.savedjango/contrib/sessions/backends/db.py:1262 ms2.9%
Atomic.__exit__django/db/transaction.py:2472 ms2.9%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms2.9%
BaseDatabaseWrapper.savepoint_commitdjango/db/backends/base/base.py:4312 ms2.9%
BaseDatabaseWrapper._savepoint_commitdjango/db/backends/base/base.py:3752 ms2.9%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.9%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.9%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms2.9%
Cursor.executepsycopg/cursor.py:1132 ms2.9%
Connection.waitpsycopg/connection.py:4952 ms2.9%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms2.9%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms2.9%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms2.9%
SessionBase.cycle_keydjango/contrib/sessions/backends/base.py:4372 ms2.9%
SessionStore.deletedjango/contrib/sessions/backends/db.py:1752 ms2.9%
Model.deletedjango/db/models/base.py:12982 ms2.9%
Collector.deletedjango/db/models/deletion.py:4522 ms2.9%
DeleteQuery.delete_batchdjango/db/models/sql/subqueries.py:432 ms2.9%
DeleteQuery.do_querydjango/db/models/sql/subqueries.py:252 ms2.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.9%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.9%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.9%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.9%
Cursor.executepsycopg/cursor.py:1132 ms2.9%
Connection.waitpsycopg/connection.py:4952 ms2.9%
logindjango/contrib/auth/__init__.py:1752 ms2.9%
SessionBase.__contains__django/contrib/sessions/backends/base.py:522 ms2.9%
SessionBase._get_sessiondjango/contrib/sessions/backends/base.py:2512 ms2.9%
SessionStore.loaddjango/contrib/sessions/backends/db.py:552 ms2.9%
SessionStore._get_session_from_dbdjango/contrib/sessions/backends/db.py:342 ms2.9%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.9%
QuerySet.getdjango/db/models/query.py:6352 ms2.9%
QuerySet.__len__django/db/models/query.py:3722 ms2.9%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.9%
ModelIterable.__iter__django/db/models/query.py:952 ms2.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.9%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.9%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.9%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.9%
Cursor.executepsycopg/cursor.py:1132 ms2.9%
Connection.waitpsycopg/connection.py:4952 ms2.9%
logindjango/contrib/auth/__init__.py:1972 ms2.9%
Signal.senddjango/dispatch/dispatcher.py:2092 ms2.9%
update_last_logindjango/contrib/auth/models.py:242 ms2.9%
AbstractBaseUser.savedjango/contrib/auth/base_user.py:622 ms2.9%
Model.savedjango/db/models/base.py:8742 ms2.9%
Model.save_basedjango/db/models/base.py:9662 ms2.9%
Model._save_tabledjango/db/models/base.py:11102 ms2.9%
Model._do_updatedjango/db/models/base.py:12112 ms2.9%
QuerySet._updatedjango/db/models/query.py:13272 ms2.9%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21402 ms2.9%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms2.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.9%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.9%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.9%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.9%
Cursor.executepsycopg/cursor.py:1132 ms2.9%
Connection.waitpsycopg/connection.py:4952 ms2.9%
ClientMixin._logindjango/test/client.py:8764 ms5.8%
ClientMixin.sessiondjango/test/client.py:8124 ms5.8%
SessionStore.savedjango/contrib/sessions/backends/db.py:1214 ms5.8%
SessionStore.createdjango/contrib/sessions/backends/db.py:704 ms5.8%
SessionBase._get_new_session_keydjango/contrib/sessions/backends/base.py:1984 ms5.8%
SessionStore.existsdjango/contrib/sessions/backends/db.py:634 ms5.8%
QuerySet.existsdjango/db/models/query.py:13374 ms5.8%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms2.9%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms2.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms2.9%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7922 ms2.9%
ClientMixin._logindjango/test/client.py:8832 ms2.9%
SessionStore.savedjango/contrib/sessions/backends/db.py:1272 ms2.9%
Model.savedjango/db/models/base.py:8742 ms2.9%
Model.save_basedjango/db/models/base.py:9662 ms2.9%
Model._save_tabledjango/db/models/base.py:11102 ms2.9%
Model._do_updatedjango/db/models/base.py:12112 ms2.9%
QuerySet._updatedjango/db/models/query.py:13272 ms2.9%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21402 ms2.9%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms2.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.9%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.9%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.9%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.9%
Cursor.executepsycopg/cursor.py:1132 ms2.9%
Connection.waitpsycopg/connection.py:4952 ms2.9%
BaseCursor._execute_genpsycopg/_cursor_base.py:2052 ms2.9%
BaseCursor._convert_querypsycopg/_cursor_base.py:4652 ms2.9%
PostgresClientQuery.convertpsycopg/_queries.py:2892 ms2.9%
PostgresClientQuery.dumppsycopg/_queries.py:2992 ms2.9%
PostgresClientQuery.dump.<locals>.<genexpr>psycopg/_queries.py:3002 ms2.9%
SimpleTestCase._setup_and_calldjango/test/testcases.py:3717 ms11.6%
TransactionTestCase._post_teardowndjango/test/testcases.py:1240 self._fixture_teardown()7 ms11.6%
TestCase._fixture_teardowndjango/test/testcases.py:14955 ms8.7%
DatabaseWrapper.check_constraintsdjango/db/backends/postgresql/base.py:4835 ms8.7%
CursorWrapper.executedjango/db/backends/utils.py:795 ms8.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:925 ms8.7%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1005 ms8.7%
CursorWrapper._executedjango/db/backends/utils.py:1035 ms8.7%
Cursor.executepsycopg/cursor.py:1135 ms8.7%
Connection.waitpsycopg/connection.py:4955 ms8.7%
TestCase._fixture_teardowndjango/test/testcases.py:14972 ms2.9%
TestCase._rollback_atomicsdjango/test/testcases.py:14052 ms2.9%
Atomic.__exit__django/db/transaction.py:2832 ms2.9%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms2.9%
BaseDatabaseWrapper.savepoint_rollbackdjango/db/backends/base/base.py:4132 ms2.9%
BaseDatabaseWrapper._savepoint_rollbackdjango/db/backends/base/base.py:3712 ms2.9%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.9%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.9%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms2.9%
Cursor.executepsycopg/cursor.py:1132 ms2.9%
Connection.waitpsycopg/connection.py:4952 ms2.9%
Estimated from 34 samples; phase durations are exact. Frames from pytest and pluggy are
shown
.
Hot lines in your code
|
apps/projects/tests.py:1096
response = self.client.post(self.project.url("project_configure"), {})
ProjectPagesTest.test_configure_public
· Libraries
|
25 ms |
|
apps/projects/tests.py:953
self.client.force_login(self.user)
ProjectPagesTest.setUp
· Database
|
14 ms |
|
apps/projects/urls.py:531
project.save(update_fields=["public"])
project_configure
· Database
|
4 ms |
|
apps/projects/urls.py:61
project = get_object_or_404(
managed_project
· Database
|
2 ms |
|
apps/projects/urls.py:40
return user.is_superuser or project.organization.membership_set.filter(user=user).exists()
can_manage_project
· Database
|
2 ms |
|
apps/projects/tests.py:1098
self.project.refresh_from_db()
ProjectPagesTest.test_configure_public
· Database
|
2 ms |
|
apps/projects/models.py:59
return reverse(name, args=[self.organization.slug, self.slug, *args])
Project.url
· Database
|
2 ms |
|
apps/projects/tests.py:1100
self.client.post(self.project.url("project_configure"), {"public": "on"})
ProjectPagesTest.test_configure_public
· Database
|
2 ms |
|
apps/projects/tests.py:1101
self.project.refresh_from_db()
ProjectPagesTest.test_configure_public
· Database
|
2 ms |
Fixtures
Exact setup time| _django_db_marker function | 0.07 ms |
| _template_string_if_invalid_marker function | 0.06 ms |
| _dj_autoclear_mailbox function | 0.05 ms |
| _django_set_urlconf function | 0.05 ms |
| _live_server_helper function | 0.05 ms |
| _django_clear_site_cache function | 0.04 ms |
| monkeypatch function | 0.03 ms |
Database
33 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:1096
|
40 ms |
|
call setUp
apps/projects/tests.py:953
|
14 ms |
|
call _post_teardown
django/test/testcases.py:1240
|
7 ms |
Reliability
5 results · 0 CI failures · 0 local failuresThis test hasn't failed recently.
History
Latest 5 results, oldest first in the strip| When | Environment | Outcome | Duration | |
|---|---|---|---|---|
| an hour ago | CI github-actions:test | passed | 63 ms | Profile |
| an hour ago | CI github-actions:test | passed | 59 ms | Profile |
| 8 hours ago | CI github-actions:test | passed | 59 ms | Profile |
| 8 hours ago | CI github-actions:test | passed | 32 ms | Profile |
| 8 hours ago | CI github-actions:test | passed | 60 ms | Profile |