flakytest.dev anze3db fedidevs
Tests / starter_packs/tests.py

TestOwnerManagement::test_invite_blocked_when_owners_plus_invitations_at_max

First seen 3 weeks ago in 0c23747
CI github-actions:test 11 runs
Average
263 ms
median 189 ms
max 560 ms
Phases
Setup 22 ms Call 241 ms Teardown 1 ms
Categories
Database 124 ms Factories 24 ms App code 0.55 ms Test code 0.27 ms Other (Libraries, Templates, pytest, Unsampled, ...) 115 ms

79 database queries per run

Needs 174 KB of memory (max 812 KB)

Duration per run

Where the time goes

Latest run in ci:github-actions:test, 7 hours ago · open run
Show pytest frames
setup0.93 ms0.6%
call166 ms99.2%
TestOwnerManagement.test_invite_blocked_when_owners_plus_invitations_at_maxstarter_packs/tests.py:537 response = self.client.post(reverse("invite_owner", args=[self.pack.slug, self.friend.id]))94 ms56.2%
Client.postdjango/test/client.py:116294 ms56.2%
RequestFactory.postdjango/test/client.py:49994 ms56.2%
RequestFactory.genericdjango/test/client.py:67194 ms56.2%
Client.requestdjango/test/client.py:109194 ms56.2%
ClientHandler.__call__django/test/client.py:18683 ms49.6%
BaseHandler.get_responsedjango/core/handlers/base.py:14283 ms49.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5683 ms49.6%
MiddlewareMixin.__call__django/utils/deprecation.py:38083 ms49.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5683 ms49.6%
MiddlewareMixin.__call__django/utils/deprecation.py:38083 ms49.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5683 ms49.6%
MiddlewareMixin.__call__django/utils/deprecation.py:38083 ms49.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5683 ms49.6%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:12383 ms49.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5683 ms49.6%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:14583 ms49.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5683 ms49.6%
MiddlewareMixin.__call__django/utils/deprecation.py:38083 ms49.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5683 ms49.6%
MiddlewareMixin.__call__django/utils/deprecation.py:38083 ms49.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5683 ms49.6%
MiddlewareMixin.__call__django/utils/deprecation.py:38083 ms49.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5683 ms49.6%
MiddlewareMixin.__call__django/utils/deprecation.py:38083 ms49.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5683 ms49.6%
MiddlewareMixin.__call__django/utils/deprecation.py:38083 ms49.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5683 ms49.6%
MiddlewareMixin.__call__django/utils/deprecation.py:38083 ms49.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5683 ms49.6%
MiddlewareMixin.__call__django/utils/deprecation.py:38083 ms49.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5683 ms49.6%
BaseHandler._get_responsedjango/core/handlers/base.py:19983 ms49.6%
require_http_methods.<locals>.decorator.<locals>.innerdjango/views/decorators/http.py:6383 ms49.6%
user_passes_test.<locals>.decorator.<locals>._view_wrapperdjango/contrib/auth/decorators.py:6283 ms49.6%
invite_ownerstarter_packs/views.py:483 elif starter_pack.owners.count() + starter_pack.invitations.count() >= MAX_OWNERS:39 ms23.4%
create_forward_many_to_many_manager.<locals>.ManyRelatedManager.countdjango/db/models/fields/related_descriptors.py:129639 ms23.4%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:8739 ms23.4%
QuerySet.countdjango/db/models/query.py:67739 ms23.4%
Query.get_countdjango/db/models/sql/query.py:65739 ms23.4%
Query.get_aggregationdjango/db/models/sql/query.py:63938 ms22.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:162538 ms22.5%
CursorWrapper.executedjango/db/backends/utils.py:7938 ms22.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:9238 ms22.5%
CursorWrapper._executedjango/db/backends/utils.py:10538 ms22.5%
Cursor.executepsycopg/cursor.py:11338 ms22.5%
Connection.waitpsycopg/connection.py:49538 ms22.5%
BaseCursor._execute_genpsycopg/_cursor_base.py:20538 ms22.5%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:7836 ms21.5%
BaseCursor._convert_querypsycopg/_cursor_base.py:4652 ms0.9%
Query.get_aggregationdjango/db/models/sql/query.py:4912 ms0.9%
Expression.__hash__django/db/models/expressions.py:5622 ms0.9%
cached_property.__get__django/utils/functional.py:472 ms0.9%
Expression.identitydjango/db/models/expressions.py:5432 ms0.9%
invite_ownerstarter_packs/views.py:490 return render(request, "owners_updated.html", owners_manager_context(starter_pack, q, error))24 ms14.0%
owners_manager_contextstarter_packs/views.py:417 owners = list(starter_pack.owners.select_related("accountaccess__account").order_by("username"))13 ms7.5%
QuerySet.__iter__django/db/models/query.py:43913 ms7.5%
QuerySet._fetch_alldjango/db/models/query.py:226213 ms7.5%
ModelIterable.__iter__django/db/models/query.py:10313 ms7.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16258 ms4.7%
CursorWrapper.executedjango/db/backends/utils.py:798 ms4.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:928 ms4.7%
CursorWrapper._executedjango/db/backends/utils.py:1058 ms4.7%
Cursor.executepsycopg/cursor.py:1138 ms4.7%
Connection.waitpsycopg/connection.py:4958 ms4.7%
BaseCursor._execute_genpsycopg/_cursor_base.py:2068 ms4.7%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2868 ms4.7%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:788 ms4.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16125 ms2.8%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7685 ms2.8%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:895 ms2.8%
SQLCompiler.setup_querydjango/db/models/sql/compiler.py:785 ms2.8%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:3103 ms1.9%
SQLCompiler.get_related_selectionsdjango/db/models/sql/compiler.py:12852 ms0.9%
SQLCompiler.get_related_selectionsdjango/db/models/sql/compiler.py:13232 ms0.9%
SQLCompiler.get_related_selectionsdjango/db/models/sql/compiler.py:12602 ms0.9%
SQLCompiler.get_default_columnsdjango/db/models/sql/compiler.py:10312 ms0.9%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:3192 ms0.9%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5792 ms0.9%
renderdjango/shortcuts.py:276 ms3.7%
render_to_stringdjango/template/loader.py:626 ms3.7%
Template.renderdjango/template/backends/django.py:1076 ms3.7%
Template.renderdjango/template/base.py:1756 ms3.7%
instrumented_test_renderdjango/test/utils.py:1136 ms3.7%
NodeList.renderdjango/template/base.py:11086 ms3.7%
Node.render_annotateddjango/template/base.py:10696 ms3.7%
IncludeNode.renderdjango/template/loader_tags.py:2116 ms3.7%
Template.renderdjango/template/base.py:1776 ms3.7%
instrumented_test_renderdjango/test/utils.py:1136 ms3.7%
NodeList.renderdjango/template/base.py:11086 ms3.7%
Node.render_annotateddjango/template/base.py:10696 ms3.7%
IfNode.renderdjango/template/defaulttags.py:3336 ms3.7%
NodeList.renderdjango/template/base.py:11086 ms3.7%
Node.render_annotateddjango/template/base.py:10696 ms3.7%
ForNode.renderdjango/template/defaulttags.py:2495 ms2.8%
Node.render_annotateddjango/template/base.py:10695 ms2.8%
TranslateNode.renderdjango/templatetags/i18n.py:955 ms2.8%
ForNode.renderdjango/template/defaulttags.py:2562 ms0.9%
owners_manager_contextstarter_packs/views.py:418 invitations = list(5 ms2.8%
QuerySet.__iter__django/db/models/query.py:4395 ms2.8%
QuerySet._fetch_alldjango/db/models/query.py:22625 ms2.8%
ModelIterable.__iter__django/db/models/query.py:1035 ms2.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16255 ms2.8%
CursorWrapper.executedjango/db/backends/utils.py:795 ms2.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:925 ms2.8%
CursorWrapper._executedjango/db/backends/utils.py:1053 ms1.9%
Cursor.executepsycopg/cursor.py:1133 ms1.9%
Connection.waitpsycopg/connection.py:4953 ms1.9%
BaseCursor._execute_genpsycopg/_cursor_base.py:2063 ms1.9%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2863 ms1.9%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:783 ms1.9%
invite_ownerstarter_packs/views.py:479 elif starter_pack.owners.filter(pk=user_id).exists():20 ms12.2%
QuerySet.existsdjango/db/models/query.py:145819 ms11.2%
Query.has_resultsdjango/db/models/sql/query.py:68719 ms11.2%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:159319 ms11.2%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:162517 ms10.3%
CursorWrapper.executedjango/db/backends/utils.py:7917 ms10.3%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:9217 ms10.3%
CursorWrapper._executedjango/db/backends/utils.py:10517 ms10.3%
Cursor.executepsycopg/cursor.py:11317 ms10.3%
Connection.waitpsycopg/connection.py:49517 ms10.3%
BaseCursor._execute_genpsycopg/_cursor_base.py:20616 ms9.4%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:28616 ms9.4%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:7816 ms9.4%
BaseCursor._execute_genpsycopg/_cursor_base.py:2052 ms0.9%
BaseCursor._convert_querypsycopg/_cursor_base.py:4652 ms0.9%
PostgresClientQuery.convertpsycopg/_queries.py:2892 ms0.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16122 ms0.9%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7932 ms0.9%
SQLCompiler.get_from_clausedjango/db/models/sql/compiler.py:11602 ms0.9%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5792 ms0.9%
Join.as_sqldjango/db/models/sql/datastructures.py:882 ms0.9%
ClientHandler.__call__django/test/client.py:17311 ms6.6%
BaseHandler.load_middlewaredjango/core/handlers/base.py:6311 ms6.6%
WhiteNoiseMiddleware.__init__whitenoise/middleware.py:10411 ms6.6%
WhiteNoise.add_fileswhitenoise/base.py:10811 ms6.6%
WhiteNoise.update_files_dictionarywhitenoise/base.py:1156 ms3.7%
scantreewhitenoise/base.py:2716 ms3.7%
scantreewhitenoise/base.py:2715 ms2.8%
scantreewhitenoise/base.py:2733 ms1.9%
scantreewhitenoise/base.py:2712 ms0.9%
scantreewhitenoise/base.py:2712 ms0.9%
scantreewhitenoise/base.py:2712 ms0.9%
scantreewhitenoise/base.py:2732 ms0.9%
scantreewhitenoise/base.py:2732 ms0.9%
WhiteNoise.update_files_dictionarywhitenoise/base.py:1205 ms2.8%
WhiteNoise.add_file_to_dictionarywhitenoise/base.py:1315 ms2.8%
WhiteNoise.get_static_filewhitenoise/base.py:2175 ms2.8%
StaticFile.__init__whitenoise/responders.py:722 ms0.9%
StaticFile.get_file_statswhitenoise/responders.py:1612 ms0.9%
__init____init__:-12 ms0.9%
FileEntry.__init__whitenoise/responders.py:2632 ms0.9%
FileEntry.stat_regular_filewhitenoise/responders.py:2762 ms0.9%
<GC>~2 ms0.9%
StaticFile.__init__whitenoise/responders.py:732 ms0.9%
StaticFile.get_headerswhitenoise/responders.py:1812 ms0.9%
StaticFile.__init__whitenoise/responders.py:762 ms0.9%
StaticFile.get_not_modified_responsewhitenoise/responders.py:1892 ms0.9%
TestOwnerManagement.test_invite_blocked_when_owners_plus_invitations_at_maxstarter_packs/tests.py:534 baker.make("mastodon_auth.AccountAccess", user=invitee)47 ms28.1%
makemodel_bakery/baker.py:17547 ms28.1%
Baker.makemodel_bakery/baker.py:45447 ms28.1%
Baker._makemodel_bakery/baker.py:52946 ms27.2%
Baker.generate_valuemodel_bakery/baker.py:101946 ms27.2%
gen_relatedmodel_bakery/random_gen.py:45446 ms27.2%
makemodel_bakery/baker.py:17546 ms27.2%
Baker.makemodel_bakery/baker.py:45446 ms27.2%
Baker._makemodel_bakery/baker.py:54244 ms26.2%
Baker.instancemodel_bakery/baker.py:65944 ms26.2%
Model.savedjango/db/models/base.py:90444 ms26.2%
Model.save_basedjango/db/models/base.py:99644 ms26.2%
Model._save_tabledjango/db/models/base.py:119942 ms25.3%
Model._do_insertdjango/db/models/base.py:125142 ms25.3%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:8742 ms25.3%
QuerySet._insertdjango/db/models/query.py:214142 ms25.3%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:193530 ms17.8%
CursorWrapper.executedjango/db/backends/utils.py:7927 ms15.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:9227 ms15.9%
CursorWrapper._executedjango/db/backends/utils.py:10527 ms15.9%
Cursor.executepsycopg/cursor.py:11327 ms15.9%
Connection.waitpsycopg/connection.py:49527 ms15.9%
BaseCursor._execute_genpsycopg/_cursor_base.py:20627 ms15.9%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:28627 ms15.9%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:7827 ms15.9%
SQLInsertCompiler.as_sqldjango/db/models/sql/compiler.py:18222 ms0.9%
SQLInsertCompiler.pre_save_valdjango/db/models/sql/compiler.py:17562 ms0.9%
SQLInsertCompiler.as_sqldjango/db/models/sql/compiler.py:18802 ms0.9%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:193611 ms6.6%
CursorWrapper.executedjango/db/backends/utils.py:7911 ms6.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:9211 ms6.6%
CursorWrapper._executedjango/db/backends/utils.py:10511 ms6.6%
Cursor.executepsycopg/cursor.py:1139 ms5.6%
Connection.waitpsycopg/connection.py:4959 ms5.6%
BaseCursor._execute_genpsycopg/_cursor_base.py:2069 ms5.6%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2869 ms5.6%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:789 ms5.6%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19492 ms0.9%
Model._save_tabledjango/db/models/base.py:11102 ms0.9%
Baker._makemodel_bakery/baker.py:5292 ms0.9%
Baker.generate_valuemodel_bakery/baker.py:10192 ms0.9%
gen_stringmodel_bakery/random_gen.py:2702 ms0.9%
gen_string.<locals>.<genexpr>model_bakery/random_gen.py:2702 ms0.9%
Random.choice<stdlib>/random.py:3542 ms0.9%
Random._randbelow_with_getrandbits<stdlib>/random.py:2492 ms0.9%
TransactionTestCase._post_teardowndjango/test/testcases.py:1243 self._fixture_teardown()8 ms4.7%
TestCase._fixture_teardowndjango/test/testcases.py:14986 ms3.7%
DatabaseWrapper.check_constraintsdjango/db/backends/postgresql/base.py:4956 ms3.7%
CursorWrapper.executedjango/db/backends/utils.py:796 ms3.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:926 ms3.7%
CursorWrapper._executedjango/db/backends/utils.py:1036 ms3.7%
Cursor.executepsycopg/cursor.py:1136 ms3.7%
Connection.waitpsycopg/connection.py:4956 ms3.7%
BaseCursor._execute_genpsycopg/_cursor_base.py:2066 ms3.7%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2866 ms3.7%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:786 ms3.7%
TestCase._fixture_teardowndjango/test/testcases.py:15002 ms0.9%
TestCase._rollback_atomicsdjango/test/testcases.py:14082 ms0.9%
Atomic.__exit__django/db/transaction.py:2952 ms0.9%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms0.9%
BaseDatabaseWrapper.savepoint_rollbackdjango/db/backends/base/base.py:4132 ms0.9%
BaseDatabaseWrapper._savepoint_rollbackdjango/db/backends/base/base.py:3712 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms0.9%
Cursor.executepsycopg/cursor.py:1132 ms0.9%
Connection.waitpsycopg/connection.py:4952 ms0.9%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms0.9%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms0.9%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms0.9%
TestOwnerManagement.test_invite_blocked_when_owners_plus_invitations_at_maxstarter_packs/tests.py:533 invitee = baker.make("auth.User")6 ms3.7%
makemodel_bakery/baker.py:1756 ms3.7%
Baker.makemodel_bakery/baker.py:4546 ms3.7%
Baker._makemodel_bakery/baker.py:5426 ms3.7%
Baker.instancemodel_bakery/baker.py:6596 ms3.7%
AbstractBaseUser.savedjango/contrib/auth/base_user.py:626 ms3.7%
Model.savedjango/db/models/base.py:9046 ms3.7%
Model.save_basedjango/db/models/base.py:9966 ms3.7%
Model._save_tabledjango/db/models/base.py:11996 ms3.7%
Model._do_insertdjango/db/models/base.py:12516 ms3.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:876 ms3.7%
QuerySet._insertdjango/db/models/query.py:21416 ms3.7%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19366 ms3.7%
CursorWrapper.executedjango/db/backends/utils.py:796 ms3.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:926 ms3.7%
CursorWrapper._executedjango/db/backends/utils.py:1056 ms3.7%
Cursor.executepsycopg/cursor.py:1136 ms3.7%
Connection.waitpsycopg/connection.py:4956 ms3.7%
BaseCursor._execute_genpsycopg/_cursor_base.py:2066 ms3.7%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2866 ms3.7%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:786 ms3.7%
TestOwnerManagement.test_invite_blocked_when_owners_plus_invitations_at_maxstarter_packs/tests.py:535 StarterPackInvitation.objects.create(starter_pack=self.pack, invited_user=invitee, invited_by=self.owner)5 ms2.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:875 ms2.8%
QuerySet.createdjango/db/models/query.py:7365 ms2.8%
Model.savedjango/db/models/base.py:9043 ms1.9%
Model.save_basedjango/db/models/base.py:9963 ms1.9%
Model._save_tabledjango/db/models/base.py:11993 ms1.9%
Model._do_insertdjango/db/models/base.py:12513 ms1.9%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:873 ms1.9%
QuerySet._insertdjango/db/models/query.py:21413 ms1.9%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19363 ms1.9%
CursorWrapper.executedjango/db/backends/utils.py:793 ms1.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms1.9%
CursorWrapper._executedjango/db/backends/utils.py:1053 ms1.9%
Cursor.executepsycopg/cursor.py:1133 ms1.9%
Connection.waitpsycopg/connection.py:4953 ms1.9%
BaseCursor._execute_genpsycopg/_cursor_base.py:2063 ms1.9%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms0.9%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms0.9%
BaseCursor._convert_querypsycopg/_cursor_base.py:4652 ms0.9%
PostgresClientQuery.convertpsycopg/_queries.py:2892 ms0.9%
PostgresClientQuery.dumppsycopg/_queries.py:2992 ms0.9%
PostgresClientQuery.dump.<locals>.<genexpr>psycopg/_queries.py:3002 ms0.9%
Model.savedjango/db/models/base.py:8582 ms0.9%
TestOwnerManagement.test_invite_blocked_when_owners_plus_invitations_at_maxstarter_packs/tests.py:539 self.assertFalse(self.pack.invitations.filter(invited_user=self.friend).exists())3 ms1.9%
QuerySet.existsdjango/db/models/query.py:14583 ms1.9%
Query.has_resultsdjango/db/models/sql/query.py:6873 ms1.9%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15933 ms1.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16253 ms1.9%
CursorWrapper.executedjango/db/backends/utils.py:793 ms1.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms1.9%
CursorWrapper._executedjango/db/backends/utils.py:1053 ms1.9%
Cursor.executepsycopg/cursor.py:1133 ms1.9%
Connection.waitpsycopg/connection.py:4953 ms1.9%
BaseCursor._execute_genpsycopg/_cursor_base.py:2063 ms1.9%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2863 ms1.9%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:783 ms1.9%
TestOwnerManagement.test_invite_blocked_when_owners_plus_invitations_at_maxstarter_packs/tests.py:536 self.client.force_login(self.owner)3 ms1.9%
ClientMixin.force_logindjango/test/client.py:8583 ms1.9%
ClientMixin._logindjango/test/client.py:8892 ms0.9%
logindjango/contrib/auth/__init__.py:1892 ms0.9%
SessionBase.cycle_keydjango/contrib/sessions/backends/base.py:4372 ms0.9%
SessionStore.createdjango/contrib/sessions/backends/db.py:742 ms0.9%
SessionStore.savedjango/contrib/sessions/backends/db.py:1272 ms0.9%
Model.savedjango/db/models/base.py:9042 ms0.9%
Model.save_basedjango/db/models/base.py:9962 ms0.9%
Model._save_tabledjango/db/models/base.py:11992 ms0.9%
Model._do_insertdjango/db/models/base.py:12512 ms0.9%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.9%
QuerySet._insertdjango/db/models/query.py:21412 ms0.9%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19362 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.9%
Cursor.executepsycopg/cursor.py:1132 ms0.9%
Connection.waitpsycopg/connection.py:4952 ms0.9%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms0.9%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms0.9%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms0.9%
ClientMixin._logindjango/test/client.py:8912 ms0.9%
SessionStore.savedjango/contrib/sessions/backends/db.py:1272 ms0.9%
Model.savedjango/db/models/base.py:9042 ms0.9%
Model.save_basedjango/db/models/base.py:9962 ms0.9%
Model._save_tabledjango/db/models/base.py:11402 ms0.9%
Model._do_updatedjango/db/models/base.py:12442 ms0.9%
QuerySet._updatedjango/db/models/query.py:14482 ms0.9%
Estimated from 107 samples; phase durations are exact. Frames from pytest and pluggy are hidden .

Hot lines in your code

starter_packs/tests.py:534
baker.make("mastodon_auth.AccountAccess", user=invitee)
TestOwnerManagement.test_invite_blocked_when_owners_plus_invitations_at_max · Database
47 ms
starter_packs/views.py:483
elif starter_pack.owners.count() + starter_pack.invitations.count() >= MAX_OWNERS:
invite_owner · Database
39 ms
starter_packs/views.py:479
elif starter_pack.owners.filter(pk=user_id).exists():
invite_owner · Database
20 ms
starter_packs/views.py:417
owners = list(starter_pack.owners.select_related("accountaccess__account").order_by("username"))
owners_manager_context · Database
13 ms
starter_packs/tests.py:537
response = self.client.post(reverse("invite_owner", args=[self.pack.slug, self.friend.id]))
TestOwnerManagement.test_invite_blocked_when_owners_plus_invitations_at_max · Libraries
11 ms
starter_packs/tests.py:533
invitee = baker.make("auth.User")
TestOwnerManagement.test_invite_blocked_when_owners_plus_invitations_at_max · Database
6 ms
starter_packs/views.py:490
return render(request, "owners_updated.html", owners_manager_context(starter_pack, q, error))
invite_owner · Templates
6 ms
starter_packs/views.py:418
invitations = list(
owners_manager_context · Database
5 ms
starter_packs/tests.py:535
StarterPackInvitation.objects.create(starter_pack=self.pack, invited_user=invitee, invited_by=self.owner)
TestOwnerManagement.test_invite_blocked_when_owners_plus_invitations_at_max · Database
5 ms
starter_packs/tests.py:539
self.assertFalse(self.pack.invitations.filter(invited_user=self.friend).exists())
TestOwnerManagement.test_invite_blocked_when_owners_plus_invitations_at_max · Database
3 ms

Fixtures

Exact setup time
_dj_autoclear_mailbox function 0.05 ms
_template_string_if_invalid_marker function 0.05 ms
_django_db_marker function 0.04 ms
_django_isolate_apps function 0.04 ms
_django_set_urlconf function 0.04 ms
_live_server_helper function 0.04 ms
_django_clear_site_cache function 0.03 ms
monkeypatch function 0.02 ms

Database

76 queries · 41 ms

Repeated queries are usually N+1 lookups: fetch them once with select_related / prefetch_related (or selectinload).

9×
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"
9×
INSERT INTO "accounts_account" ("account_id", "instance", "instance_model_id", "username_at_instance", "search", "username", "acct", "display_name", "locked", "bot", "discoverable", "group", "noindex", "created_at", "last_status_at", "last_sync_at", "followers_count", "following_count", "statuses_c…
9×
INSERT INTO "mastodon_auth_instance" ("url", "client_id", "client_secret", "scopes", "software", "created_at", "updated_at") VALUES (%s, %s, %s, %s, %s, %s, %s) RETURNING "mastodon_auth_instance"."id"
9×
INSERT INTO "mastodon_auth_accountaccess" ("user_id", "account_id", "instance_id", "access_token", "created_at", "updated_at") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "mastodon_auth_accountaccess"."id"
9×
INSERT INTO "starter_packs_starterpackinvitation" ("starter_pack_id", "invited_user_id", "invited_by_id", "created_at") VALUES (%s, %s, %s, %s) RETURNING "starter_packs_starterpackinvitation"."id"

Biggest pieces of work

call test body
starter_packs/tests.py:537
159 ms
call _post_teardown
django/test/testcases.py:1243
8 ms
setup pytest internals 0.93 ms

Reliability

12 results · 0 CI failures · 0 local failures

This test hasn't failed recently.

History

Latest 12 results, oldest first in the strip
When Environment Outcome Duration Commit
7 hours ago CI github-actions:test passed 168 ms c28a326 main Profile
16 hours ago CI github-actions:test passed 112 ms 9b8826a main Profile
22 hours ago CI github-actions:test passed 197 ms 4f01055 main Profile
1 week, 5 days ago CI github-actions:test passed 189 ms 8ab642e main Profile
2 weeks, 2 days ago CI github-actions:test passed 200 ms 9b75244 main Profile
2 weeks, 2 days ago CI github-actions:test passed 183 ms 9603516 main Profile
2 weeks, 4 days ago CI github-actions:test passed 189 ms 615a272 main Profile
3 weeks ago CI github-actions:test passed 162 ms d923a46 main Profile
3 weeks ago CI github-actions:test passed 560 ms 82997f8 main Profile
3 weeks ago CI github-actions:test passed 464 ms 623aa3e main Profile
3 weeks ago CI github-actions:test passed 474 ms ab6465a main Profile
3 weeks ago CI github-actions:test passed 153 ms 0c23747 main Run