You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix: 2 more Windows test-portability gaps from tonight's CI-red survey
Python UnicodeEncodeError: instance_deform_cache_test.py and
large_scene_generated_test.py (backs the _generated/_500/_1000 CTest
names) printed "!=" as unicode "≠" and ">=" as "≥" in PASS messages.
Windows' default console codepage (cp1252) can't encode those
characters, crashing the test harness itself rather than the product
under test. Replaced with plain ASCII.
Write-protection test assumption: mc3togltf_no_partial_output
(STAB-0546b) and mc3tomcb_error_handling (STAB-0538) simulated an
unwritable output directory via os.chmod(dir, ...) with POSIX mode
bits. On Windows, os.chmod() can only toggle FILE_ATTRIBUTE_READONLY,
which Windows ignores for directories, so it never actually blocked
writes there -- the CLI succeeded (exit 0) where the test expected
rejection. Replaced with a directory-permission-independent mechanism:
point the output path at a parent directory that is simply never
created, which fails identically ("no such file or directory") on
every platform and exercises the same downstream "does a write
failure leave partial output" code path without depending on any OS
permission model.
Verified via a MinGW+Wine repro of both fixes: built mc3togltf.exe/
mc3tomcb.exe for Windows and ran the actual Python test scripts against
them through Wine (via a small wrapper script, since this sandbox has
no binfmt_misc handler for .exe) -- all 4 sub-cases (STAB-0546a/b,
STAB-0537/0538) pass. Also reconfirmed the full mc3togltf_*/mc3tomcb_*
suite on Linux (77/80, same 3 already-known Blender/numpy failures,
zero regressions).
0 commit comments