Skip to content

Pytest discovery breaks when code to test prints to stdout during discovery #11729

Description

@karthiknadig

I had another look and realized something. My project imports libraries from a host application. This application has a plugin, named Redshift, that I guess outputs to stdout.

So, when I run the command

 c:\Users\WORKSTATIONL\Python\Tests\NymusClient\.venvHoudini18\Scripts\python.exe c:\Users\WORKSTATIONL\.vscode\extensions\ms-python.python-2020.4.76186\pythonFiles\testing_tools\run_adapter.py discover pytest -- --rootdir c:\Users\WORKSTATIONL\Python\Tests\NymusClient -s

The entire output is

[Redshift] Redshift for Houdini plugin version 3.0.16 (Feb  3 2020 16:30:46)
[Redshift] Plugin compile time HDK version: 18.0.348
[Redshift] Houdini host version: 18.0.348
[Redshift] Plugin dso/dll and config path: T:/__SharedAssets/Assets_Houdini/Redshift_SERVER/Redshift_v3.0.16/Plugins/Houdini/18.0.348/dso
[Redshift] Core data path: T:\__SharedAssets\Assets_Houdini\Redshift_SERVER\Redshift_v3.0.16
[Redshift] Local data path: C:\ProgramData\Redshift
[Redshift] Procedurals path: T:\__SharedAssets\Assets_Houdini\Redshift_SERVER\Redshift_v3.0.16\Procedurals
[Redshift] Preferences file path: C:\ProgramData\Redshift\preferences.xml
[Redshift] License path: C:\ProgramData\Redshift
[{"rootid": ".", "tests": [{"source": ".\\src\\tests\\houdini_tests\\io_tests\\geometry_test.py:12", "parentid": "./src/tests/houdini_tests/io_tests/geometry_test.py", "id": "./src/tests/houdini_tests/io_tests/geometry_test.py::test_writeCache", "markers": [], "name": "test_writeCache"}, {"source": ".\\src\\tests\\houdini_tests\\io_tests\\geometry_test.py:29", "parentid": "./src/tests/houdini_tests/io_tests/geometry_test.py", "id": "./src/tests/houdini_tests/io_tests/geometry_test.py::test_remove_writeCache_result", "markers": [], "name": "test_remove_writeCache_result"}, {"source": ".\\src\\tests\\houdini_tests\\io_tests\\render_test.py:11", "parentid": "./src/tests/houdini_tests/io_tests/render_test.py", "id": "./src/tests/houdini_tests/io_tests/render_test.py::test_writeCache", "markers": [], "name": "test_writeCache"}, {"source": ".\\src\\tests\\houdini_tests\\io_tests\\render_test.py:28", "parentid": "./src/tests/houdini_tests/io_tests/render_test.py", "id": "./src/tests/houdini_tests/io_tests/render_test.py::test_remove_writeCache_result", "markers": [], "name": "test_remove_writeCache_result"}, {"source": ".\\src\\tests\\houdini_tests\\io_tests\\utils_test.py:8", "parentid": "./src/tests/houdini_tests/io_tests/utils_test.py", "id": "./src/tests/houdini_tests/io_tests/utils_test.py::test_formatPath", "markers": [], "name": "test_formatPath"}, {"source": ".\\src\\tests\\houdini_tests\\io_tests\\utils_test.py:21", "parentid": "./src/tests/houdini_tests/io_tests/utils_test.py", "id": "./src/tests/houdini_tests/io_tests/utils_test.py::test_formatPathExpression", "markers": [], "name": "test_formatPathExpression"}, {"source": ".\\src\\tests\\renderpal_tests\\server_events_test.py:26", "parentid": "./src/tests/renderpal_tests/server_events_test.py", "id": "./src/tests/renderpal_tests/server_events_test.py::test_setup_variables", "markers": [], "name": "test_setup_variables"}, {"source": 
".\\src\\tests\\renderpal_tests\\server_events_test.py:82", "parentid": "./src/tests/renderpal_tests/server_events_test.py", "id": "./src/tests/renderpal_tests/server_events_test.py::test_GeometryOutputVersionComplete", "markers": [], "name": "test_GeometryOutputVersionComplete"}, {"source": ".\\src\\tests\\renderpal_tests\\server_events_test.py:93", "parentid": "./src/tests/renderpal_tests/server_events_test.py", "id": "./src/tests/renderpal_tests/server_events_test.py::test_setGeometryOutputVersionComplete", "markers": [], "name": "test_setGeometryOutputVersionComplete"}, {"source": ".\\src\\tests\\renderpal_tests\\server_events_test.py:101", "parentid": "./src/tests/renderpal_tests/server_events_test.py", "id": "./src/tests/renderpal_tests/server_events_test.py::test_setGeometryOutputVersionStatus", "markers": [], "name": "test_setGeometryOutputVersionStatus"}, {"source": ".\\src\\tests\\renderpal_tests\\server_events_test.py:110", "parentid": "./src/tests/renderpal_tests/server_events_test.py", "id": "./src/tests/renderpal_tests/server_events_test.py::test_setGeometryOutputVersionCurrent", "markers": [], "name": "test_setGeometryOutputVersionCurrent"}, {"source": ".\\src\\tests\\renderpal_tests\\server_events_test.py:118", "parentid": "./src/tests/renderpal_tests/server_events_test.py", "id": "./src/tests/renderpal_tests/server_events_test.py::test_setRenderOutputVersionComplete", "markers": [], "name": "test_setRenderOutputVersionComplete"}, {"source": ".\\src\\tests\\renderpal_tests\\server_events_test.py:124", "parentid": "./src/tests/renderpal_tests/server_events_test.py", "id": "./src/tests/renderpal_tests/server_events_test.py::test_setRenderOutputVersionCurrent", "markers": [], "name": "test_setRenderOutputVersionCurrent"}, {"source": ".\\src\\tests\\renderpal_tests\\server_events_test.py:130", "parentid": "./src/tests/renderpal_tests/server_events_test.py", "id": "./src/tests/renderpal_tests/server_events_test.py::test_setRenderOutputVersionStatus", "markers": [], "name": "test_setRenderOutputVersionStatus"}, {"source": ".\\src\\tests\\renderpal_tests\\server_events_test.py:138", "parentid": "./src/tests/renderpal_tests/server_events_test.py", "id": "./src/tests/renderpal_tests/server_events_test.py::test_setShotOutputVersionComplete", "markers": [], "name": "test_setShotOutputVersionComplete"}, {"source": ".\\src\\tests\\renderpal_tests\\server_events_test.py:144", "parentid": "./src/tests/renderpal_tests/server_events_test.py", "id": "./src/tests/renderpal_tests/server_events_test.py::test_setShotOutputVersionCurrent", "markers": [], "name": "test_setShotOutputVersionCurrent"}, {"source": ".\\src\\tests\\renderpal_tests\\server_events_test.py:150", "parentid": "./src/tests/renderpal_tests/server_events_test.py", "id": "./src/tests/renderpal_tests/server_events_test.py::test_setShotOutputVersionStatus", "markers": [], "name": "test_setShotOutputVersionStatus"}], "root": "C:\\Users\\WORKSTATIONL\\Python\\Tests\\NymusClient", "parents": [{"relpath": ".\\src", "kind": "folder", "parentid": ".", "id": "./src", "name": "src"}, {"relpath": ".\\src\\tests", "kind": "folder", "parentid": "./src", "id": "./src/tests", "name": "tests"}, {"relpath": ".\\src\\tests\\houdini_tests", "kind": "folder", "parentid": "./src/tests", "id": "./src/tests/houdini_tests", "name": "houdini_tests"}, {"relpath": ".\\src\\tests\\houdini_tests\\io_tests", "kind": "folder", "parentid": "./src/tests/houdini_tests", "id": "./src/tests/houdini_tests/io_tests", "name": "io_tests"}, {"relpath": ".\\src\\tests\\houdini_tests\\io_tests\\geometry_test.py", "kind": "file", "parentid": "./src/tests/houdini_tests/io_tests", "id": "./src/tests/houdini_tests/io_tests/geometry_test.py", "name": "geometry_test.py"}, {"relpath": ".\\src\\tests\\houdini_tests\\io_tests\\render_test.py", "kind": "file", 
"parentid": "./src/tests/houdini_tests/io_tests", "id": "./src/tests/houdini_tests/io_tests/render_test.py", "name": "render_test.py"}, {"relpath": ".\\src\\tests\\houdini_tests\\io_tests\\utils_test.py", "kind": "file", "parentid": "./src/tests/houdini_tests/io_tests", "id": "./src/tests/houdini_tests/io_tests/utils_test.py", "name": "utils_test.py"}, {"relpath": ".\\src\\tests\\renderpal_tests", "kind": "folder", "parentid": "./src/tests", "id": "./src/tests/renderpal_tests", "name": "renderpal_tests"}, {"relpath": ".\\src\\tests\\renderpal_tests\\server_events_test.py", "kind": "file", "parentid": "./src/tests/renderpal_tests", "id": "./src/tests/renderpal_tests/server_events_test.py", "name": "server_events_test.py"}]}]
[Redshift] Closing the RS instance. End of the plugin log system.

I'm guessing that [Redshift] is being interpreted as JSON.
This looks like it may be a separate issue. Let me know if you want me to post a new issue.

Originally posted by @Anti-Distinctlyminty in #10108 (comment)

Metadata

Metadata

Assignees

No one assigned

    Labels

    area-testingbugIssue identified by VS Code Team member as probable bug

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions