Tests / apps/orgs/tests.py
AccessTest::test_members_see_every_project_of_the_organization
First seen 3 weeks ago in 78a4357
CI
github-actions:test
12 runs
Average
102 ms
median 111 ms
max 138 ms
max 138 ms
Phases
Setup 16 ms
Call 85 ms
Teardown 0.17 ms
Categories
Database 53 ms
App code 0.12 ms
Password hashing 0.11 ms
Other (Templates, Libraries, Serialization, pytest, ...) 49 ms
54 database queries per run
Needs 402 KB of memory (max 868 KB)
Duration per run
Where the time goes
Latest run in ci:github-actions:test, 16 hours ago ·
open run
setup17 ms14.3%
TestCase.setUpClassdjango/test/testcases.py:1423 cls.cls_atomics = cls._enter_atomics()10 ms9.0%
TestCase._enter_atomicsdjango/test/testcases.py:139610 ms9.0%
Atomic.__enter__django/db/transaction.py:19810 ms9.0%
BaseDatabaseWrapper.get_autocommitdjango/db/backends/base/base.py:45410 ms9.0%
SimpleTestCase.ensure_connection_patch_method.<locals>.patched_ensure_connectiondjango/test/testcases.py:30310 ms9.0%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:2610 ms9.0%
BaseDatabaseWrapper.ensure_connectiondjango/db/backends/base/base.py:27910 ms9.0%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:2610 ms9.0%
BaseDatabaseWrapper.connectdjango/db/backends/base/base.py:2569 ms8.1%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:269 ms8.1%
DatabaseWrapper.get_new_connectiondjango/db/backends/postgresql/base.py:3339 ms8.1%
Connection.connectpsycopg/connection.py:1099 ms8.1%
wait_connpsycopg/waiting.py:1415 ms4.5%
EpollSelector.select<stdlib>/selectors.py:4525 ms4.5%
wait_connpsycopg/waiting.py:1454 ms3.6%
BaseConnection._connect_genpsycopg/_connection_base.py:4394 ms3.6%
BaseDatabaseWrapper.connectdjango/db/backends/base/base.py:2581 ms0.9%
DatabaseWrapper.init_connection_statedjango/db/backends/postgresql/base.py:4021 ms0.9%
DatabaseWrapper._configure_connectiondjango/db/backends/postgresql/base.py:3741 ms0.9%
DatabaseWrapper._configure_timezonedjango/db/backends/postgresql/base.py:3571 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
TestCase.setUpClassdjango/test/testcases.py:1439 cls.setUpTestData()6 ms5.4%
OrganizationTestCase.setUpTestDataapps/orgs/tests.py:582 ms1.8%
make_projectapps/projects/testing.py:67 slug=unique_slug(name, organization.project_set.all(), fallback="project", reserved=RESERVED_PROJECT_SLUGS),1 ms0.9%
unique_slugapps/orgs/models.py:46 while slug in reserved or taken.filter(slug=slug).exists():1 ms0.9%
QuerySet.existsdjango/db/models/query.py:13371 ms0.9%
Query.has_resultsdjango/db/models/sql/query.py:6811 ms0.9%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15921 ms0.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16241 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
make_projectapps/projects/testing.py:64 project = Project.objects.create(1 ms0.9%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms0.9%
QuerySet.createdjango/db/models/query.py:6691 ms0.9%
Model.savedjango/db/models/base.py:8741 ms0.9%
Model.save_basedjango/db/models/base.py:9661 ms0.9%
Model._save_tabledjango/db/models/base.py:11671 ms0.9%
Model._do_insertdjango/db/models/base.py:12181 ms0.9%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms0.9%
QuerySet._insertdjango/db/models/query.py:19181 ms0.9%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19231 ms0.9%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:261 ms0.9%
BaseDatabaseWrapper.cursordjango/db/backends/base/base.py:3201 ms0.9%
BaseDatabaseWrapper._cursordjango/db/backends/base/base.py:2981 ms0.9%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:261 ms0.9%
OrganizationTestCase.setUpTestDataapps/orgs/tests.py:52 cls.owner = User.objects.create_user("owner", email="[email protected]")1 ms0.9%
UserManager.create_userdjango/contrib/auth/models.py:1751 ms0.9%
UserManager._create_userdjango/contrib/auth/models.py:1631 ms0.9%
AbstractBaseUser.savedjango/contrib/auth/base_user.py:621 ms0.9%
Model.savedjango/db/models/base.py:8741 ms0.9%
Model.save_basedjango/db/models/base.py:9661 ms0.9%
Model._save_tabledjango/db/models/base.py:11671 ms0.9%
Model._do_insertdjango/db/models/base.py:12181 ms0.9%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms0.9%
QuerySet._insertdjango/db/models/query.py:19181 ms0.9%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19251 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
OrganizationTestCase.setUpTestDataapps/orgs/tests.py:53 cls.member = User.objects.create_user("member", email="[email protected]")1 ms0.9%
UserManager.create_userdjango/contrib/auth/models.py:1751 ms0.9%
UserManager._create_userdjango/contrib/auth/models.py:1631 ms0.9%
AbstractBaseUser.savedjango/contrib/auth/base_user.py:621 ms0.9%
Model.savedjango/db/models/base.py:8741 ms0.9%
Model.save_basedjango/db/models/base.py:9661 ms0.9%
Model._save_tabledjango/db/models/base.py:11671 ms0.9%
Model._do_insertdjango/db/models/base.py:12181 ms0.9%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms0.9%
QuerySet._insertdjango/db/models/query.py:19181 ms0.9%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19231 ms0.9%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:261 ms0.9%
OrganizationTestCase.setUpTestDataapps/orgs/tests.py:54 cls.stranger = User.objects.create_user("stranger", email="[email protected]")1 ms0.9%
UserManager.create_userdjango/contrib/auth/models.py:1751 ms0.9%
UserManager._create_userdjango/contrib/auth/models.py:1631 ms0.9%
AbstractBaseUser.savedjango/contrib/auth/base_user.py:621 ms0.9%
Model.savedjango/db/models/base.py:8741 ms0.9%
Model.save_basedjango/db/models/base.py:9661 ms0.9%
Model._save_tabledjango/db/models/base.py:11671 ms0.9%
Model._do_insertdjango/db/models/base.py:12181 ms0.9%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms0.9%
QuerySet._insertdjango/db/models/query.py:19181 ms0.9%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19251 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
OrganizationTestCase.setUpTestDataapps/orgs/tests.py:571 ms0.9%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms0.9%
QuerySet.createdjango/db/models/query.py:6691 ms0.9%
Model.savedjango/db/models/base.py:8741 ms0.9%
Model.save_basedjango/db/models/base.py:9661 ms0.9%
Model._save_tabledjango/db/models/base.py:11671 ms0.9%
Model._do_insertdjango/db/models/base.py:12181 ms0.9%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms0.9%
QuerySet._insertdjango/db/models/query.py:19181 ms0.9%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19251 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
call99 ms85.5%
AccessTest.test_members_see_every_project_of_the_organizationapps/orgs/tests.py:64 self.assertEqual(self.client.get(self.project.url()).status_code, 200)68 ms59.0%
Client.getdjango/test/client.py:112468 ms59.0%
RequestFactory.getdjango/test/client.py:47568 ms59.0%
RequestFactory.genericdjango/test/client.py:67168 ms59.0%
Client.requestdjango/test/client.py:108268 ms59.0%
ClientHandler.__call__django/test/client.py:18649 ms42.8%
BaseHandler.get_responsedjango/core/handlers/base.py:14149 ms42.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5549 ms42.8%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:13049 ms42.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5549 ms42.8%
MiddlewareMixin.__call__django/utils/deprecation.py:30949 ms42.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5549 ms42.8%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:12349 ms42.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5549 ms42.8%
MiddlewareMixin.__call__django/utils/deprecation.py:30949 ms42.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5549 ms42.8%
MiddlewareMixin.__call__django/utils/deprecation.py:30949 ms42.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5549 ms42.8%
MiddlewareMixin.__call__django/utils/deprecation.py:30949 ms42.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5549 ms42.8%
MiddlewareMixin.__call__django/utils/deprecation.py:30949 ms42.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5549 ms42.8%
MiddlewareMixin.__call__django/utils/deprecation.py:30949 ms42.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5549 ms42.8%
MiddlewareMixin.__call__django/utils/deprecation.py:30949 ms42.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5549 ms42.8%
AccountMiddleware.<locals>.middlewareallauth/account/middleware.py:3449 ms42.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5549 ms42.8%
BaseHandler._get_responsedjango/core/handlers/base.py:19849 ms42.8%
project_dashboardapps/projects/urls.py:138 return render(request, "project_setup.html", context)25 ms22.1%
renderdjango/shortcuts.py:2525 ms22.1%
render_to_stringdjango/template/loader.py:6225 ms22.1%
Template.renderdjango/template/backends/django.py:10725 ms22.1%
Template.renderdjango/template/base.py:17425 ms22.1%
instrumented_test_renderdjango/test/utils.py:11425 ms22.1%
NodeList.renderdjango/template/base.py:109125 ms22.1%
Node.render_annotateddjango/template/base.py:105225 ms22.1%
ExtendsNode.renderdjango/template/loader_tags.py:16025 ms22.1%
instrumented_test_renderdjango/test/utils.py:11425 ms22.1%
NodeList.renderdjango/template/base.py:109125 ms22.1%
Node.render_annotateddjango/template/base.py:105225 ms22.1%
ExtendsNode.renderdjango/template/loader_tags.py:16025 ms22.1%
instrumented_test_renderdjango/test/utils.py:11422 ms19.2%
NodeList.renderdjango/template/base.py:109122 ms19.2%
Node.render_annotateddjango/template/base.py:105222 ms19.2%
BlockNode.renderdjango/template/loader_tags.py:6622 ms19.2%
NodeList.renderdjango/template/base.py:109122 ms19.2%
Node.render_annotateddjango/template/base.py:105222 ms19.2%
BlockNode.renderdjango/template/loader_tags.py:6622 ms19.2%
NodeList.renderdjango/template/base.py:109122 ms19.2%
Node.render_annotateddjango/template/base.py:105222 ms19.2%
SimpleNode.renderdjango/template/library.py:32520 ms17.7%
heroicon_miniheroicons/templatetags/heroicons.py:1819 ms16.2%
_render_iconheroicons/templatetags/heroicons.py:3919 ms16.2%
_render_iconheroicons/__init__.py:4519 ms16.2%
_load_iconheroicons/__init__.py:1817 ms14.7%
ZipFile.__init__<stdlib>/zipfile/__init__.py:150517 ms14.7%
ZipFile._RealGetContents<stdlib>/zipfile/__init__.py:16065 ms4.4%
ZipFile._RealGetContents<stdlib>/zipfile/__init__.py:16233 ms2.9%
ZipFile._RealGetContents<stdlib>/zipfile/__init__.py:15993 ms2.9%
ZipFile._RealGetContents<stdlib>/zipfile/__init__.py:16212 ms1.5%
ZipFile._RealGetContents<stdlib>/zipfile/__init__.py:16082 ms1.5%
ZipFile._RealGetContents<stdlib>/zipfile/__init__.py:15932 ms1.5%
_load_iconheroicons/__init__.py:262 ms1.5%
XML<stdlib>/xml/etree/ElementTree.py:13692 ms1.5%
purlft/templatetags/helpers.py:302 ms1.5%
Project.urlapps/projects/models.py:59 return reverse(name, args=[self.organization.slug, self.slug, *args])2 ms1.5%
reversedjango/urls/base.py:982 ms1.5%
URLResolver._reverse_with_prefixdjango/urls/resolvers.py:8032 ms1.5%
search<stdlib>/re/__init__.py:1792 ms1.5%
_compile<stdlib>/re/__init__.py:3522 ms1.5%
IfNode.renderdjango/template/defaulttags.py:3332 ms1.5%
NodeList.renderdjango/template/base.py:10912 ms1.5%
Node.render_annotateddjango/template/base.py:10522 ms1.5%
WithNode.renderdjango/template/defaulttags.py:5812 ms1.5%
NodeList.renderdjango/template/base.py:10912 ms1.5%
Node.render_annotateddjango/template/base.py:10522 ms1.5%
IncludeNode.renderdjango/template/loader_tags.py:2002 ms1.5%
Engine.select_templatedjango/template/engine.py:2282 ms1.5%
Engine.get_templatedjango/template/engine.py:1862 ms1.5%
Engine.find_templatedjango/template/engine.py:1592 ms1.5%
Loader.get_templatedjango/template/loaders/cached.py:572 ms1.5%
Loader.get_templatedjango/template/loaders/base.py:282 ms1.5%
__init____init__:-12 ms1.5%
Template.__init__django/template/base.py:1572 ms1.5%
Template.compile_nodelistdjango/template/base.py:1902 ms1.5%
instrumented_test_renderdjango/test/utils.py:1133 ms2.9%
Signal.senddjango/dispatch/dispatcher.py:2092 ms1.5%
NodeList.renderdjango/template/base.py:10912 ms1.5%
Node.render_annotateddjango/template/base.py:10522 ms1.5%
BlockNode.renderdjango/template/loader_tags.py:662 ms1.5%
NodeList.renderdjango/template/base.py:10912 ms1.5%
Node.render_annotateddjango/template/base.py:10522 ms1.5%
IfNode.renderdjango/template/defaulttags.py:3332 ms1.5%
NodeList.renderdjango/template/base.py:10912 ms1.5%
Node.render_annotateddjango/template/base.py:10522 ms1.5%
CsrfTokenNode.renderdjango/template/defaulttags.py:782 ms1.5%
new_method_proxy.<locals>.innerdjango/utils/functional.py:2512 ms1.5%
SimpleLazyObject._setupdjango/utils/functional.py:4042 ms1.5%
csrf.<locals>._get_valdjango/template/context_processors.py:252 ms1.5%
get_tokendjango/middleware/csrf.py:1132 ms1.5%
_add_new_csrf_cookiedjango/middleware/csrf.py:862 ms1.5%
_get_new_csrf_stringdjango/middleware/csrf.py:562 ms1.5%
get_random_stringdjango/utils/crypto.py:622 ms1.5%
get_random_string.<locals>.<genexpr>django/utils/crypto.py:622 ms1.5%
Random.choice<stdlib>/random.py:3542 ms1.5%
Random._randbelow_with_getrandbits<stdlib>/random.py:2492 ms1.5%
SystemRandom.getrandbits<stdlib>/random.py:9152 ms1.5%
project_dashboardapps/projects/urls.py:13519 ms16.2%
shellapps/projects/urls.py:7314 ms11.8%
can_manageapps/projects/urls.py:4414 ms11.8%
can_manage_projectapps/projects/urls.py:40 return user.is_superuser or project.organization.membership_set.filter(user=user).exists()14 ms11.8%
QuerySet.existsdjango/db/models/query.py:13378 ms7.4%
Query.has_resultsdjango/db/models/sql/query.py:6798 ms7.4%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15927 ms5.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16245 ms4.4%
CursorWrapper.executedjango/db/backends/utils.py:795 ms4.4%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:925 ms4.4%
CursorWrapper._executedjango/db/backends/utils.py:1055 ms4.4%
Cursor.executepsycopg/cursor.py:1135 ms4.4%
Connection.waitpsycopg/connection.py:4955 ms4.4%
BaseCursor._execute_genpsycopg/_cursor_base.py:2063 ms2.9%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2863 ms2.9%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:783 ms2.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms1.5%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7952 ms1.5%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5782 ms1.5%
WhereNode.as_sqldjango/db/models/sql/where.py:1512 ms1.5%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5782 ms1.5%
RelatedLookupMixin.as_sqldjango/db/models/fields/related_lookups.py:1282 ms1.5%
Exact.as_sqldjango/db/models/lookups.py:4072 ms1.5%
BuiltinLookup.as_sqldjango/db/models/lookups.py:2382 ms1.5%
BuiltinLookup.process_lhsdjango/db/models/lookups.py:2302 ms1.5%
Lookup.process_lhsdjango/db/models/lookups.py:1102 ms1.5%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5782 ms1.5%
Query.existsdjango/db/models/sql/query.py:6662 ms1.5%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:875 ms4.4%
QuerySet.filterdjango/db/models/query.py:15412 ms1.5%
QuerySet._not_support_combined_queriesdjango/db/models/query.py:20742 ms1.5%
QuerySet.querydjango/db/models/query.py:3062 ms1.5%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15702 ms1.5%
Query.add_qdjango/db/models/sql/query.py:16712 ms1.5%
Query._add_qdjango/db/models/sql/query.py:17032 ms1.5%
Query.build_filterdjango/db/models/sql/query.py:16072 ms1.5%
Query._get_coldjango/db/models/sql/query.py:4512 ms1.5%
QuerySet.filterdjango/db/models/query.py:15422 ms1.5%
QuerySet._filter_or_excludedjango/db/models/query.py:15602 ms1.5%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15702 ms1.5%
Query.add_qdjango/db/models/sql/query.py:16712 ms1.5%
Query._add_qdjango/db/models/sql/query.py:17032 ms1.5%
Query.build_filterdjango/db/models/sql/query.py:15772 ms1.5%
Query.setup_joinsdjango/db/models/sql/query.py:19772 ms1.5%
shellapps/projects/urls.py:71 return org_shell(request, project.organization if project else None, section) | {5 ms4.4%
org_shellapps/orgs/views.py:425 ms4.4%
Organization.is_ownerapps/orgs/models.py:65 return user.is_authenticated and self.membership_set.filter(user=user, role=Membership.Role.OWNER).exists()5 ms4.4%
QuerySet.existsdjango/db/models/query.py:13373 ms2.9%
Query.has_resultsdjango/db/models/sql/query.py:6813 ms2.9%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15923 ms2.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16243 ms2.9%
CursorWrapper.executedjango/db/backends/utils.py:793 ms2.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms2.9%
CursorWrapper._executedjango/db/backends/utils.py:1053 ms2.9%
Cursor.executepsycopg/cursor.py:1133 ms2.9%
Connection.waitpsycopg/connection.py:4953 ms2.9%
BaseCursor._execute_genpsycopg/_cursor_base.py:2052 ms1.5%
BaseCursor._convert_querypsycopg/_cursor_base.py:4652 ms1.5%
PostgresClientQuery.convertpsycopg/_queries.py:2892 ms1.5%
PostgresClientQuery.dumppsycopg/_queries.py:2992 ms1.5%
PostgresClientQuery.dump.<locals>.<genexpr>psycopg/_queries.py:3002 ms1.5%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms1.5%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms1.5%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms1.5%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.5%
QuerySet.filterdjango/db/models/query.py:15422 ms1.5%
QuerySet._filter_or_excludedjango/db/models/query.py:15602 ms1.5%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15702 ms1.5%
Query.add_qdjango/db/models/sql/query.py:16712 ms1.5%
Query._add_qdjango/db/models/sql/query.py:17032 ms1.5%
Query.build_filterdjango/db/models/sql/query.py:16132 ms1.5%
Query.build_lookupdjango/db/models/sql/query.py:14402 ms1.5%
project_dashboardapps/projects/urls.py:136 has_profiles = Profile.objects.filter(project=project).exists()3 ms2.9%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.5%
QuerySet.filterdjango/db/models/query.py:15422 ms1.5%
QuerySet._filter_or_excludedjango/db/models/query.py:15552 ms1.5%
QuerySet._chaindjango/db/models/query.py:19732 ms1.5%
QuerySet.existsdjango/db/models/query.py:13372 ms1.5%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms1.5%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms1.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.5%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.5%
Cursor.executepsycopg/cursor.py:1132 ms1.5%
Connection.waitpsycopg/connection.py:4952 ms1.5%
project_dashboardapps/projects/urls.py:137 if not has_profiles and not Run.objects.filter(project=project).exists():2 ms1.5%
QuerySet.existsdjango/db/models/query.py:13372 ms1.5%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms1.5%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms1.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.5%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.5%
Cursor.executepsycopg/cursor.py:1132 ms1.5%
Connection.waitpsycopg/connection.py:4952 ms1.5%
ClientHandler.__call__django/test/client.py:17319 ms16.2%
BaseHandler.load_middlewaredjango/core/handlers/base.py:6219 ms16.2%
WhiteNoiseMiddleware.__init__whitenoise/middleware.py:10417 ms14.7%
WhiteNoise.add_fileswhitenoise/base.py:10817 ms14.7%
WhiteNoise.update_files_dictionarywhitenoise/base.py:12015 ms13.3%
WhiteNoise.add_file_to_dictionarywhitenoise/base.py:13114 ms11.8%
WhiteNoise.get_static_filewhitenoise/base.py:2025 ms4.4%
WhiteNoise.get_static_filewhitenoise/base.py:2085 ms4.4%
StaticFile.__init__whitenoise/responders.py:763 ms2.9%
StaticFile.get_not_modified_responsewhitenoise/responders.py:1892 ms1.5%
Headers.__getitem__<stdlib>/wsgiref/headers.py:832 ms1.5%
Headers.get<stdlib>/wsgiref/headers.py:1062 ms1.5%
StaticFile.__init__whitenoise/responders.py:772 ms1.5%
StaticFile.get_alternativeswhitenoise/responders.py:2032 ms1.5%
WhiteNoise.get_static_filewhitenoise/base.py:2032 ms1.5%
WhiteNoise.add_cache_headerswhitenoise/base.py:2242 ms1.5%
WhiteNoiseMiddleware.immutable_file_testwhitenoise/middleware.py:1762 ms1.5%
WhiteNoiseMiddleware.get_static_urlwhitenoise/middleware.py:1972 ms1.5%
URLMixin.urldebug_toolbar/panels/staticfiles.py:202 ms1.5%
HashedFilesMixin.urldjango/contrib/staticfiles/storage.py:2052 ms1.5%
HashedFilesMixin._urldjango/contrib/staticfiles/storage.py:1782 ms1.5%
urlsplit<stdlib>/urllib/parse.py:5822 ms1.5%
WhiteNoise.update_files_dictionarywhitenoise/base.py:1152 ms1.5%
scantreewhitenoise/base.py:2622 ms1.5%
scantreewhitenoise/base.py:2622 ms1.5%
scantreewhitenoise/base.py:2602 ms1.5%
WhiteNoiseMiddleware.__init__whitenoise/middleware.py:442 ms1.5%
LazySettings.__getattr__django/conf/__init__.py:772 ms1.5%
AccessTest.test_members_see_every_project_of_the_organizationapps/orgs/tests.py:65 response = self.client.get(reverse("org_projects", args=["acme"]))15 ms13.3%
Client.getdjango/test/client.py:112415 ms13.3%
RequestFactory.getdjango/test/client.py:47515 ms13.3%
RequestFactory.genericdjango/test/client.py:67115 ms13.3%
Client.requestdjango/test/client.py:108215 ms13.3%
ClientHandler.__call__django/test/client.py:18615 ms13.3%
BaseHandler.get_responsedjango/core/handlers/base.py:14115 ms13.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5515 ms13.3%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:13015 ms13.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5515 ms13.3%
MiddlewareMixin.__call__django/utils/deprecation.py:30915 ms13.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5515 ms13.3%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:12315 ms13.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5515 ms13.3%
MiddlewareMixin.__call__django/utils/deprecation.py:30914 ms11.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5514 ms11.8%
MiddlewareMixin.__call__django/utils/deprecation.py:30914 ms11.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5514 ms11.8%
MiddlewareMixin.__call__django/utils/deprecation.py:30914 ms11.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5514 ms11.8%
MiddlewareMixin.__call__django/utils/deprecation.py:30914 ms11.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5514 ms11.8%
MiddlewareMixin.__call__django/utils/deprecation.py:30914 ms11.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5514 ms11.8%
MiddlewareMixin.__call__django/utils/deprecation.py:30914 ms11.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5514 ms11.8%
AccountMiddleware.<locals>.middlewareallauth/account/middleware.py:3414 ms11.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5514 ms11.8%
BaseHandler._get_responsedjango/core/handlers/base.py:19814 ms11.8%
user_passes_test.<locals>.decorator.<locals>._view_wrapperdjango/contrib/auth/decorators.py:5912 ms10.3%
org_projectsapps/orgs/views.py:96 cards = [{"project": project, **analytics.project_card(project)} for project in projects]7 ms5.9%
QuerySet.__iter__django/db/models/query.py:3903 ms2.9%
QuerySet._fetch_alldjango/db/models/query.py:20003 ms2.9%
ModelIterable.__iter__django/db/models/query.py:953 ms2.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16243 ms2.9%
CursorWrapper.executedjango/db/backends/utils.py:793 ms2.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms2.9%
CursorWrapper._executedjango/db/backends/utils.py:1053 ms2.9%
Cursor.executepsycopg/cursor.py:1133 ms2.9%
Connection.waitpsycopg/connection.py:4953 ms2.9%
project_cardapps/projects/analytics.py:579 .first()3 ms2.9%
QuerySet.firstdjango/db/models/query.py:11453 ms2.9%
QuerySet.__iter__django/db/models/query.py:3903 ms2.9%
QuerySet._fetch_alldjango/db/models/query.py:20003 ms2.9%
ValuesIterable.__iter__django/db/models/query.py:2223 ms2.9%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15733 ms2.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms1.5%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms1.5%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:872 ms1.5%
SQLCompiler.get_order_bydjango/db/models/sql/compiler.py:4912 ms1.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.5%
org_projectsapps/orgs/views.py:97 return render(request, "org.html", {**org_shell(request, organization, "projects"), "cards": cards})3 ms2.9%
org_shellapps/orgs/views.py:422 ms1.5%
Organization.is_ownerapps/orgs/models.py:65 return user.is_authenticated and self.membership_set.filter(user=user, role=Membership.Role.OWNER).exists()2 ms1.5%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.5%
QuerySet.filterdjango/db/models/query.py:15422 ms1.5%
QuerySet._filter_or_excludedjango/db/models/query.py:15602 ms1.5%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15702 ms1.5%
Query.add_qdjango/db/models/sql/query.py:16712 ms1.5%
Query._add_qdjango/db/models/sql/query.py:17032 ms1.5%
Query.build_filterdjango/db/models/sql/query.py:16132 ms1.5%
renderdjango/shortcuts.py:252 ms1.5%
render_to_stringdjango/template/loader.py:622 ms1.5%
Template.renderdjango/template/backends/django.py:1072 ms1.5%
Template.renderdjango/template/base.py:1742 ms1.5%
instrumented_test_renderdjango/test/utils.py:1142 ms1.5%
NodeList.renderdjango/template/base.py:10912 ms1.5%
Node.render_annotateddjango/template/base.py:10522 ms1.5%
ExtendsNode.renderdjango/template/loader_tags.py:1602 ms1.5%
instrumented_test_renderdjango/test/utils.py:1142 ms1.5%
NodeList.renderdjango/template/base.py:10912 ms1.5%
Node.render_annotateddjango/template/base.py:10522 ms1.5%
ExtendsNode.renderdjango/template/loader_tags.py:1602 ms1.5%
instrumented_test_renderdjango/test/utils.py:1142 ms1.5%
NodeList.renderdjango/template/base.py:10912 ms1.5%
Node.render_annotateddjango/template/base.py:10522 ms1.5%
BlockNode.renderdjango/template/loader_tags.py:662 ms1.5%
NodeList.renderdjango/template/base.py:10912 ms1.5%
Node.render_annotateddjango/template/base.py:10522 ms1.5%
IfNode.renderdjango/template/defaulttags.py:3332 ms1.5%
NodeList.renderdjango/template/base.py:10912 ms1.5%
Node.render_annotateddjango/template/base.py:10522 ms1.5%
CsrfTokenNode.renderdjango/template/defaulttags.py:782 ms1.5%
new_method_proxy.<locals>.innerdjango/utils/functional.py:2512 ms1.5%
SimpleLazyObject._setupdjango/utils/functional.py:4042 ms1.5%
csrf.<locals>._get_valdjango/template/context_processors.py:252 ms1.5%
get_tokendjango/middleware/csrf.py:1142 ms1.5%
_mask_cipher_secretdjango/middleware/csrf.py:642 ms1.5%
_get_new_csrf_stringdjango/middleware/csrf.py:562 ms1.5%
get_random_stringdjango/utils/crypto.py:622 ms1.5%
get_random_string.<locals>.<genexpr>django/utils/crypto.py:622 ms1.5%
Random.choice<stdlib>/random.py:3542 ms1.5%
Random._randbelow_with_getrandbits<stdlib>/random.py:2492 ms1.5%
org_projectsapps/orgs/views.py:842 ms1.5%
member_organizationapps/orgs/views.py:622 ms1.5%
Organization.is_memberapps/orgs/models.py:62 return user.is_authenticated and self.membership_set.filter(user=user).exists()2 ms1.5%
QuerySet.existsdjango/db/models/query.py:13372 ms1.5%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms1.5%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms1.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.5%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.5%
Cursor.executepsycopg/cursor.py:1132 ms1.5%
Connection.waitpsycopg/connection.py:4952 ms1.5%
user_passes_test.<locals>.decorator.<locals>._view_wrapperdjango/contrib/auth/decorators.py:562 ms1.5%
login_required.<locals>.<lambda>django/contrib/auth/decorators.py:792 ms1.5%
new_method_proxy.<locals>.innerdjango/utils/functional.py:2512 ms1.5%
SimpleLazyObject._setupdjango/utils/functional.py:4042 ms1.5%
AuthenticationMiddleware.process_request.<locals>.<lambda>django/contrib/auth/middleware.py:402 ms1.5%
get_userdjango/contrib/auth/middleware.py:202 ms1.5%
get_userdjango/contrib/auth/__init__.py:3112 ms1.5%
_get_user_session_keydjango/contrib/auth/__init__.py:952 ms1.5%
SessionBase.__getitem__django/contrib/sessions/backends/base.py:552 ms1.5%
SessionBase._get_sessiondjango/contrib/sessions/backends/base.py:2512 ms1.5%
SessionStore.loaddjango/contrib/sessions/backends/db.py:552 ms1.5%
SessionStore._get_session_from_dbdjango/contrib/sessions/backends/db.py:342 ms1.5%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.5%
QuerySet.getdjango/db/models/query.py:6352 ms1.5%
QuerySet.__len__django/db/models/query.py:3722 ms1.5%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.5%
ModelIterable.__iter__django/db/models/query.py:952 ms1.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.5%
MiddlewareMixin.__call__django/utils/deprecation.py:3112 ms1.5%
SessionMiddleware.process_responsedjango/contrib/sessions/middleware.py:592 ms1.5%
SessionStore.savedjango/contrib/sessions/backends/db.py:1232 ms1.5%
SessionStore.create_model_instancedjango/contrib/sessions/backends/db.py:1022 ms1.5%
SessionBase.encodedjango/contrib/sessions/backends/base.py:1262 ms1.5%
dumpsdjango/core/signing.py:1512 ms1.5%
Signer.sign_objectdjango/core/signing.py:2322 ms1.5%
AccessTest.test_members_see_every_project_of_the_organizationapps/orgs/tests.py:63 self.client.force_login(self.member)14 ms11.8%
ClientMixin.force_logindjango/test/client.py:85514 ms11.8%
ClientMixin._logindjango/test/client.py:8817 ms5.9%
logindjango/contrib/auth/__init__.py:1875 ms4.4%
SessionBase.cycle_keydjango/contrib/sessions/backends/base.py:4343 ms2.9%
SessionStore.createdjango/contrib/sessions/backends/db.py:702 ms1.5%
SessionBase._get_new_session_keydjango/contrib/sessions/backends/base.py:1982 ms1.5%
SessionStore.existsdjango/contrib/sessions/backends/db.py:632 ms1.5%
QuerySet.existsdjango/db/models/query.py:13372 ms1.5%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms1.5%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms1.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.5%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.5%
Cursor.executepsycopg/cursor.py:1132 ms1.5%
SessionStore.createdjango/contrib/sessions/backends/db.py:742 ms1.5%
SessionStore.savedjango/contrib/sessions/backends/db.py:1272 ms1.5%
Model.savedjango/db/models/base.py:8742 ms1.5%
Model.save_basedjango/db/models/base.py:9662 ms1.5%
Model._save_tabledjango/db/models/base.py:11672 ms1.5%
Model._do_insertdjango/db/models/base.py:12182 ms1.5%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.5%
QuerySet._insertdjango/db/models/query.py:19182 ms1.5%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms1.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.5%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.5%
Cursor.executepsycopg/cursor.py:1132 ms1.5%
Connection.waitpsycopg/connection.py:4952 ms1.5%
SessionBase.cycle_keydjango/contrib/sessions/backends/base.py:4372 ms1.5%
SessionStore.deletedjango/contrib/sessions/backends/db.py:1752 ms1.5%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.5%
QuerySet.getdjango/db/models/query.py:6352 ms1.5%
QuerySet.__len__django/db/models/query.py:3722 ms1.5%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.5%
ModelIterable.__iter__django/db/models/query.py:952 ms1.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.5%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.5%
Cursor.executepsycopg/cursor.py:1132 ms1.5%
Connection.waitpsycopg/connection.py:4952 ms1.5%
logindjango/contrib/auth/__init__.py:1972 ms1.5%
Signal.senddjango/dispatch/dispatcher.py:2092 ms1.5%
update_last_logindjango/contrib/auth/models.py:242 ms1.5%
AbstractBaseUser.savedjango/contrib/auth/base_user.py:622 ms1.5%
Model.savedjango/db/models/base.py:8742 ms1.5%
Model.save_basedjango/db/models/base.py:9662 ms1.5%
Model._save_tabledjango/db/models/base.py:11102 ms1.5%
Model._do_updatedjango/db/models/base.py:12112 ms1.5%
QuerySet._updatedjango/db/models/query.py:13272 ms1.5%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21402 ms1.5%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms1.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.5%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.5%
Cursor.executepsycopg/cursor.py:1132 ms1.5%
Connection.waitpsycopg/connection.py:4952 ms1.5%
ClientMixin._logindjango/test/client.py:8763 ms2.9%
ClientMixin.sessiondjango/test/client.py:8123 ms2.9%
SessionStore.savedjango/contrib/sessions/backends/db.py:1213 ms2.9%
SessionStore.createdjango/contrib/sessions/backends/db.py:702 ms1.5%
SessionBase._get_new_session_keydjango/contrib/sessions/backends/base.py:1982 ms1.5%
SessionStore.existsdjango/contrib/sessions/backends/db.py:632 ms1.5%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.5%
QuerySet.filterdjango/db/models/query.py:15422 ms1.5%
QuerySet._filter_or_excludedjango/db/models/query.py:15602 ms1.5%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15702 ms1.5%
Query.add_qdjango/db/models/sql/query.py:16712 ms1.5%
Query._add_qdjango/db/models/sql/query.py:17032 ms1.5%
Query.build_filterdjango/db/models/sql/query.py:15772 ms1.5%
SessionStore.createdjango/contrib/sessions/backends/db.py:742 ms1.5%
SessionStore.savedjango/contrib/sessions/backends/db.py:1262 ms1.5%
Atomic.__enter__django/db/transaction.py:2112 ms1.5%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms1.5%
BaseDatabaseWrapper.savepointdjango/db/backends/base/base.py:4002 ms1.5%
BaseDatabaseWrapper._savepointdjango/db/backends/base/base.py:3672 ms1.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.5%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms1.5%
Cursor.executepsycopg/cursor.py:1132 ms1.5%
Connection.waitpsycopg/connection.py:4952 ms1.5%
ClientMixin._logindjango/test/client.py:8833 ms2.9%
SessionStore.savedjango/contrib/sessions/backends/db.py:1262 ms1.5%
Atomic.__enter__django/db/transaction.py:2112 ms1.5%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms1.5%
BaseDatabaseWrapper.savepointdjango/db/backends/base/base.py:4002 ms1.5%
BaseDatabaseWrapper._savepointdjango/db/backends/base/base.py:3672 ms1.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.5%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms1.5%
Cursor.executepsycopg/cursor.py:1132 ms1.5%
Connection.waitpsycopg/connection.py:4952 ms1.5%
SessionStore.savedjango/contrib/sessions/backends/db.py:1272 ms1.5%
Model.savedjango/db/models/base.py:8742 ms1.5%
Model.save_basedjango/db/models/base.py:9662 ms1.5%
Model._save_tabledjango/db/models/base.py:11102 ms1.5%
Model._do_updatedjango/db/models/base.py:12112 ms1.5%
QuerySet._updatedjango/db/models/query.py:13272 ms1.5%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21402 ms1.5%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms1.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.5%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.5%
Cursor.executepsycopg/cursor.py:1132 ms1.5%
Connection.waitpsycopg/connection.py:4952 ms1.5%
TransactionTestCase._post_teardowndjango/test/testcases.py:1240 self._fixture_teardown()2 ms1.5%
TestCase._fixture_teardowndjango/test/testcases.py:14952 ms1.5%
DatabaseWrapper.check_constraintsdjango/db/backends/postgresql/base.py:4832 ms1.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.5%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms1.5%
Cursor.executepsycopg/cursor.py:1132 ms1.5%
Connection.waitpsycopg/connection.py:4952 ms1.5%
Estimated from 74 samples; phase durations are exact. Frames from pytest and pluggy are
hidden
.
Hot lines in your code
|
apps/projects/urls.py:138
return render(request, "project_setup.html", context)
project_dashboard
· Templates
|
24 ms |
|
apps/orgs/tests.py:64
self.assertEqual(self.client.get(self.project.url()).status_code, 200)
AccessTest.test_members_see_every_project_of_the_organization
· Libraries
|
19 ms |
|
apps/projects/urls.py:40
return user.is_superuser or project.organization.membership_set.filter(user=user).exists()
can_manage_project
· Database
|
14 ms |
|
apps/orgs/tests.py:63
self.client.force_login(self.member)
AccessTest.test_members_see_every_project_of_the_organization
· Database
|
14 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
|
7 ms |
|
apps/orgs/views.py:96
cards = [{"project": project, **analytics.project_card(project)} for project in projects]
org_projects
· Database
|
3 ms |
|
apps/projects/urls.py:136
has_profiles = Profile.objects.filter(project=project).exists()
project_dashboard
· Database
|
3 ms |
|
apps/orgs/tests.py:65
response = self.client.get(reverse("org_projects", args=["acme"]))
AccessTest.test_members_see_every_project_of_the_organization
· Database
|
3 ms |
|
apps/projects/analytics.py:579
.first()
project_card
· Database
|
3 ms |
|
apps/projects/urls.py:137
if not has_profiles and not Run.objects.filter(project=project).exists():
project_dashboard
· Database
|
2 ms |
Fixtures
Exact setup time| _unittest_setUpClass_fixture_AccessTest class | 15 ms |
| _django_setup_unittest class | 0.27 ms |
| _live_server_helper function | 0.06 ms |
| _template_string_if_invalid_marker function | 0.05 ms |
| _dj_autoclear_mailbox function | 0.04 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.02 ms |
Database
54 queries · 22 ms
Repeated queries are usually N+1 lookups: fetch them once with select_related / prefetch_related (or selectinload).
3×
INSERT INTO "auth_user" ("password", "last_login", "is_superuser", "username", "first_name", "last_name", "email", "is_staff", "is_active", "date_joined") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "auth_user"."id"
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 ?
3×
UPDATE "django_session" SET "session_data" = %s, "expire_date" = %s WHERE "django_session"."session_key" = %s
3×
SELECT %s AS "a" FROM "orgs_membership" WHERE ("orgs_membership"."organization_id" = %s AND "orgs_membership"."user_id" = %s) LIMIT ?
Biggest pieces of work
|
call test body
apps/orgs/tests.py:64
|
97 ms |
|
setup setUpClass
django/test/testcases.py:1423
|
17 ms |
|
call _post_teardown
django/test/testcases.py:1240
|
2 ms |
Reliability
12 results · 0 CI failures · 0 local failuresThis test hasn't failed recently.
History
Latest 12 results, oldest first in the strip| When | Environment | Outcome | Duration | |
|---|---|---|---|---|
| 16 hours ago | CI github-actions:test | passed | 115 ms | Profile |
| 1 week, 5 days ago | CI github-actions:test | passed | 65 ms | Profile |
| 2 weeks, 1 day ago | CI github-actions:test | passed | 108 ms | Profile |
| 2 weeks, 1 day ago | CI github-actions:test | passed | 84 ms | Profile |
| 2 weeks, 1 day ago | CI github-actions:test | passed | 123 ms | Profile |
| 2 weeks, 2 days ago | CI github-actions:test | passed | 65 ms | Profile |
| 2 weeks, 4 days ago | CI github-actions:test | passed | 117 ms | Profile |
| 2 weeks, 6 days ago | CI github-actions:test | passed | 113 ms | Profile |
| 2 weeks, 6 days ago | CI github-actions:test | passed | 110 ms | Profile |
| 3 weeks ago | CI github-actions:test | passed | 138 ms | Profile |
| 3 weeks ago | CI github-actions:test | passed | 67 ms | Profile |
| 3 weeks ago | CI github-actions:test | passed | 117 ms | Profile |