diff options
| author | Christophe Besson <cbesson@gmail.com> | 2026-09-04 02:20:57 +0200 |
|---|---|---|
| committer | Christophe Besson <cbesson@gmail.com> | 2026-09-04 02:20:57 +0200 |
| commit | d11e571c5b6c24b586ef5b8fb2cfcf6a6bfa6d6d (patch) | |
| tree | fe3c4fbce3db02a8b84a15c413735622a51eefb0 /packages/meshbay-node/tests/test_stream_hevc_transcode.py | |
| parent | 7a4b905ddb64bdc92b7f9acf2ccde9bd84d7a6f3 (diff) | |
| download | meshbay-d11e571c5b6c24b586ef5b8fb2cfcf6a6bfa6d6d.tar.gz | |
test(node): make the suite pass on Windows
- `.read_text()` on source files now `encoding="utf-8"` — cp1252 chokes on
the em dashes / box-drawing chars those files contain.
- test node.toml templates embed paths via `Path.as_posix()`: a raw Windows
path in a basic TOML string is a parse error (`\U`, `\a`, ... are escapes).
- new `test_platform.py` covers `meshbay_node.platform` by mocking
`sys.platform` / `os.environ` — runs on both OSes.
- `skipif(sys.platform == "win32")`, in `conftest.needs_subprocess` and
inline, for the documented gaps: ffmpeg/ffprobe via asyncio subprocess
(the win32 selector loop, forced for aiortc, cannot spawn one), the
systemd `reload`/`restart-daemon` delegation (Windows path is W3), the
keystore `st_mode == 600` assertion (NTFS ignores mode bits), and the
symlink-escape test (needs Developer Mode).
Windows: 781 passed, 25 skipped. No change on Linux.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Diffstat (limited to 'packages/meshbay-node/tests/test_stream_hevc_transcode.py')
| -rw-r--r-- | packages/meshbay-node/tests/test_stream_hevc_transcode.py | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/packages/meshbay-node/tests/test_stream_hevc_transcode.py b/packages/meshbay-node/tests/test_stream_hevc_transcode.py index b3f0474..7d831ee 100644 --- a/packages/meshbay-node/tests/test_stream_hevc_transcode.py +++ b/packages/meshbay-node/tests/test_stream_hevc_transcode.py @@ -26,7 +26,7 @@ from meshbay_common.webcrypto import chunk_key_aes, decrypt_chunk_aes from meshbay_node.indexer.group_index import GroupIndex from meshbay_node.transport.webrtc_server import WebRTCPeerSession, _probe_video -from conftest import one_root +from conftest import needs_subprocess, one_root _HAVE_FFMPEG = shutil.which("ffmpeg") and shutil.which("ffprobe") _HAVE_HEVC_ENCODER = _HAVE_FFMPEG and b"libx265" in subprocess.run( @@ -34,6 +34,7 @@ _HAVE_HEVC_ENCODER = _HAVE_FFMPEG and b"libx265" in subprocess.run( pytestmark = [ pytest.mark.asyncio, pytest.mark.skipif(not _HAVE_HEVC_ENCODER, reason="ffmpeg/libx265 not installed"), + needs_subprocess, ] |