#36479: Failing test for black formatter missing install simulation
-----------------------------------------+--------------------------
Reporter: Roelzkie | Owner: Roelzkie
Type: Bug | Status: assigned
Component: Uncategorized | Version: dev
Severity: Normal | Keywords:
Triage Stage: Unreviewed | Has patch: 0
Needs documentation: 0 | Needs tests: 0
Patch needs improvement: 0 | Easy pickings: 1
UI/UX: 0 |
-----------------------------------------+--------------------------
The test on
`test.user_commands.tests.UtilsTests.test_run_formatters_handles_oserror_for_black_path`
attempts to assert a
[https://github.com/django/django/blob/main/tests/user_commands/tests.py#L569
`FileNotFoundError`] when simulating a missing black formatter
installation.
{{{
./runtests.py
user_commands.tests.UtilsTests.test_run_formatters_handles_oserror_for_black_path
}}}
However, it fails on the `Darwin` platform, at least on MacOS v14.7.2
(Sonoma) M1 machine. I tested on a Linux platform, and the test passed.
The root issue is due to the `subprocess.run` command, which yields
different `OSError` results on different OSes when the test reaches the
[https://github.com/django/django/blob/68a45d9a8078db642f0aca7ddab33af6df7ebeb3/django/core/management/utils.py#L175-L177
`subprocess.run(["nonexistent", "--fast", "--"])`]
For Darwin (at least on MacOS v14.7.2 - M1), it yields a
`NotADirectoryError` / `OSError(20, "Not a directory")` which fails the
test.
For Linux, it yields a `FileNotFoundError` / `OSError(2, "File not
found")` which passes the test.
Ideally this test should be able to handle it regardless of the machine
platform.
See failed test full stacktrace: https://dpaste.org/pY48h
--
Ticket URL: <https://code.djangoproject.com/ticket/36479>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
--
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion visit
https://groups.google.com/d/msgid/django-updates/01070197a8183130-817efbbb-34e1-4b5f-b262-d3e731dcb7b6-000000%40eu-central-1.amazonses.com.