Tests / confs/tests.py
TestCreateConference::test_rejects_end_date_before_start
First seen 12 hours ago in 0c23747
CI
github-actions:test
4 runs
Average
973 ms
median 1.05 s
max 1.26 s
max 1.26 s
Phases
Setup 2 ms
Call 970 ms
Teardown 0.30 ms
Categories
Password hashing 758 ms
Database 31 ms
Other (Libraries, Templates, pytest, Deep copies, ...) 183 ms
26 database queries per run
Needs 43 KB of memory (max 80 KB)
Duration per run
Where the time goes
Latest run in ci:github-actions:test, 7 hours ago ·
open run
setup0.90 ms0.2%
call538 ms99.8%
TestCreateConference.setUpconfs/tests.py:1044 self.user = User.objects.create_user("alice", password="pw")404 ms75.0%
UserManager.create_userdjango/contrib/auth/models.py:180404 ms75.0%
UserManager._create_userdjango/contrib/auth/models.py:167402 ms74.6%
UserManager._create_user_objectdjango/contrib/auth/models.py:160402 ms74.6%
make_passworddjango/contrib/auth/hashers.py:118402 ms74.6%
PBKDF2PasswordHasher.encodedjango/contrib/auth/hashers.py:333402 ms74.6%
pbkdf2django/utils/crypto.py:93402 ms74.6%
1 smaller frames hidden
TestCreateConference.test_rejects_end_date_before_startconfs/tests.py:1100 response = self.client.post(reverse("create_conference"), data)117 ms21.7%
Client.postdjango/test/client.py:1162117 ms21.7%
RequestFactory.postdjango/test/client.py:499117 ms21.7%
RequestFactory.genericdjango/test/client.py:671117 ms21.7%
Client.requestdjango/test/client.py:1091117 ms21.7%
ClientHandler.__call__django/test/client.py:17361 ms11.3%
BaseHandler.load_middlewaredjango/core/handlers/base.py:6361 ms11.3%
WhiteNoiseMiddleware.__init__whitenoise/middleware.py:10460 ms11.2%
WhiteNoise.add_fileswhitenoise/base.py:10860 ms11.2%
WhiteNoise.update_files_dictionarywhitenoise/base.py:12050 ms9.3%
WhiteNoise.add_file_to_dictionarywhitenoise/base.py:13150 ms9.3%
WhiteNoise.get_static_filewhitenoise/base.py:21738 ms7.0%
StaticFile.__init__whitenoise/responders.py:7313 ms2.5%
StaticFile.get_headerswhitenoise/responders.py:1786 ms1.1%
parsedate<stdlib>/email/_parseaddr.py:1855 ms0.9%
parsedate_tz<stdlib>/email/_parseaddr.py:505 ms0.9%
StaticFile.get_headerswhitenoise/responders.py:1674 ms0.8%
__init____init__:-14 ms0.8%
Headers.__init__<stdlib>/wsgiref/headers.py:433 ms0.6%
1 smaller frames hidden
2 smaller frames hidden
StaticFile.__init__whitenoise/responders.py:769 ms1.7%
StaticFile.get_not_modified_responsewhitenoise/responders.py:1885 ms0.9%
Headers.__contains__<stdlib>/wsgiref/headers.py:875 ms0.9%
Headers.get<stdlib>/wsgiref/headers.py:1044 ms0.8%
StaticFile.get_not_modified_responsewhitenoise/responders.py:1894 ms0.8%
Headers.__getitem__<stdlib>/wsgiref/headers.py:834 ms0.8%
Headers.get<stdlib>/wsgiref/headers.py:1044 ms0.8%
Headers._convert_string_type<stdlib>/wsgiref/headers.py:503 ms0.6%
StaticFile.__init__whitenoise/responders.py:747 ms1.3%
parsedate<stdlib>/email/_parseaddr.py:1857 ms1.3%
parsedate_tz<stdlib>/email/_parseaddr.py:507 ms1.3%
_parsedate_tz<stdlib>/email/_parseaddr.py:1003 ms0.6%
3 smaller frames hidden
StaticFile.__init__whitenoise/responders.py:776 ms1.1%
StaticFile.get_alternativeswhitenoise/responders.py:2005 ms0.9%
__init____init__:-15 ms0.9%
Headers.__init__<stdlib>/wsgiref/headers.py:443 ms0.6%
1 smaller frames hidden
1 smaller frames hidden
1 smaller frames hidden
WhiteNoise.get_static_filewhitenoise/base.py:2128 ms1.5%
WhiteNoise.add_cache_headerswhitenoise/base.py:2338 ms1.5%
WhiteNoiseMiddleware.immutable_file_testwhitenoise/middleware.py:1767 ms1.3%
WhiteNoiseMiddleware.get_static_urlwhitenoise/middleware.py:1977 ms1.3%
URLMixin.urldebug_toolbar/panels/staticfiles.py:205 ms0.9%
HashedFilesMixin.urldjango/contrib/staticfiles/storage.py:2355 ms0.9%
HashedFilesMixin._urldjango/contrib/staticfiles/storage.py:2165 ms0.9%
FileSystemStorage.urldjango/core/files/storage/filesystem.py:2043 ms0.6%
filepath_to_uridjango/utils/encoding.py:2453 ms0.6%
quote<stdlib>/urllib/parse.py:10723 ms0.6%
1 smaller frames hidden
2 smaller frames hidden
1 smaller frames hidden
3 smaller frames hidden
WhiteNoise.update_files_dictionarywhitenoise/base.py:1158 ms1.5%
scantreewhitenoise/base.py:2717 ms1.3%
scantreewhitenoise/base.py:2716 ms1.1%
scantreewhitenoise/base.py:2714 ms0.8%
scantreewhitenoise/base.py:2713 ms0.6%
1 smaller frames hidden
1 smaller frames hidden
1 smaller frames hidden
1 smaller frames hidden
1 smaller frames hidden
ClientHandler.__call__django/test/client.py:18656 ms10.4%
BaseHandler.get_responsedjango/core/handlers/base.py:14256 ms10.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5656 ms10.4%
MiddlewareMixin.__call__django/utils/deprecation.py:38056 ms10.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5656 ms10.4%
MiddlewareMixin.__call__django/utils/deprecation.py:38056 ms10.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5656 ms10.4%
MiddlewareMixin.__call__django/utils/deprecation.py:38056 ms10.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5656 ms10.4%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:12356 ms10.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5656 ms10.4%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:14556 ms10.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5656 ms10.4%
MiddlewareMixin.__call__django/utils/deprecation.py:38056 ms10.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5656 ms10.4%
MiddlewareMixin.__call__django/utils/deprecation.py:38056 ms10.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5656 ms10.4%
MiddlewareMixin.__call__django/utils/deprecation.py:38056 ms10.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5656 ms10.4%
MiddlewareMixin.__call__django/utils/deprecation.py:38056 ms10.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5656 ms10.4%
MiddlewareMixin.__call__django/utils/deprecation.py:38056 ms10.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5656 ms10.4%
MiddlewareMixin.__call__django/utils/deprecation.py:38056 ms10.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5656 ms10.4%
MiddlewareMixin.__call__django/utils/deprecation.py:38056 ms10.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5656 ms10.4%
BaseHandler._get_responsedjango/core/handlers/base.py:19956 ms10.4%
user_passes_test.<locals>.decorator.<locals>._view_wrapperdjango/contrib/auth/decorators.py:6252 ms9.6%
create_conferenceconfs/views.py:509 return render(47 ms8.7%
renderdjango/shortcuts.py:2746 ms8.5%
render_to_stringdjango/template/loader.py:6246 ms8.5%
Template.renderdjango/template/backends/django.py:10746 ms8.5%
Template.renderdjango/template/base.py:17546 ms8.5%
instrumented_test_renderdjango/test/utils.py:11346 ms8.5%
NodeList.renderdjango/template/base.py:110846 ms8.5%
Node.render_annotateddjango/template/base.py:106946 ms8.5%
ExtendsNode.renderdjango/template/loader_tags.py:16046 ms8.5%
instrumented_test_renderdjango/test/utils.py:11346 ms8.5%
NodeList.renderdjango/template/base.py:110846 ms8.5%
Node.render_annotateddjango/template/base.py:106946 ms8.5%
BlockNode.renderdjango/template/loader_tags.py:6643 ms7.9%
NodeList.renderdjango/template/base.py:110843 ms7.9%
Node.render_annotateddjango/template/base.py:106943 ms7.9%
VariableNode.renderdjango/template/base.py:117340 ms7.4%
render_value_in_contextdjango/template/base.py:115040 ms7.4%
RenderableFieldMixin.__str__django/forms/utils.py:7940 ms7.4%
BoundField.as_widgetdjango/forms/boundfield.py:10839 ms7.2%
Widget.renderdjango/forms/widgets.py:37637 ms6.8%
Widget._renderdjango/forms/widgets.py:38137 ms6.8%
BaseRenderer.renderdjango/forms/renderers.py:2937 ms6.8%
Template.renderdjango/template/backends/django.py:10737 ms6.8%
Template.renderdjango/template/base.py:17537 ms6.8%
instrumented_test_renderdjango/test/utils.py:11337 ms6.8%
NodeList.renderdjango/template/base.py:110837 ms6.8%
Node.render_annotateddjango/template/base.py:106937 ms6.8%
ForNode.renderdjango/template/defaulttags.py:24932 ms5.9%
Node.render_annotateddjango/template/base.py:106932 ms5.9%
ForNode.renderdjango/template/defaulttags.py:24932 ms5.9%
Node.render_annotateddjango/template/base.py:106931 ms5.7%
IncludeNode.renderdjango/template/loader_tags.py:21131 ms5.7%
Template.renderdjango/template/base.py:17729 ms5.3%
instrumented_test_renderdjango/test/utils.py:11215 ms2.8%
Signal.senddjango/dispatch/dispatcher.py:24912 ms2.3%
store_rendered_templatesdjango/test/client.py:27512 ms2.3%
copy<stdlib>/copy.py:8212 ms2.3%
Context.__copy__django/template/context.py:1669 ms1.7%
BaseContext.__copy__django/template/context.py:439 ms1.7%
copy<stdlib>/copy.py:739 ms1.7%
<GC>~9 ms1.7%
Context.__copy__django/template/context.py:1673 ms0.6%
1 smaller frames hidden
instrumented_test_renderdjango/test/utils.py:11313 ms2.5%
NodeList.renderdjango/template/base.py:110812 ms2.3%
Node.render_annotateddjango/template/base.py:106912 ms2.3%
IncludeNode.renderdjango/template/loader_tags.py:2116 ms1.1%
Template.renderdjango/template/base.py:1775 ms0.9%
instrumented_test_renderdjango/test/utils.py:1123 ms0.6%
VariableNode.renderdjango/template/base.py:11673 ms0.6%
2 smaller frames hidden
1 smaller frames hidden
IncludeNode.renderdjango/template/loader_tags.py:2114 ms0.8%
Template.renderdjango/template/base.py:1774 ms0.8%
instrumented_test_renderdjango/test/utils.py:1133 ms0.6%
NodeList.renderdjango/template/base.py:11083 ms0.6%
Node.render_annotateddjango/template/base.py:10693 ms0.6%
IncludeNode.renderdjango/template/loader_tags.py:2113 ms0.6%
Template.renderdjango/template/base.py:1773 ms0.6%
instrumented_test_renderdjango/test/utils.py:1133 ms0.6%
NodeList.renderdjango/template/base.py:11083 ms0.6%
Node.render_annotateddjango/template/base.py:10693 ms0.6%
ForNode.renderdjango/template/defaulttags.py:2493 ms0.6%
Node.render_annotateddjango/template/base.py:10693 ms0.6%
1 smaller frames hidden
1 smaller frames hidden
1 smaller frames hidden
1 smaller frames hidden
ForNode.renderdjango/template/defaulttags.py:2493 ms0.6%
Node.render_annotateddjango/template/base.py:10693 ms0.6%
2 smaller frames hidden
1 smaller frames hidden
create_conferenceconfs/views.py:484 form = ConferenceForm(request.POST)3 ms0.6%
ConferenceForm.__init__confs/views.py:420 super().__init__(*args, **kwargs)3 ms0.6%
BaseModelForm.__init__django/forms/models.py:3813 ms0.6%
BaseForm.__init__django/forms/forms.py:1063 ms0.6%
deepcopy<stdlib>/copy.py:1313 ms0.6%
_deepcopy_dict<stdlib>/copy.py:2023 ms0.6%
deepcopy<stdlib>/copy.py:1383 ms0.6%
1 smaller frames hidden
user_passes_test.<locals>.decorator.<locals>._view_wrapperdjango/contrib/auth/decorators.py:594 ms0.8%
login_required.<locals>.<lambda>django/contrib/auth/decorators.py:824 ms0.8%
new_method_proxy.<locals>.innerdjango/utils/functional.py:2514 ms0.8%
SimpleLazyObject._setupdjango/utils/functional.py:4044 ms0.8%
AuthenticationMiddleware.process_request.<locals>.<lambda>django/contrib/auth/middleware.py:394 ms0.8%
get_userdjango/contrib/auth/middleware.py:194 ms0.8%
TestCreateConference.test_rejects_end_date_before_startconfs/tests.py:1098 self.client.force_login(self.user)12 ms2.3%
ClientMixin.force_logindjango/test/client.py:85812 ms2.3%
ClientMixin._logindjango/test/client.py:8896 ms1.1%
logindjango/contrib/auth/__init__.py:1896 ms1.1%
SessionBase.cycle_keydjango/contrib/sessions/backends/base.py:4374 ms0.8%
SessionStore.createdjango/contrib/sessions/backends/db.py:744 ms0.8%
SessionStore.savedjango/contrib/sessions/backends/db.py:1263 ms0.6%
Atomic.__enter__django/db/transaction.py:2233 ms0.6%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:263 ms0.6%
BaseDatabaseWrapper.savepointdjango/db/backends/base/base.py:4003 ms0.6%
BaseDatabaseWrapper._savepointdjango/db/backends/base/base.py:3673 ms0.6%
CursorWrapper.executedjango/db/backends/utils.py:793 ms0.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms0.6%
CursorWrapper._executedjango/db/backends/utils.py:1033 ms0.6%
Cursor.executepsycopg/cursor.py:1133 ms0.6%
Connection.waitpsycopg/connection.py:4953 ms0.6%
BaseCursor._execute_genpsycopg/_cursor_base.py:2063 ms0.6%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2863 ms0.6%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:783 ms0.6%
1 smaller frames hidden
1 smaller frames hidden
ClientMixin._logindjango/test/client.py:8913 ms0.6%
ClientMixin._logindjango/test/client.py:8843 ms0.6%
ClientMixin.sessiondjango/test/client.py:8153 ms0.6%
SessionStore.savedjango/contrib/sessions/backends/db.py:1213 ms0.6%
3 smaller frames hidden
Estimated from 529 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
|
404 ms |
|
confs/tests.py:1100
response = self.client.post(reverse("create_conference"), data)
TestCreateConference.test_rejects_end_date_before_start
· Libraries
|
65 ms |
|
confs/views.py:509
return render(
create_conference
· Templates
|
45 ms |
|
confs/tests.py:1098
self.client.force_login(self.user)
TestCreateConference.test_rejects_end_date_before_start
· Database
|
12 ms |
|
confs/views.py:420
super().__init__(*args, **kwargs)
ConferenceForm.__init__
· Deep copies
|
3 ms |
|
confs/models.py:266
return static(self.icon)
ConferenceTag.icon_url
· Templates
|
2 ms |
|
confs/views.py:428
if tags and len(tags) > MAX_CONFERENCE_TAGS:
ConferenceForm.clean_conference_tags
· Database
|
1 ms |
|
confs/views.py:485
if form.is_valid():
create_conference
· Database
|
1 ms |
|
confs/tests.py:1102
self.assertFalse(Conference.objects.filter(name="PyCon Test").exists())
TestCreateConference.test_rejects_end_date_before_start
· Database
|
1 ms |
Fixtures
Exact setup time| _dj_autoclear_mailbox function | 0.19 ms |
| _template_string_if_invalid_marker function | 0.04 ms |
| _django_db_marker function | 0.03 ms |
| _django_isolate_apps function | 0.03 ms |
| _django_set_urlconf function | 0.03 ms |
| _live_server_helper function | 0.03 ms |
| _django_clear_site_cache function | 0.03 ms |
| monkeypatch function | 0.02 ms |
Database
26 queries · 12 msNo repeated queries.
Biggest pieces of work
|
call setUp
confs/tests.py:1044
|
404 ms |
|
call test body
confs/tests.py:1100
|
130 ms |
|
call _pre_setup
django/test/testcases.py:1167
|
1 ms |
| call pytest internals | 1 ms |
|
call _post_teardown
django/test/testcases.py:1243
|
1 ms |
Reliability
5 results · 0 CI failures · 0 local failuresThis test hasn't failed recently.
History
Latest 5 results, oldest first in the strip| When | Environment | Outcome | Duration | |
|---|---|---|---|---|
| 7 hours ago | CI github-actions:test | passed | 539 ms | Profile |
| 7 hours ago | CI github-actions:test | passed | 874 ms | Profile |
| 7 hours ago | CI github-actions:test | passed | 1.26 s | Profile |
| 12 hours ago | CI github-actions:test | passed | 1.22 s | Profile |
| 12 hours ago | CI github-actions:test | passed | 574 ms | Run |