To confirm that 2d764e90dd2c624f7a2d863ab29bd418ed33d252 does the right thing.
Signed-off-by: Dmitry Timoshkov dmitry@baikal.ru --- dlls/kernel32/tests/actctx.c | 32 ++++++++++++++++++++++++-- dlls/kernel32/tests/resource.rc | 2 ++ dlls/kernel32/tests/wine_test.manifest | 4 ++++ 3 files changed, 36 insertions(+), 2 deletions(-) create mode 100644 dlls/kernel32/tests/wine_test.manifest
diff --git a/dlls/kernel32/tests/actctx.c b/dlls/kernel32/tests/actctx.c index 163ea405222..adf2549bece 100644 --- a/dlls/kernel32/tests/actctx.c +++ b/dlls/kernel32/tests/actctx.c @@ -694,7 +694,7 @@ static void test_detailed_info(HANDLE handle, const detailed_info_t *exinfo, int ok_(__FILE__, line)(detailed_info->lpRootManifestPath != NULL, "detailed_info->lpRootManifestPath == NULL\n"); if(detailed_info->lpRootManifestPath) ok_(__FILE__, line)(!lstrcmpiW(detailed_info->lpRootManifestPath, exinfo->root_manifest_path), - "unexpected detailed_info->lpRootManifestPath\n"); + "unexpected detailed_info->lpRootManifestPath %s\n", wine_dbgstr_w(detailed_info->lpRootManifestPath)); }else { ok_(__FILE__, line)(detailed_info->lpRootManifestPath == NULL, "detailed_info->lpRootManifestPath != NULL\n"); } @@ -2683,7 +2683,8 @@ todo_wine SetLastError(0xdeadbeef); handle = CreateActCtxA(&actctx); ok(handle == INVALID_HANDLE_VALUE, "got handle %p\n", handle); - ok(GetLastError() == ERROR_RESOURCE_TYPE_NOT_FOUND, "got error %d\n", GetLastError()); +todo_wine + ok(GetLastError() == ERROR_RESOURCE_NAME_NOT_FOUND, "got error %d\n", GetLastError());
/* load manifest from lpAssemblyDirectory directory */ write_manifest("testdir.manifest", manifest1); @@ -3548,6 +3549,32 @@ static void run_child_process_two_dll(int run) CloseHandle(pi.hProcess); }
+static const detailed_info_t detailed_info3 = +{ + 1, 1, 1, ACTIVATION_CONTEXT_PATH_TYPE_WIN32_FILE, exe_path, + ACTIVATION_CONTEXT_PATH_TYPE_NONE, ACTIVATION_CONTEXT_PATH_TYPE_WIN32_FILE, + app_dir, +}; + +static void test_manifest_in_module(void) +{ + ACTCTXW ctx; + HANDLE handle; + + memset(&ctx, 0, sizeof(ctx)); + ctx.cbSize = sizeof(ctx); + ctx.dwFlags = ACTCTX_FLAG_HMODULE_VALID | ACTCTX_FLAG_RESOURCE_NAME_VALID; + ctx.lpResourceName = (LPWSTR)124; + ctx.hModule = GetModuleHandleW(NULL); + handle = CreateActCtxW(&ctx); + ok(handle != 0, "CreateActCtx error %u\n", GetLastError()); + + test_basic_info(handle, __LINE__); + test_detailed_info(handle, &detailed_info3, __LINE__); + + ReleaseActCtx(handle); +} + START_TEST(actctx) { int argc; @@ -3574,6 +3601,7 @@ START_TEST(actctx) return; }
+ test_manifest_in_module(); test_actctx(); test_create_fail(); test_CreateActCtx(); diff --git a/dlls/kernel32/tests/resource.rc b/dlls/kernel32/tests/resource.rc index f40a87819ea..58902e7a015 100644 --- a/dlls/kernel32/tests/resource.rc +++ b/dlls/kernel32/tests/resource.rc @@ -24,3 +24,5 @@ { MENUITEM "foo", 1 } + +124 24 wine_test.manifest diff --git a/dlls/kernel32/tests/wine_test.manifest b/dlls/kernel32/tests/wine_test.manifest new file mode 100644 index 00000000000..de77de3e201 --- /dev/null +++ b/dlls/kernel32/tests/wine_test.manifest @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="UTF-8" standalone="yes"?> +<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> + <assemblyIdentity version="1.0.0.0" name="Wine.Test"/> +</assembly>