Tests / confs/tests.py
TestCreateConference::test_submit_creates_pending_conference
First seen 3 weeks ago in 0c23747
CI
github-actions:test
11 runs
Average
723 ms
median 652 ms
max 1.28 s
max 1.28 s
Phases
Setup 2 ms
Call 718 ms
Teardown 4 ms
Categories
Password hashing 579 ms
Database 36 ms
App code 0.10 ms
Other (Libraries, Deep copies, pytest, Mocking, ...) 109 ms
28 database queries per run
Needs 3 KB of memory (max 8 KB)
Duration per run
Where the time goes
Latest run in ci:github-actions:test, 7 hours ago ·
open run
setup2 ms0.3%
call692 ms98.6%
TestCreateConference.setUpconfs/tests.py:1044 self.user = User.objects.create_user("alice", password="pw")521 ms74.3%
UserManager.create_userdjango/contrib/auth/models.py:180521 ms74.3%
UserManager._create_userdjango/contrib/auth/models.py:167520 ms74.1%
UserManager._create_user_objectdjango/contrib/auth/models.py:160520 ms74.1%
make_passworddjango/contrib/auth/hashers.py:118519 ms74.0%
PBKDF2PasswordHasher.encodedjango/contrib/auth/hashers.py:333519 ms74.0%
pbkdf2django/utils/crypto.py:93519 ms74.0%
1 smaller frames hidden
1 smaller frames hidden
TestCreateConference.test_submit_creates_pending_conferenceconfs/tests.py:1079 response = self.client.post(reverse("create_conference"), self.form_data)141 ms20.1%
Client.postdjango/test/client.py:1162140 ms20.0%
RequestFactory.postdjango/test/client.py:499140 ms20.0%
RequestFactory.genericdjango/test/client.py:671140 ms20.0%
Client.requestdjango/test/client.py:1091140 ms20.0%
ClientHandler.__call__django/test/client.py:17394 ms13.4%
BaseHandler.load_middlewaredjango/core/handlers/base.py:6394 ms13.4%
WhiteNoiseMiddleware.__init__whitenoise/middleware.py:10494 ms13.4%
WhiteNoise.add_fileswhitenoise/base.py:10894 ms13.4%
WhiteNoise.update_files_dictionarywhitenoise/base.py:12074 ms10.5%
WhiteNoise.add_file_to_dictionarywhitenoise/base.py:13172 ms10.2%
WhiteNoise.get_static_filewhitenoise/base.py:21247 ms6.8%
WhiteNoise.add_cache_headerswhitenoise/base.py:23345 ms6.5%
WhiteNoiseMiddleware.immutable_file_testwhitenoise/middleware.py:17645 ms6.5%
WhiteNoiseMiddleware.get_static_urlwhitenoise/middleware.py:19745 ms6.5%
URLMixin.urldebug_toolbar/panels/staticfiles.py:2045 ms6.5%
HashedFilesMixin.urldjango/contrib/staticfiles/storage.py:23544 ms6.3%
HashedFilesMixin._urldjango/contrib/staticfiles/storage.py:20836 ms5.1%
HashedFilesMixin._urldjango/contrib/staticfiles/storage.py:2167 ms1.1%
FileSystemStorage.urldjango/core/files/storage/filesystem.py:2047 ms1.1%
filepath_to_uridjango/utils/encoding.py:2457 ms1.1%
quote<stdlib>/urllib/parse.py:10727 ms1.1%
quote_from_bytes<stdlib>/urllib/parse.py:11127 ms1.1%
1 smaller frames hidden
1 smaller frames hidden
WhiteNoise.get_static_filewhitenoise/base.py:21721 ms3.0%
StaticFile.__init__whitenoise/responders.py:7711 ms1.5%
StaticFile.get_alternativeswhitenoise/responders.py:2016 ms0.9%
Headers.__setitem__<stdlib>/wsgiref/headers.py:626 ms0.9%
Headers.__delitem__<stdlib>/wsgiref/headers.py:726 ms0.9%
StaticFile.get_alternativeswhitenoise/responders.py:2004 ms0.6%
StaticFile.__init__whitenoise/responders.py:735 ms0.8%
2 smaller frames hidden
1 smaller frames hidden
WhiteNoise.update_files_dictionarywhitenoise/base.py:11520 ms2.9%
scantreewhitenoise/base.py:27118 ms2.6%
scantreewhitenoise/base.py:27116 ms2.3%
scantreewhitenoise/base.py:2738 ms1.2%
scantreewhitenoise/base.py:2716 ms0.9%
scantreewhitenoise/base.py:2716 ms0.9%
scantreewhitenoise/base.py:2716 ms0.9%
scantreewhitenoise/base.py:2734 ms0.6%
1 smaller frames hidden
1 smaller frames hidden
1 smaller frames hidden
1 smaller frames hidden
ClientHandler.__call__django/test/client.py:18646 ms6.6%
BaseHandler.get_responsedjango/core/handlers/base.py:14246 ms6.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5646 ms6.6%
MiddlewareMixin.__call__django/utils/deprecation.py:38046 ms6.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5646 ms6.6%
MiddlewareMixin.__call__django/utils/deprecation.py:38046 ms6.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5646 ms6.6%
MiddlewareMixin.__call__django/utils/deprecation.py:38046 ms6.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5646 ms6.6%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:12346 ms6.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5646 ms6.6%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:14546 ms6.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5646 ms6.6%
MiddlewareMixin.__call__django/utils/deprecation.py:38046 ms6.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5646 ms6.6%
MiddlewareMixin.__call__django/utils/deprecation.py:38046 ms6.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5646 ms6.6%
MiddlewareMixin.__call__django/utils/deprecation.py:38046 ms6.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5646 ms6.6%
MiddlewareMixin.__call__django/utils/deprecation.py:38046 ms6.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5646 ms6.6%
MiddlewareMixin.__call__django/utils/deprecation.py:38046 ms6.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5646 ms6.6%
MiddlewareMixin.__call__django/utils/deprecation.py:38046 ms6.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5646 ms6.6%
MiddlewareMixin.__call__django/utils/deprecation.py:38046 ms6.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5646 ms6.6%
BaseHandler._get_responsedjango/core/handlers/base.py:19946 ms6.6%
user_passes_test.<locals>.decorator.<locals>._view_wrapperdjango/contrib/auth/decorators.py:6246 ms6.6%
create_conferenceconfs/views.py:485 if form.is_valid():40 ms5.7%
BaseForm.is_validdjango/forms/forms.py:20640 ms5.7%
BaseForm.errorsdjango/forms/forms.py:20140 ms5.7%
BaseForm.full_cleandjango/forms/forms.py:33940 ms5.7%
BaseModelForm._post_cleandjango/forms/models.py:50340 ms5.7%
Model.full_cleandjango/db/models/base.py:171140 ms5.7%
Model.clean_fieldsdjango/db/models/base.py:176640 ms5.7%
Field.cleandjango/db/models/fields/__init__.py:87840 ms5.7%
Field.run_validatorsdjango/db/models/fields/__init__.py:82440 ms5.7%
3 smaller frames hidden
1 smaller frames hidden
TestCreateConference.test_submit_creates_pending_conferenceconfs/tests.py:1074 self.client.force_login(self.user)19 ms2.7%
ClientMixin.force_logindjango/test/client.py:85819 ms2.7%
ClientMixin._logindjango/test/client.py:88914 ms2.0%
logindjango/contrib/auth/__init__.py:1897 ms1.1%
SessionBase.cycle_keydjango/contrib/sessions/backends/base.py:4375 ms0.8%
1 smaller frames hidden
logindjango/contrib/auth/__init__.py:1984 ms0.6%
Signal.senddjango/dispatch/dispatcher.py:2494 ms0.6%
update_last_logindjango/contrib/auth/models.py:244 ms0.6%
AbstractBaseUser.savedjango/contrib/auth/base_user.py:624 ms0.6%
Model.savedjango/db/models/base.py:9044 ms0.6%
Model.save_basedjango/db/models/base.py:9964 ms0.6%
Model._save_tabledjango/db/models/base.py:11404 ms0.6%
Model._do_updatedjango/db/models/base.py:12444 ms0.6%
QuerySet._updatedjango/db/models/query.py:14484 ms0.6%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21504 ms0.6%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21214 ms0.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16254 ms0.6%
CursorWrapper.executedjango/db/backends/utils.py:794 ms0.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:924 ms0.6%
CursorWrapper._executedjango/db/backends/utils.py:1054 ms0.6%
Cursor.executepsycopg/cursor.py:1134 ms0.6%
Connection.waitpsycopg/connection.py:4954 ms0.6%
1 smaller frames hidden
2 smaller frames hidden
TransactionTestCase._post_teardowndjango/test/testcases.py:1243 self._fixture_teardown()4 ms0.6%
TestCreateConference.test_submit_creates_pending_conferenceconfs/tests.py:1081 conference = Conference.objects.get(name="PyCon Test")4 ms0.6%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:874 ms0.6%
QuerySet.getdjango/db/models/query.py:7024 ms0.6%
QuerySet.__len__django/db/models/query.py:4214 ms0.6%
QuerySet._fetch_alldjango/db/models/query.py:22624 ms0.6%
2 smaller frames hidden
teardown8 ms1.1%
TestCase.tearDownClassdjango/test/testcases.py:1458 conn.close()6 ms0.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:266 ms0.8%
BaseDatabaseWrapper.closedjango/db/backends/base/base.py:3556 ms0.8%
DatabaseWrapper._closedjango/db/backends/postgresql/base.py:4086 ms0.8%
Connection.closepsycopg/connection.py:2016 ms0.8%
1 smaller frames hidden
Estimated from 667 samples; phase durations are exact. Frames from pytest and pluggy are
hidden
.
Hot lines in your code
|
confs/tests.py:1044
self.user = User.objects.create_user("alice", password="pw")
TestCreateConference.setUp
· Password hashing
|
521 ms |
|
confs/tests.py:1079
response = self.client.post(reverse("create_conference"), self.form_data)
TestCreateConference.test_submit_creates_pending_conference
· Libraries
|
95 ms |
|
confs/views.py:485
if form.is_valid():
create_conference
· Database
|
40 ms |
|
confs/tests.py:1074
self.client.force_login(self.user)
TestCreateConference.test_submit_creates_pending_conference
· Database
|
19 ms |
|
confs/tests.py:1081
conference = Conference.objects.get(name="PyCon Test")
TestCreateConference.test_submit_creates_pending_conference
· Database
|
4 ms |
|
confs/views.py:497
conference.save()
create_conference
· Database
|
2 ms |
|
confs/views.py:475
while Conference.objects.filter(slug=slug).exists():
unique_conference_slug
· Database
|
2 ms |
|
confs/views.py:498
form.save_m2m() # persist the selected conference_tags (icons)
create_conference
· Database
|
2 ms |
|
confs/views.py:593
conference_url = request.build_absolute_uri(reverse("conference", kwargs={"conference_slug": conference.slug}))
send_approval_notification
· Libraries
|
1 ms |
|
confs/tests.py:1083
self.assertEqual(conference.created_by, self.user)
TestCreateConference.test_submit_creates_pending_conference
· Database
|
1 ms |
Fixtures
Exact setup time| _template_string_if_invalid_marker function | 0.07 ms |
| _live_server_helper function | 0.06 ms |
| _django_isolate_apps function | 0.06 ms |
| _django_db_marker function | 0.06 ms |
| _dj_autoclear_mailbox function | 0.05 ms |
| _django_set_urlconf function | 0.05 ms |
| _django_clear_site_cache function | 0.03 ms |
| monkeypatch function | 0.03 ms |
Database
28 queries · 20 msNo repeated queries.
Biggest pieces of work
|
call setUp
confs/tests.py:1044
|
521 ms |
|
call test body
confs/tests.py:1079
|
166 ms |
|
teardown tearDownClass
django/test/testcases.py:1458
|
7 ms |
|
call _post_teardown
django/test/testcases.py:1243
|
4 ms |
| setup pytest internals | 0.99 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 | |
|---|---|---|---|---|
| 7 hours ago | CI github-actions:test | passed | 702 ms | Profile |
| 16 hours ago | CI github-actions:test | passed | 348 ms | Profile |
| 22 hours ago | CI github-actions:test | passed | 658 ms | Profile |
| 1 week, 5 days ago | CI github-actions:test | passed | 652 ms | Profile |
| 2 weeks, 2 days ago | CI github-actions:test | passed | 494 ms | Profile |
| 2 weeks, 2 days ago | CI github-actions:test | passed | 566 ms | Profile |
| 2 weeks, 4 days ago | CI github-actions:test | passed | 502 ms | Profile |
| 3 weeks ago | CI github-actions:test | passed | 424 ms | Profile |
| 3 weeks ago | CI github-actions:test | passed | 1.15 s | Profile |
| 3 weeks ago | CI github-actions:test | passed | 1.19 s | Profile |
| 3 weeks ago | CI github-actions:test | passed | 1.28 s | Profile |
| 3 weeks ago | CI github-actions:test | passed | 613 ms | Run |