Jeffrey Smith (@whydoubt) commented about dlls/mlang/tests/linebreakconsole.c:
+static void test_BreakLineA(IMLangLineBreakConsole *mlbc) +{
- LCID locale = 1024;
- UINT uCodePage;
- CHAR *pszSrc = malloc(100);
- LONG cchMax = 20;
- LONG cMaxColumns;
- LONG cchLine, cchSkip;
- HRESULT res;
- cMaxColumns = 10;
- uCodePage = CP_UNICODE;
- strcpy(pszSrc, "Ś†rińg Wi†h Póliśh ćharacterś");
- res = IMLangLineBreakConsole_BreakLineA(mlbc, locale, uCodePage, pszSrc, cchMax, cMaxColumns, &cchLine, &cchSkip);
- todo_wine ok(res == E_FAIL, "got %08lx\n", res);
Cannot tell from this test whether it fails simply from passing CP_UNICODE, or from passing CP_UNICODE _and_ passing a string containing multi-byte characters.
A CP_UNICODE with 7-bit ASCII string test would be good. If it fails, replace the current test with that. If it succeeds, having both tests will show that the multi-byte characters made the difference. Note that the CP_USASCII tests do not help answer this, as I expect they would not interpret the string as containing multi-byte characters.