Tests / apps/projects/tests.py
ProjectRunPage::test_other_peoples_project
First seen 2 years, 9 months ago in b9e98d9
CI
github-actions:test
5 runs
Average
50 ms
median 55 ms
max 55 ms
max 55 ms
Phases
Setup 0.74 ms
Call 49 ms
Teardown 0.15 ms
Categories
Database 22 ms
Other (Libraries, Unsampled) 27 ms
31 database queries per run
Needs 435 KB of memory (max 540 KB)
Duration per run
Where the time goes
Latest run in ci:github-actions:test, 18 minutes ago ·
open run
call54 ms98.1%
ProjectRunPage.test_other_peoples_projectapps/projects/tests.py:319 response = self.client.get(other_project.url("project_run", other_project_run.number))33 ms59.7%
Client.getdjango/test/client.py:112433 ms59.7%
RequestFactory.getdjango/test/client.py:47533 ms59.7%
RequestFactory.genericdjango/test/client.py:67133 ms59.7%
Client.requestdjango/test/client.py:108233 ms59.7%
ClientHandler.__call__django/test/client.py:17326 ms46.9%
BaseHandler.load_middlewaredjango/core/handlers/base.py:6226 ms46.9%
WhiteNoiseMiddleware.__init__whitenoise/middleware.py:10426 ms46.9%
WhiteNoise.add_fileswhitenoise/base.py:10826 ms46.9%
WhiteNoise.update_files_dictionarywhitenoise/base.py:12021 ms38.4%
WhiteNoise.add_file_to_dictionarywhitenoise/base.py:13121 ms38.4%
WhiteNoise.get_static_filewhitenoise/base.py:20816 ms29.9%
StaticFile.__init__whitenoise/responders.py:727 ms12.8%
StaticFile.get_file_statswhitenoise/responders.py:1637 ms12.8%
<GC>~7 ms12.8%
StaticFile.__init__whitenoise/responders.py:775 ms8.5%
StaticFile.get_alternativeswhitenoise/responders.py:2002 ms4.3%
StaticFile.get_alternativeswhitenoise/responders.py:1982 ms4.3%
StaticFile.__init__whitenoise/responders.py:732 ms4.3%
StaticFile.get_headerswhitenoise/responders.py:1782 ms4.3%
StaticFile.__init__whitenoise/responders.py:762 ms4.3%
WhiteNoise.get_static_filewhitenoise/base.py:2035 ms8.5%
WhiteNoise.add_cache_headerswhitenoise/base.py:2245 ms8.5%
WhiteNoiseMiddleware.immutable_file_testwhitenoise/middleware.py:1762 ms4.3%
WhiteNoiseMiddleware.get_static_urlwhitenoise/middleware.py:1972 ms4.3%
URLMixin.urldebug_toolbar/panels/staticfiles.py:202 ms4.3%
HashedFilesMixin.urldjango/contrib/staticfiles/storage.py:2052 ms4.3%
HashedFilesMixin._urldjango/contrib/staticfiles/storage.py:1862 ms4.3%
FileSystemStorage.urldjango/core/files/storage/filesystem.py:2092 ms4.3%
WhiteNoise.update_files_dictionarywhitenoise/base.py:1155 ms8.5%
scantreewhitenoise/base.py:2625 ms8.5%
scantreewhitenoise/base.py:2625 ms8.5%
scantreewhitenoise/base.py:2642 ms4.3%
scantreewhitenoise/base.py:2622 ms4.3%
scantreewhitenoise/base.py:2622 ms4.3%
scantreewhitenoise/base.py:2622 ms4.3%
scantreewhitenoise/base.py:2642 ms4.3%
ClientHandler.__call__django/test/client.py:1867 ms12.8%
BaseHandler.get_responsedjango/core/handlers/base.py:1417 ms12.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms12.8%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:1307 ms12.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms12.8%
MiddlewareMixin.__call__django/utils/deprecation.py:3097 ms12.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms12.8%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:1237 ms12.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms12.8%
MiddlewareMixin.__call__django/utils/deprecation.py:3097 ms12.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms12.8%
MiddlewareMixin.__call__django/utils/deprecation.py:3097 ms12.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms12.8%
MiddlewareMixin.__call__django/utils/deprecation.py:3097 ms12.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms12.8%
MiddlewareMixin.__call__django/utils/deprecation.py:3097 ms12.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms12.8%
MiddlewareMixin.__call__django/utils/deprecation.py:3097 ms12.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms12.8%
MiddlewareMixin.__call__django/utils/deprecation.py:3097 ms12.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms12.8%
AccountMiddleware.<locals>.middlewareallauth/account/middleware.py:347 ms12.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms12.8%
BaseHandler._get_responsedjango/core/handlers/base.py:1987 ms12.8%
project_runapps/projects/urls.py:4017 ms12.8%
find_projectapps/projects/urls.py:525 ms8.5%
can_viewapps/projects/urls.py:335 ms8.5%
can_manage_projectapps/projects/urls.py:38 if not user.is_authenticated:2 ms4.3%
new_method_proxy.<locals>.innerdjango/utils/functional.py:2512 ms4.3%
SimpleLazyObject._setupdjango/utils/functional.py:4042 ms4.3%
AuthenticationMiddleware.process_request.<locals>.<lambda>django/contrib/auth/middleware.py:402 ms4.3%
get_userdjango/contrib/auth/middleware.py:202 ms4.3%
get_userdjango/contrib/auth/__init__.py:3112 ms4.3%
_get_user_session_keydjango/contrib/auth/__init__.py:952 ms4.3%
SessionBase.__getitem__django/contrib/sessions/backends/base.py:552 ms4.3%
SessionBase._get_sessiondjango/contrib/sessions/backends/base.py:2512 ms4.3%
SessionStore.loaddjango/contrib/sessions/backends/db.py:552 ms4.3%
SessionStore._get_session_from_dbdjango/contrib/sessions/backends/db.py:342 ms4.3%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms4.3%
QuerySet.getdjango/db/models/query.py:6352 ms4.3%
QuerySet.__len__django/db/models/query.py:3722 ms4.3%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms4.3%
ModelIterable.__iter__django/db/models/query.py:952 ms4.3%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms4.3%
CursorWrapper.executedjango/db/backends/utils.py:792 ms4.3%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms4.3%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms4.3%
Cursor.executepsycopg/cursor.py:1132 ms4.3%
Connection.waitpsycopg/connection.py:4952 ms4.3%
can_manage_projectapps/projects/urls.py:40 return user.is_superuser or project.organization.membership_set.filter(user=user).exists()2 ms4.3%
QuerySet.existsdjango/db/models/query.py:13372 ms4.3%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms4.3%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms4.3%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms4.3%
CursorWrapper.executedjango/db/backends/utils.py:792 ms4.3%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms4.3%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms4.3%
Cursor.executepsycopg/cursor.py:1132 ms4.3%
Connection.waitpsycopg/connection.py:4952 ms4.3%
find_projectapps/projects/urls.py:49 project = get_object_or_404(2 ms4.3%
get_object_or_404django/shortcuts.py:902 ms4.3%
QuerySet.getdjango/db/models/query.py:6352 ms4.3%
QuerySet.__len__django/db/models/query.py:3722 ms4.3%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms4.3%
ModelIterable.__iter__django/db/models/query.py:952 ms4.3%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms4.3%
CursorWrapper.executedjango/db/backends/utils.py:792 ms4.3%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms4.3%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms4.3%
Cursor.executepsycopg/cursor.py:1132 ms4.3%
Connection.waitpsycopg/connection.py:4952 ms4.3%
ProjectRunPage.setUpapps/projects/tests.py:307 self.client.force_login(self.user)7 ms12.8%
ClientMixin.force_logindjango/test/client.py:8557 ms12.8%
ClientMixin._logindjango/test/client.py:8815 ms8.5%
logindjango/contrib/auth/__init__.py:1875 ms8.5%
SessionBase.cycle_keydjango/contrib/sessions/backends/base.py:4342 ms4.3%
SessionStore.createdjango/contrib/sessions/backends/db.py:742 ms4.3%
SessionStore.savedjango/contrib/sessions/backends/db.py:1272 ms4.3%
Model.savedjango/db/models/base.py:8742 ms4.3%
Model.save_basedjango/db/models/base.py:9662 ms4.3%
Model._save_tabledjango/db/models/base.py:11672 ms4.3%
Model._do_insertdjango/db/models/base.py:12182 ms4.3%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms4.3%
QuerySet._insertdjango/db/models/query.py:19182 ms4.3%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms4.3%
CursorWrapper.executedjango/db/backends/utils.py:792 ms4.3%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms4.3%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms4.3%
Cursor.executepsycopg/cursor.py:1132 ms4.3%
Connection.waitpsycopg/connection.py:4952 ms4.3%
SessionBase.cycle_keydjango/contrib/sessions/backends/base.py:4372 ms4.3%
SessionStore.deletedjango/contrib/sessions/backends/db.py:1752 ms4.3%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms4.3%
QuerySet.getdjango/db/models/query.py:6352 ms4.3%
QuerySet.__len__django/db/models/query.py:3722 ms4.3%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms4.3%
ModelIterable.__iter__django/db/models/query.py:952 ms4.3%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms4.3%
CursorWrapper.executedjango/db/backends/utils.py:792 ms4.3%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms4.3%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms4.3%
Cursor.executepsycopg/cursor.py:1132 ms4.3%
Connection.waitpsycopg/connection.py:4952 ms4.3%
ClientMixin._logindjango/test/client.py:8832 ms4.3%
SessionStore.savedjango/contrib/sessions/backends/db.py:1272 ms4.3%
Model.savedjango/db/models/base.py:8742 ms4.3%
Model.save_basedjango/db/models/base.py:9662 ms4.3%
Model._save_tabledjango/db/models/base.py:11102 ms4.3%
Model._do_updatedjango/db/models/base.py:12112 ms4.3%
QuerySet._updatedjango/db/models/query.py:13272 ms4.3%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21402 ms4.3%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms4.3%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms4.3%
CursorWrapper.executedjango/db/backends/utils.py:792 ms4.3%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms4.3%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms4.3%
Cursor.executepsycopg/cursor.py:1132 ms4.3%
Connection.waitpsycopg/connection.py:4952 ms4.3%
ProjectRunPage.test_other_peoples_projectapps/projects/tests.py:3167 ms12.8%
make_projectapps/projects/testing.py:622 ms4.3%
unique_slugapps/orgs/models.py:46 while slug in reserved or taken.filter(slug=slug).exists():2 ms4.3%
QuerySet.existsdjango/db/models/query.py:13372 ms4.3%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms4.3%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms4.3%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms4.3%
CursorWrapper.executedjango/db/backends/utils.py:792 ms4.3%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms4.3%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms4.3%
Cursor.executepsycopg/cursor.py:1132 ms4.3%
Connection.waitpsycopg/connection.py:4952 ms4.3%
make_projectapps/projects/testing.py:67 slug=unique_slug(name, organization.project_set.all(), fallback="project", reserved=RESERVED_PROJECT_SLUGS),2 ms4.3%
unique_slugapps/orgs/models.py:46 while slug in reserved or taken.filter(slug=slug).exists():2 ms4.3%
QuerySet.filterdjango/db/models/query.py:15412 ms4.3%
QuerySet._not_support_combined_queriesdjango/db/models/query.py:20742 ms4.3%
QuerySet.querydjango/db/models/query.py:3062 ms4.3%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15702 ms4.3%
Query.add_qdjango/db/models/sql/query.py:16732 ms4.3%
Node.adddjango/utils/tree.py:1092 ms4.3%
make_projectapps/projects/testing.py:64 project = Project.objects.create(2 ms4.3%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms4.3%
QuerySet.createdjango/db/models/query.py:6692 ms4.3%
Model.savedjango/db/models/base.py:8742 ms4.3%
Model.save_basedjango/db/models/base.py:9662 ms4.3%
Model._save_tabledjango/db/models/base.py:11672 ms4.3%
Model._do_insertdjango/db/models/base.py:12182 ms4.3%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms4.3%
QuerySet._insertdjango/db/models/query.py:19182 ms4.3%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms4.3%
CursorWrapper.executedjango/db/backends/utils.py:792 ms4.3%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms4.3%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms4.3%
Cursor.executepsycopg/cursor.py:1132 ms4.3%
Connection.waitpsycopg/connection.py:4952 ms4.3%
TransactionTestCase._pre_setupdjango/test/testcases.py:1164 cls._fixture_setup()2 ms4.3%
TestCase._fixture_setupdjango/test/testcases.py:14782 ms4.3%
TestCase._enter_atomicsdjango/test/testcases.py:13962 ms4.3%
Atomic.__enter__django/db/transaction.py:2112 ms4.3%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms4.3%
BaseDatabaseWrapper.savepointdjango/db/backends/base/base.py:4002 ms4.3%
BaseDatabaseWrapper._savepointdjango/db/backends/base/base.py:3672 ms4.3%
CursorWrapper.executedjango/db/backends/utils.py:792 ms4.3%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms4.3%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms4.3%
Cursor.executepsycopg/cursor.py:1132 ms4.3%
Connection.waitpsycopg/connection.py:4952 ms4.3%
ProjectRunPage.test_other_peoples_projectapps/projects/tests.py:318 other_project_run = Run.objects.create(project=other_project, external_id="1234", ingest=ingest)2 ms4.3%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms4.3%
QuerySet.createdjango/db/models/query.py:6672 ms4.3%
Model.__init__django/db/models/base.py:5692 ms4.3%
TransactionTestCase._post_teardowndjango/test/testcases.py:1240 self._fixture_teardown()2 ms4.3%
TestCase._fixture_teardowndjango/test/testcases.py:14972 ms4.3%
TestCase._rollback_atomicsdjango/test/testcases.py:14052 ms4.3%
Atomic.__exit__django/db/transaction.py:2832 ms4.3%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms4.3%
BaseDatabaseWrapper.savepoint_rollbackdjango/db/backends/base/base.py:4132 ms4.3%
BaseDatabaseWrapper._savepoint_rollbackdjango/db/backends/base/base.py:3712 ms4.3%
CursorWrapper.executedjango/db/backends/utils.py:792 ms4.3%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms4.3%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms4.3%
Cursor.executepsycopg/cursor.py:1132 ms4.3%
Connection.waitpsycopg/connection.py:4952 ms4.3%
Estimated from 23 samples; phase durations are exact. Frames from pytest and pluggy are
hidden
.
Hot lines in your code
|
apps/projects/tests.py:319
response = self.client.get(other_project.url("project_run", other_project_run.number))
ProjectRunPage.test_other_peoples_project
· Libraries
|
26 ms |
|
apps/projects/tests.py:307
self.client.force_login(self.user)
ProjectRunPage.setUp
· Database
|
7 ms |
|
apps/orgs/models.py:46
while slug in reserved or taken.filter(slug=slug).exists():
unique_slug
· Database
|
5 ms |
|
apps/projects/testing.py:64
project = Project.objects.create(
make_project
· Database
|
2 ms |
|
apps/projects/tests.py:318
other_project_run = Run.objects.create(project=other_project, external_id="1234", ingest=ingest)
ProjectRunPage.test_other_peoples_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| _template_string_if_invalid_marker function | 0.08 ms |
| _dj_autoclear_mailbox function | 0.05 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.04 ms |
| monkeypatch function | 0.02 ms |
Database
31 queries · 10 msNo repeated queries.
Biggest pieces of work
|
call test body
apps/projects/tests.py:319
|
42 ms |
|
call setUp
apps/projects/tests.py:307
|
7 ms |
|
call _pre_setup
django/test/testcases.py:1164
|
2 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 | 55 ms | Profile |
| 43 minutes ago | CI github-actions:test | passed | 55 ms | Profile |
| 7 hours ago | CI github-actions:test | passed | 54 ms | Profile |
| 7 hours ago | CI github-actions:test | passed | 29 ms | Profile |
| 7 hours ago | CI github-actions:test | passed | 55 ms | Profile |
| 2 years ago | CI github-actions | passed | 96 ms | Run |
| 2 years, 2 months ago | CI github-actions | passed | 97 ms | Run |
| 2 years, 3 months ago | CI github-actions | passed | 102 ms | Run |
| 2 years, 4 months ago | CI github-actions | passed | 105 ms | Run |
| 2 years, 4 months ago | CI github-actions | passed | 104 ms | Run |
| 2 years, 4 months ago | CI github-actions | passed | 105 ms | Run |
| 2 years, 4 months ago | CI github-actions | passed | 97 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 199 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 94 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 156 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 94 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 97 ms | Run |
| 2 years, 6 months ago | CI github-actions | passed | 97 ms | Run |
| 2 years, 6 months ago | CI github-actions | passed | 95 ms | Run |
| 2 years, 6 months ago | CI github-actions | passed | 93 ms | Run |