Message201671
Here's a patch that builds _testembed on Windows and adjusts test_capi to not skip EmbeddingTests on Windows. The .vcxproj is based on _freeze_importlib, with "when to build" settings lifted from _testimportmultiple.
The patch also adjusts test_capi.EmbeddingTests.test_forced_io_encoding such that it doesn't blow up completely on Windows (and should still pass anywhere it does currently, though I haven't been able to test anywhere but on Windows yet). The test still fails, though; here's the relevant output I get:
"""
======================================================================
FAIL: test_forced_io_encoding (test.test_capi.EmbeddingTests)
----------------------------------------------------------------------
Traceback (most recent call last):
File "P:\Projects\OSS\Python\_cpython\lib\test\test_capi.py", line 298, in test_forced_io_encoding
self.assertEqual(out.strip(), expected_output)
AssertionError: '--- [106 chars]t: cp1252:strict\r\nstderr: cp1252:backslashre[575 chars]lace' != '--- [106 chars]t: cp437:strict\r\nstderr:
cp437:backslashrepl[571 chars]lace'
--- Use defaults ---
Expected encoding: default
Expected errors: default
stdin: cp437:strict
- stdout: cp1252:strict
? ^^^^
+ stdout: cp437:strict
? ^^^
- stderr: cp1252:backslashreplace
? ^^^^
+ stderr: cp437:backslashreplace
? ^^^
--- Set errors only ---
Expected encoding: default
Expected errors: surrogateescape
stdin: cp437:surrogateescape
- stdout: cp1252:surrogateescape
? ^^^^
+ stdout: cp437:surrogateescape
? ^^^
- stderr: cp1252:backslashreplace
? ^^^^
+ stderr: cp437:backslashreplace
? ^^^
--- Set encoding only ---
Expected encoding: latin-1
Expected errors: default
stdin: latin-1:strict
stdout: latin-1:strict
stderr: latin-1:backslashreplace
--- Set encoding and errors ---
Expected encoding: latin-1
Expected errors: surrogateescape
stdin: latin-1:surrogateescape
stdout: latin-1:surrogateescape
stderr: latin-1:backslashreplace
----------------------------------------------------------------------
"""
I'm not sure whether this is a bug in the way _testembed is built or otherwise. EmbeddingTests.test_subinterps passes, though.
Due to my ongoing inability to get a 64-bit build to work, this has only been tested on 32-bit Windows 7. |
|
Date |
User |
Action |
Args |
2013-10-29 20:58:13 | zach.ware | set | recipients:
+ zach.ware, loewis, ncoghlan, pitrou, tim.golden, brian.curtin |
2013-10-29 20:58:13 | zach.ware | set | messageid: <1383080293.2.0.31204430631.issue19439@psf.upfronthosting.co.za> |
2013-10-29 20:58:13 | zach.ware | link | issue19439 messages |
2013-10-29 20:58:12 | zach.ware | create | |
|