Tests / mastodon_auth/tests.py
MastodonLoginFormTests::test_cleans_instance_to_ascii_hostname
First seen 5 months, 3 weeks ago in b300f50
CI
github-actions:test
11 runs
Average
101 ms
median 85 ms
max 195 ms
max 195 ms
Phases
Setup 18 ms
Call 83 ms
Teardown 0.31 ms
Categories
Database 20 ms
Test code 0.09 ms
Other (Imports, pytest, Deep copies, Libraries, ...) 81 ms
5 database queries per run
Needs 12 MB of memory (max 13 MB)
Duration per run
Where the time goes
Latest run in ci:github-actions:test, 7 hours ago ·
open run
setup22 ms25.5%
TestCase.setUpClassdjango/test/testcases.py:1426 cls.cls_atomics = cls._enter_atomics()22 ms25.5%
TestCase._enter_atomicsdjango/test/testcases.py:139922 ms25.5%
Atomic.__enter__django/db/transaction.py:21022 ms25.5%
BaseDatabaseWrapper.get_autocommitdjango/db/backends/base/base.py:45422 ms25.5%
SimpleTestCase.ensure_connection_patch_method.<locals>.patched_ensure_connectiondjango/test/testcases.py:30422 ms25.5%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:2622 ms25.5%
BaseDatabaseWrapper.ensure_connectiondjango/db/backends/base/base.py:27922 ms25.5%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:2622 ms25.5%
BaseDatabaseWrapper.connectdjango/db/backends/base/base.py:25622 ms25.5%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:2622 ms25.5%
DatabaseWrapper.get_new_connectiondjango/db/backends/postgresql/base.py:34522 ms25.5%
Connection.connectpsycopg/connection.py:10922 ms25.5%
wait_connpsycopg/waiting.py:14116 ms18.8%
EpollSelector.select<stdlib>/selectors.py:45216 ms18.8%
wait_connpsycopg/waiting.py:1453 ms3.6%
BaseConnection._connect_genpsycopg/_connection_base.py:4393 ms3.4%
wait_connpsycopg/waiting.py:1363 ms3.2%
BaseConnection._connect_genpsycopg/_connection_base.py:4393 ms3.2%
call64 ms74.1%
MastodonLoginFormTests.test_cleans_instance_to_ascii_hostnamemastodon_auth/tests.py:102 self.assertTrue(form.is_valid())56 ms64.5%
BaseForm.is_validdjango/forms/forms.py:20656 ms64.5%
BaseForm.errorsdjango/forms/forms.py:20156 ms64.5%
BaseForm.full_cleandjango/forms/forms.py:33756 ms64.5%
BaseForm._clean_fieldsdjango/forms/forms.py:34756 ms64.5%
MastodonLoginForm.clean_instancemastodon_auth/forms.py:27 ascii_hostname = idna.encode(hostname, uts46=True).decode("ascii")56 ms64.5%
encodeidna/core.py:77254 ms62.1%
uts46_remapidna/core.py:67454 ms62.1%
_find_and_load<frozen importlib._bootstrap>:135354 ms62.1%
_find_and_load_unlocked<frozen importlib._bootstrap>:124954 ms62.1%
_load_unlocked<frozen importlib._bootstrap>:85754 ms62.1%
_LoaderBasics.exec_module<frozen importlib._bootstrap_external>:74754 ms62.1%
SourceLoader.get_code<frozen importlib._bootstrap_external>:88153 ms60.9%
SourceLoader.source_to_code<frozen importlib._bootstrap_external>:81053 ms60.9%
_call_with_frames_removed<frozen importlib._bootstrap>:49153 ms60.9%
SourceLoader.get_code<frozen importlib._bootstrap_external>:8941 ms1.2%
SourceFileLoader._cache_bytecode<frozen importlib._bootstrap_external>:9501 ms1.2%
SourceFileLoader.set_data<frozen importlib._bootstrap_external>:9751 ms1.2%
_write_atomic<frozen importlib._bootstrap_external>:2111 ms1.2%
encodeidna/core.py:7862 ms2.4%
alabelidna/core.py:5441 ms1.2%
ulabelidna/core.py:5931 ms1.2%
check_labelidna/core.py:4761 ms1.2%
alabelidna/core.py:5501 ms1.2%
_punycodeidna/core.py:1341 ms1.2%
search_function<stdlib>/encodings/__init__.py:961 ms1.2%
_find_and_load<frozen importlib._bootstrap>:13531 ms1.2%
_find_and_load_unlocked<frozen importlib._bootstrap>:12491 ms1.2%
_load_unlocked<frozen importlib._bootstrap>:8571 ms1.2%
_LoaderBasics.exec_module<frozen importlib._bootstrap_external>:7471 ms1.2%
SourceLoader.get_code<frozen importlib._bootstrap_external>:8761 ms1.2%
_compile_bytecode<frozen importlib._bootstrap_external>:5001 ms1.2%
TransactionTestCase._post_teardowndjango/test/testcases.py:1243 self._fixture_teardown()3 ms3.6%
TestCase._fixture_teardowndjango/test/testcases.py:15002 ms2.4%
TestCase._rollback_atomicsdjango/test/testcases.py:14082 ms2.4%
Atomic.__exit__django/db/transaction.py:2951 ms1.2%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:261 ms1.2%
BaseDatabaseWrapper.savepoint_rollbackdjango/db/backends/base/base.py:4131 ms1.2%
BaseDatabaseWrapper._savepoint_rollbackdjango/db/backends/base/base.py:3701 ms1.2%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:261 ms1.2%
BaseDatabaseWrapper.cursordjango/db/backends/base/base.py:3201 ms1.2%
BaseDatabaseWrapper._cursordjango/db/backends/base/base.py:2981 ms1.2%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:261 ms1.2%
DatabaseWrapper.create_cursordjango/db/backends/postgresql/base.py:4421 ms1.2%
Connection.cursorpsycopg/connection.py:2591 ms1.2%
Cursor.__init__psycopg/cursor.py:471 ms1.2%
BaseCursor.__init__psycopg/_cursor_base.py:731 ms1.2%
Atomic.__exit__django/db/transaction.py:2981 ms1.2%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:261 ms1.2%
BaseDatabaseWrapper.savepoint_commitdjango/db/backends/base/base.py:4311 ms1.2%
BaseDatabaseWrapper._savepoint_commitdjango/db/backends/base/base.py:3751 ms1.2%
CursorWrapper.executedjango/db/backends/utils.py:791 ms1.2%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms1.2%
CursorWrapper._executedjango/db/backends/utils.py:1031 ms1.2%
Cursor.executepsycopg/cursor.py:1131 ms1.2%
Connection.waitpsycopg/connection.py:4951 ms1.2%
BaseCursor._execute_genpsycopg/_cursor_base.py:2061 ms1.2%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:3121 ms1.2%
TestCase._fixture_teardowndjango/test/testcases.py:14971 ms1.2%
TestCase._should_check_constraintsdjango/test/testcases.py:15061 ms1.2%
DatabaseWrapper.is_usabledjango/db/backends/postgresql/base.py:5041 ms1.2%
Cursor.executepsycopg/cursor.py:1131 ms1.2%
Connection.waitpsycopg/connection.py:4951 ms1.2%
TransactionTestCase._pre_setupdjango/test/testcases.py:1167 cls._fixture_setup()2 ms2.4%
TestCase._fixture_setupdjango/test/testcases.py:14812 ms2.4%
TestCase._enter_atomicsdjango/test/testcases.py:13992 ms2.4%
Atomic.__enter__django/db/transaction.py:2232 ms2.4%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms2.4%
BaseDatabaseWrapper.savepointdjango/db/backends/base/base.py:4002 ms2.4%
BaseDatabaseWrapper._savepointdjango/db/backends/base/base.py:3672 ms2.4%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.4%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.4%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms2.4%
Cursor.executepsycopg/cursor.py:1132 ms2.4%
Connection.waitpsycopg/connection.py:4952 ms2.4%
MastodonLoginFormTests.test_cleans_instance_to_ascii_hostnamemastodon_auth/tests.py:99 with self.subTest(instance=instance):2 ms2.4%
asdict<stdlib>/dataclasses.py:15151 ms1.2%
_is_dataclass_instance<stdlib>/dataclasses.py:14851 ms1.2%
MastodonLoginFormTests.test_cleans_instance_to_ascii_hostnamemastodon_auth/tests.py:100 form = MastodonLoginForm(data={"instance": instance})1 ms1.2%
BaseForm.__init__django/forms/forms.py:1231 ms1.2%
get_default_rendererdjango/forms/renderers.py:111 ms1.2%
SysMonitor.sysmon_py_startcoverage/sysmon.py:345 disp = self.should_trace(filename, frame) # type: ignore[arg-type]1 ms1.2%
Coverage._should_tracecoverage/control.py:4521 ms1.2%
InOrOut.should_tracecoverage/inorout.py:4391 ms1.2%
InOrOut.check_include_omit_etccoverage/inorout.py:4691 ms1.2%
TreeMatcher.matchcoverage/files.py:2751 ms1.2%
abs_filecoverage/files.py:1581 ms1.2%
realpath<frozen posixpath>:4601 ms1.2%
Estimated from 205 samples; phase durations are exact. Frames from pytest and pluggy are
hidden
.
Hot lines in your code
|
mastodon_auth/forms.py:27
ascii_hostname = idna.encode(hostname, uts46=True).decode("ascii")
MastodonLoginForm.clean_instance
· Imports
|
56 ms |
|
mastodon_auth/tests.py:99
with self.subTest(instance=instance):
MastodonLoginFormTests.test_cleans_instance_to_ascii_hostname
· pytest
|
2 ms |
|
mastodon_auth/tests.py:100
form = MastodonLoginForm(data={"instance": instance})
MastodonLoginFormTests.test_cleans_instance_to_ascii_hostname
· Libraries
|
1 ms |
Fixtures
Exact setup time| _unittest_setUpClass_fixture_MastodonLoginFormTests class | 19 ms |
| _django_setup_unittest class | 0.44 ms |
| _template_string_if_invalid_marker function | 0.07 ms |
| _dj_autoclear_mailbox function | 0.05 ms |
| _django_db_marker function | 0.05 ms |
| _django_isolate_apps function | 0.04 ms |
| _live_server_helper function | 0.04 ms |
| _django_set_urlconf function | 0.04 ms |
| _django_clear_site_cache function | 0.03 ms |
| monkeypatch function | 0.02 ms |
Database
5 queries · 3 msNo repeated queries.
Biggest pieces of work
|
call test body
mastodon_auth/tests.py:102
|
59 ms |
|
setup setUpClass
django/test/testcases.py:1426
|
22 ms |
|
call _post_teardown
django/test/testcases.py:1243
|
3 ms |
|
call _pre_setup
django/test/testcases.py:1167
|
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 | |
|---|---|---|---|---|
| 7 hours ago | CI github-actions:test | passed | 86 ms | Profile |
| 16 hours ago | CI github-actions:test | passed | 77 ms | Profile |
| 22 hours ago | CI github-actions:test | passed | 85 ms | Profile |
| 1 week, 5 days ago | CI github-actions:test | passed | 78 ms | Profile |
| 2 weeks, 2 days ago | CI github-actions:test | passed | 69 ms | Profile |
| 2 weeks, 2 days ago | CI github-actions:test | passed | 86 ms | Profile |
| 2 weeks, 4 days ago | CI github-actions:test | passed | 61 ms | Profile |
| 3 weeks ago | CI github-actions:test | passed | 65 ms | Profile |
| 3 weeks ago | CI github-actions:test | passed | 195 ms | Profile |
| 3 weeks ago | CI github-actions:test | passed | 155 ms | Profile |
| 3 weeks ago | CI github-actions:test | passed | 159 ms | Profile |
| 3 weeks ago | CI github-actions:test | passed | 61 ms | Run |