Tests / apps/projects/tests.py
ProjectRunsPage::test_other_peoples_project
First seen 2 years, 9 months ago in b9e98d9
CI
github-actions:test
5 runs
Average
47 ms
median 51 ms
max 58 ms
max 58 ms
Phases
Setup 0.73 ms
Call 46 ms
Teardown 0.17 ms
Categories
Database 20 ms
Other (Libraries, Unsampled, pytest) 27 ms
28 database queries per run
Needs 496 KB of memory (max 828 KB)
Duration per run
Where the time goes
Latest run in ci:github-actions:test, 18 minutes ago ·
open run
setup0.76 ms1.4%
__init____init__:-10.76 ms1.4%
signature<stdlib>/inspect.py:33400.76 ms1.4%
Signature.from_callable<stdlib>/inspect.py:30550.76 ms1.4%
_signature_from_callable<stdlib>/inspect.py:25250.76 ms1.4%
call51 ms98.2%
ProjectRunsPage.test_other_peoples_projectapps/projects/tests.py:278 response = self.client.get(other_project.url("project_runs"))32 ms60.4%
Client.getdjango/test/client.py:112432 ms60.4%
RequestFactory.getdjango/test/client.py:47532 ms60.4%
RequestFactory.genericdjango/test/client.py:67132 ms60.4%
Client.requestdjango/test/client.py:108232 ms60.4%
ClientHandler.__call__django/test/client.py:17326 ms49.1%
BaseHandler.load_middlewaredjango/core/handlers/base.py:6226 ms49.1%
WhiteNoiseMiddleware.__init__whitenoise/middleware.py:10424 ms45.3%
WhiteNoise.add_fileswhitenoise/base.py:10824 ms45.3%
WhiteNoise.update_files_dictionarywhitenoise/base.py:12016 ms30.2%
WhiteNoise.add_file_to_dictionarywhitenoise/base.py:13116 ms30.2%
WhiteNoise.get_static_filewhitenoise/base.py:20814 ms26.4%
StaticFile.__init__whitenoise/responders.py:776 ms11.3%
StaticFile.get_alternativeswhitenoise/responders.py:2004 ms7.6%
__init____init__:-14 ms7.6%
Headers._convert_string_type<stdlib>/wsgiref/headers.py:502 ms3.8%
StaticFile.get_alternativeswhitenoise/responders.py:2032 ms3.8%
Headers.__setitem__<stdlib>/wsgiref/headers.py:622 ms3.8%
Headers.__init__<stdlib>/wsgiref/headers.py:442 ms3.8%
StaticFile.__init__whitenoise/responders.py:724 ms7.6%
StaticFile.get_file_statswhitenoise/responders.py:1612 ms3.8%
StaticFile.__init__whitenoise/responders.py:732 ms3.8%
StaticFile.get_headerswhitenoise/responders.py:1782 ms3.8%
parsedate<stdlib>/email/_parseaddr.py:1852 ms3.8%
WhiteNoise.get_static_filewhitenoise/base.py:2032 ms3.8%
WhiteNoise.add_cache_headerswhitenoise/base.py:2242 ms3.8%
WhiteNoiseMiddleware.immutable_file_testwhitenoise/middleware.py:1762 ms3.8%
WhiteNoiseMiddleware.get_static_urlwhitenoise/middleware.py:1972 ms3.8%
URLMixin.urldebug_toolbar/panels/staticfiles.py:202 ms3.8%
WhiteNoise.update_files_dictionarywhitenoise/base.py:1158 ms15.1%
scantreewhitenoise/base.py:2626 ms11.3%
scantreewhitenoise/base.py:2626 ms11.3%
scantreewhitenoise/base.py:2624 ms7.6%
scantreewhitenoise/base.py:2624 ms7.6%
scantreewhitenoise/base.py:2622 ms3.8%
scantreewhitenoise/base.py:2642 ms3.8%
scantreewhitenoise/base.py:2602 ms3.8%
scantreewhitenoise/base.py:2642 ms3.8%
scantreewhitenoise/base.py:2602 ms3.8%
WhiteNoiseMiddleware.__init__whitenoise/middleware.py:1112 ms3.8%
WhiteNoise.add_fileswhitenoise/base.py:1082 ms3.8%
WhiteNoise.update_files_dictionarywhitenoise/base.py:1202 ms3.8%
WhiteNoise.add_file_to_dictionarywhitenoise/base.py:1312 ms3.8%
WhiteNoise.get_static_filewhitenoise/base.py:2082 ms3.8%
StaticFile.__init__whitenoise/responders.py:772 ms3.8%
StaticFile.get_alternativeswhitenoise/responders.py:2012 ms3.8%
ClientHandler.__call__django/test/client.py:1866 ms11.3%
BaseHandler.get_responsedjango/core/handlers/base.py:1416 ms11.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:556 ms11.3%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:1306 ms11.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:556 ms11.3%
MiddlewareMixin.__call__django/utils/deprecation.py:3096 ms11.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:556 ms11.3%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:1236 ms11.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:556 ms11.3%
MiddlewareMixin.__call__django/utils/deprecation.py:3096 ms11.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:556 ms11.3%
MiddlewareMixin.__call__django/utils/deprecation.py:3096 ms11.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:556 ms11.3%
MiddlewareMixin.__call__django/utils/deprecation.py:3096 ms11.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:556 ms11.3%
MiddlewareMixin.__call__django/utils/deprecation.py:3096 ms11.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:556 ms11.3%
MiddlewareMixin.__call__django/utils/deprecation.py:3096 ms11.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:556 ms11.3%
MiddlewareMixin.__call__django/utils/deprecation.py:3096 ms11.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:556 ms11.3%
AccountMiddleware.<locals>.middlewareallauth/account/middleware.py:346 ms11.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:556 ms11.3%
BaseHandler._get_responsedjango/core/handlers/base.py:1986 ms11.3%
project_runsapps/projects/urls.py:3466 ms11.3%
find_projectapps/projects/urls.py:524 ms7.6%
can_viewapps/projects/urls.py:334 ms7.6%
can_manage_projectapps/projects/urls.py:38 if not user.is_authenticated:2 ms3.8%
new_method_proxy.<locals>.innerdjango/utils/functional.py:2512 ms3.8%
SimpleLazyObject._setupdjango/utils/functional.py:4042 ms3.8%
AuthenticationMiddleware.process_request.<locals>.<lambda>django/contrib/auth/middleware.py:402 ms3.8%
get_userdjango/contrib/auth/middleware.py:202 ms3.8%
get_userdjango/contrib/auth/__init__.py:3182 ms3.8%
ModelBackend.get_userdjango/contrib/auth/backends.py:2322 ms3.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms3.8%
QuerySet.getdjango/db/models/query.py:6352 ms3.8%
QuerySet.__len__django/db/models/query.py:3722 ms3.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms3.8%
ModelIterable.__iter__django/db/models/query.py:952 ms3.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms3.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms3.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms3.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms3.8%
Cursor.executepsycopg/cursor.py:1132 ms3.8%
Connection.waitpsycopg/connection.py:4952 ms3.8%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms3.8%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms3.8%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms3.8%
can_manage_projectapps/projects/urls.py:40 return user.is_superuser or project.organization.membership_set.filter(user=user).exists()2 ms3.8%
QuerySet.existsdjango/db/models/query.py:13372 ms3.8%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms3.8%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms3.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms3.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms3.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms3.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms3.8%
Cursor.executepsycopg/cursor.py:1132 ms3.8%
Connection.waitpsycopg/connection.py:4952 ms3.8%
find_projectapps/projects/urls.py:49 project = get_object_or_404(2 ms3.8%
get_object_or_404django/shortcuts.py:902 ms3.8%
QuerySet.getdjango/db/models/query.py:6352 ms3.8%
QuerySet.__len__django/db/models/query.py:3722 ms3.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms3.8%
ModelIterable.__iter__django/db/models/query.py:952 ms3.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms3.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms3.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms3.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms3.8%
Cursor.executepsycopg/cursor.py:1132 ms3.8%
Connection.waitpsycopg/connection.py:4952 ms3.8%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms3.8%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms3.8%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms3.8%
ProjectRunsPage.setUpapps/projects/tests.py:268 self.client.force_login(self.user)14 ms26.4%
ClientMixin.force_logindjango/test/client.py:85514 ms26.4%
ClientMixin._logindjango/test/client.py:8766 ms11.3%
ClientMixin.sessiondjango/test/client.py:8122 ms3.8%
SessionStore.savedjango/contrib/sessions/backends/db.py:1212 ms3.8%
SessionStore.createdjango/contrib/sessions/backends/db.py:742 ms3.8%
SessionStore.savedjango/contrib/sessions/backends/db.py:1262 ms3.8%
Atomic.__enter__django/db/transaction.py:2112 ms3.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms3.8%
BaseDatabaseWrapper.savepointdjango/db/backends/base/base.py:4002 ms3.8%
BaseDatabaseWrapper._savepointdjango/db/backends/base/base.py:3672 ms3.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms3.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms3.8%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms3.8%
Cursor.executepsycopg/cursor.py:1132 ms3.8%
Connection.waitpsycopg/connection.py:4952 ms3.8%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms3.8%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms3.8%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms3.8%
ClientMixin.sessiondjango/test/client.py:8132 ms3.8%
logindjango/contrib/auth/__init__.py:1872 ms3.8%
SessionBase.cycle_keydjango/contrib/sessions/backends/base.py:4342 ms3.8%
SessionStore.createdjango/contrib/sessions/backends/db.py:702 ms3.8%
SessionBase._get_new_session_keydjango/contrib/sessions/backends/base.py:1982 ms3.8%
SessionStore.existsdjango/contrib/sessions/backends/db.py:632 ms3.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms3.8%
QuerySet.filterdjango/db/models/query.py:15422 ms3.8%
QuerySet._filter_or_excludedjango/db/models/query.py:15602 ms3.8%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15702 ms3.8%
Query.add_qdjango/db/models/sql/query.py:16712 ms3.8%
Query._add_qdjango/db/models/sql/query.py:17032 ms3.8%
Query.build_filterdjango/db/models/sql/query.py:15882 ms3.8%
Query.check_related_objectsdjango/db/models/sql/query.py:13812 ms3.8%
ClientMixin._logindjango/test/client.py:8814 ms7.6%
logindjango/contrib/auth/__init__.py:1874 ms7.6%
SessionBase.cycle_keydjango/contrib/sessions/backends/base.py:4342 ms3.8%
SessionStore.createdjango/contrib/sessions/backends/db.py:742 ms3.8%
SessionStore.savedjango/contrib/sessions/backends/db.py:1272 ms3.8%
Model.savedjango/db/models/base.py:8742 ms3.8%
Model.save_basedjango/db/models/base.py:9662 ms3.8%
Model._save_tabledjango/db/models/base.py:11672 ms3.8%
Model._do_insertdjango/db/models/base.py:12182 ms3.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms3.8%
QuerySet._insertdjango/db/models/query.py:19182 ms3.8%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19242 ms3.8%
SQLInsertCompiler.as_sqldjango/db/models/sql/compiler.py:18692 ms3.8%
SQLInsertCompiler.assemble_as_sqldjango/db/backends/postgresql/compiler.py:642 ms3.8%
SQLInsertCompiler.assemble_as_sqldjango/db/models/sql/compiler.py:17882 ms3.8%
SessionBase.cycle_keydjango/contrib/sessions/backends/base.py:4372 ms3.8%
SessionStore.deletedjango/contrib/sessions/backends/db.py:1752 ms3.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms3.8%
QuerySet.getdjango/db/models/query.py:6352 ms3.8%
QuerySet.__len__django/db/models/query.py:3722 ms3.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms3.8%
ModelIterable.__iter__django/db/models/query.py:952 ms3.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms3.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms3.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms3.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms3.8%
Cursor.executepsycopg/cursor.py:1132 ms3.8%
Connection.waitpsycopg/connection.py:4952 ms3.8%
ClientMixin._logindjango/test/client.py:8832 ms3.8%
SessionStore.savedjango/contrib/sessions/backends/db.py:1272 ms3.8%
Model.savedjango/db/models/base.py:8742 ms3.8%
Model.save_basedjango/db/models/base.py:9662 ms3.8%
Model._save_tabledjango/db/models/base.py:11102 ms3.8%
Model._do_updatedjango/db/models/base.py:11882 ms3.8%
QuerySet.filterdjango/db/models/query.py:15422 ms3.8%
QuerySet._filter_or_excludedjango/db/models/query.py:15602 ms3.8%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15702 ms3.8%
Query.add_qdjango/db/models/sql/query.py:16712 ms3.8%
Query._add_qdjango/db/models/sql/query.py:17032 ms3.8%
Query.build_filterdjango/db/models/sql/query.py:16132 ms3.8%
TransactionTestCase._post_teardowndjango/test/testcases.py:1240 self._fixture_teardown()4 ms7.6%
TestCase._fixture_teardowndjango/test/testcases.py:14942 ms3.8%
TestCase._should_check_constraintsdjango/test/testcases.py:15032 ms3.8%
DatabaseWrapper.is_usabledjango/db/backends/postgresql/base.py:4922 ms3.8%
Cursor.executepsycopg/cursor.py:1132 ms3.8%
Connection.waitpsycopg/connection.py:4952 ms3.8%
TestCase._fixture_teardowndjango/test/testcases.py:14972 ms3.8%
TestCase._rollback_atomicsdjango/test/testcases.py:14052 ms3.8%
Atomic.__exit__django/db/transaction.py:2832 ms3.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms3.8%
BaseDatabaseWrapper.savepoint_rollbackdjango/db/backends/base/base.py:4132 ms3.8%
BaseDatabaseWrapper._savepoint_rollbackdjango/db/backends/base/base.py:3712 ms3.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms3.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms3.8%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms3.8%
Cursor.executepsycopg/cursor.py:1132 ms3.8%
Connection.waitpsycopg/connection.py:4952 ms3.8%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms3.8%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms3.8%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms3.8%
ProjectRunsPage.test_other_peoples_projectapps/projects/tests.py:277 other_project = make_project("Other Project")2 ms3.8%
make_projectapps/projects/testing.py:61 organization = Organization.objects.create(2 ms3.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms3.8%
QuerySet.createdjango/db/models/query.py:6692 ms3.8%
Model.savedjango/db/models/base.py:8742 ms3.8%
Model.save_basedjango/db/models/base.py:9662 ms3.8%
Model._save_tabledjango/db/models/base.py:11672 ms3.8%
Model._do_insertdjango/db/models/base.py:12182 ms3.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms3.8%
QuerySet._insertdjango/db/models/query.py:19182 ms3.8%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms3.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms3.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms3.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms3.8%
Cursor.executepsycopg/cursor.py:1132 ms3.8%
Connection.waitpsycopg/connection.py:4952 ms3.8%
Estimated from 27 samples; phase durations are exact. Frames from pytest and pluggy are
hidden
.
Hot lines in your code
|
apps/projects/tests.py:278
response = self.client.get(other_project.url("project_runs"))
ProjectRunsPage.test_other_peoples_project
· Libraries
|
26 ms |
|
apps/projects/tests.py:268
self.client.force_login(self.user)
ProjectRunsPage.setUp
· Database
|
14 ms |
|
apps/projects/testing.py:61
organization = Organization.objects.create(
make_project
· Database
|
2 ms |
|
apps/projects/urls.py:49
project = get_object_or_404(
find_project
· Database
|
2 ms |
|
apps/projects/urls.py:38
if not user.is_authenticated:
can_manage_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 |
Fixtures
Exact setup time| _live_server_helper function | 0.05 ms |
| _template_string_if_invalid_marker function | 0.05 ms |
| _dj_autoclear_mailbox function | 0.05 ms |
| _django_db_marker function | 0.04 ms |
| _django_set_urlconf function | 0.03 ms |
| monkeypatch function | 0.03 ms |
| _django_clear_site_cache function | 0.03 ms |
Database
28 queries · 8 msNo repeated queries.
Biggest pieces of work
|
call test body
apps/projects/tests.py:277
|
33 ms |
|
call setUp
apps/projects/tests.py:268
|
14 ms |
|
call _post_teardown
django/test/testcases.py:1240
|
4 ms |
|
setup __init__
__init__:-1
|
0.76 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 | 52 ms | Profile |
| 44 minutes ago | CI github-actions:test | passed | 51 ms | Profile |
| 7 hours ago | CI github-actions:test | passed | 58 ms | Profile |
| 7 hours ago | CI github-actions:test | passed | 26 ms | Profile |
| 7 hours ago | CI github-actions:test | passed | 49 ms | Profile |
| 2 years ago | CI github-actions | passed | 94 ms | Run |
| 2 years, 2 months ago | CI github-actions | passed | 94 ms | Run |
| 2 years, 3 months ago | CI github-actions | passed | 103 ms | Run |
| 2 years, 4 months ago | CI github-actions | passed | 101 ms | Run |
| 2 years, 4 months ago | CI github-actions | passed | 102 ms | Run |
| 2 years, 4 months ago | CI github-actions | passed | 177 ms | Run |
| 2 years, 4 months ago | CI github-actions | passed | 94 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 92 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 91 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 93 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 92 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 94 ms | Run |
| 2 years, 6 months ago | CI github-actions | passed | 94 ms | Run |
| 2 years, 6 months ago | CI github-actions | passed | 93 ms | Run |
| 2 years, 6 months ago | CI github-actions | passed | 90 ms | Run |