Nikolay Sivov : ole32/tests: Add some tests for class moniker composition.
Alexandre Julliard
julliard at winehq.org
Fri Sep 24 15:32:00 CDT 2021
Module: wine
Branch: master
Commit: 25061d23b042b8b5048cc47949c6a42beb7f57c6
URL: https://source.winehq.org/git/wine.git/?a=commit;h=25061d23b042b8b5048cc47949c6a42beb7f57c6
Author: Nikolay Sivov <nsivov at codeweavers.com>
Date: Fri Sep 24 15:51:45 2021 +0300
ole32/tests: Add some tests for class moniker composition.
Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/ole32/tests/moniker.c | 26 ++++++++++++++++++++++++--
1 file changed, 24 insertions(+), 2 deletions(-)
diff --git a/dlls/ole32/tests/moniker.c b/dlls/ole32/tests/moniker.c
index 6b21a2e732e..ae46db110b6 100644
--- a/dlls/ole32/tests/moniker.c
+++ b/dlls/ole32/tests/moniker.c
@@ -1830,7 +1830,7 @@ static void test_class_moniker(void)
{ L"clsid:{11111111-0000-0000-2222-444444444444", 0, MK_E_SYNTAX },
{ L"clsid:11111111-0000-0000-2222-444444444444}", 43 },
};
- IMoniker *moniker, *moniker2, *inverse, *reduced, *anti;
+ IMoniker *moniker, *moniker2, *inverse, *reduced, *anti, *c;
IEnumMoniker *enummoniker;
ULONG length, eaten;
ULARGE_INTEGER size;
@@ -2036,13 +2036,35 @@ todo_wine
ok(!moniker2, "Unexpected pointer.\n");
IMoniker_Release(anti);
- /* C + A2 -> A */
+ /* C + A2 -> () */
anti = create_antimoniker(2);
hr = IMoniker_ComposeWith(moniker, anti, TRUE, &moniker2);
ok(hr == S_OK, "Failed to compose, hr %#x.\n", hr);
ok(!moniker2, "Unexpected pointer.\n");
IMoniker_Release(anti);
+ /* C + (A,I) -> I */
+ hr = create_moniker_from_desc("CA1I1", &c);
+ ok(hr == S_OK, "Unexpected hr %#x.\n", hr);
+ hr = IMoniker_ComposeWith(moniker, c, TRUE, &moniker2);
+ ok(hr == MK_E_NEEDGENERIC, "Unexpected hr %#x.\n", hr);
+ hr = IMoniker_ComposeWith(moniker, c, FALSE, &moniker2);
+ ok(hr == S_OK, "Unexpected hr %#x.\n", hr);
+ TEST_MONIKER_TYPE(moniker2, MKSYS_ITEMMONIKER);
+ IMoniker_Release(moniker2);
+ IMoniker_Release(c);
+
+ /* C + (A2,I) -> I */
+ hr = create_moniker_from_desc("CA1I1", &c);
+ ok(hr == S_OK, "Unexpected hr %#x.\n", hr);
+ hr = IMoniker_ComposeWith(moniker, c, TRUE, &moniker2);
+ ok(hr == MK_E_NEEDGENERIC, "Unexpected hr %#x.\n", hr);
+ hr = IMoniker_ComposeWith(moniker, c, FALSE, &moniker2);
+ ok(hr == S_OK, "Unexpected hr %#x.\n", hr);
+ TEST_MONIKER_TYPE(moniker2, MKSYS_ITEMMONIKER);
+ IMoniker_Release(moniker2);
+ IMoniker_Release(c);
+
IMoniker_Release(moniker);
}
More information about the wine-cvs
mailing list