ReactOS 0.4.17-dev-923-g4c9a150
name.c
Go to the documentation of this file.
1/*
2 * Copyright 2012 Hans Leidekker for CodeWeavers
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17 */
18
19#include <stdio.h>
20
21#define COBJMACROS
22
23#include <windows.h>
24#include <winsxs.h>
25#include <corerror.h>
26
27#include "wine/test.h"
28
30{
31 static const WCHAR emptyW[] = {0};
33 HRESULT hr;
34
36 ok(hr == E_INVALIDARG, "expected E_INVALIDARG got %08lx\n", hr);
37
38 name = (IAssemblyName *)0xdeadbeef;
40 ok( hr == E_INVALIDARG, "expected E_INVALIDARG got %08lx\n", hr );
41 ok( !name, "expected NULL got %p\n", name );
42
43 name = (IAssemblyName *)0xdeadbeef;
45 ok( hr == E_INVALIDARG, "expected E_INVALIDARG got %08lx\n", hr );
46 ok( !name, "expected NULL got %p\n", name );
47
48 name = (IAssemblyName *)0xdeadbeef;
50 ok( hr == E_INVALIDARG, "expected E_INVALIDARG got %08lx\n", hr );
51 ok( !name, "expected NULL got %p\n", name );
52
53 name = (IAssemblyName *)0xdeadbeef;
55 ok( hr == E_INVALIDARG, "expected E_INVALIDARG got %08lx\n", hr );
56 ok( !name, "expected NULL got %p\n", name );
57
58 name = NULL;
60 ok( hr == S_OK, "expected S_OK got %08lx\n", hr );
61 ok( name != NULL, "expected non-NULL name\n" );
62 IAssemblyName_Release( name );
63
65 ok( hr == E_INVALIDARG, "expected E_INVALIDARG got %08lx\n", hr );
66
67 name = (IAssemblyName *)0xdeadbeef;
69 ok( hr == E_INVALIDARG, "expected E_INVALIDARG got %08lx\n", hr );
70 ok( !name, "expected NULL got %p\n", name );
71
72 name = (IAssemblyName *)0xdeadbeef;
74 ok( hr == E_INVALIDARG, "expected E_INVALIDARG got %08lx\n", hr );
75 ok( !name, "expected NULL got %p\n", name );
76
77 name = (IAssemblyName *)0xdeadbeef;
79 ok( hr == E_INVALIDARG, "expected E_INVALIDARG got %08lx\n", hr );
80 ok( !name, "expected NULL got %p\n", name );
81
82 name = (IAssemblyName *)0xdeadbeef;
84 ok( hr == E_INVALIDARG, "expected E_INVALIDARG got %08lx\n", hr );
85 ok( !name, "expected NULL got %p\n", name );
86
87 name = (IAssemblyName *)0xdeadbeef;
89 ok( hr == E_INVALIDARG, "expected E_INVALIDARG got %08lx\n", hr );
90 ok( !name, "expected NULL got %p\n", name );
91
92 hr = CreateAssemblyNameObject( NULL, L"wine", 0, NULL );
93 ok( hr == E_INVALIDARG, "expected E_INVALIDARG got %08lx\n", hr );
94
95 name = (IAssemblyName *)0xdeadbeef;
97 ok( hr == E_INVALIDARG, "expected E_INVALIDARG got %08lx\n", hr );
98 ok( !name, "expected NULL got %p\n", name );
99
100 name = (IAssemblyName *)0xdeadbeef;
102 ok( hr == E_INVALIDARG, "expected E_INVALIDARG got %08lx\n", hr );
103 ok( !name, "expected NULL got %p\n", name );
104
105 name = (IAssemblyName *)0xdeadbeef;
107 ok( hr == E_INVALIDARG, "expected E_INVALIDARG got %08lx\n", hr );
108 ok( !name, "expected NULL got %p\n", name );
109
110 name = (IAssemblyName *)0xdeadbeef;
112 ok( hr == E_INVALIDARG, "expected E_INVALIDARG got %08lx\n", hr );
113 ok( !name, "expected NULL got %p\n", name );
114
115 name = (IAssemblyName *)0xdeadbeef;
116 hr = CreateAssemblyNameObject( &name, L"wine", 0, NULL );
117 ok( hr == E_INVALIDARG, "expected E_INVALIDARG got %08lx\n", hr );
118
120 ok( hr == E_INVALIDARG, "expected E_INVALIDARG got %08lx\n", hr );
121
122 name = (IAssemblyName *)0xdeadbeef;
124 ok( hr == E_INVALIDARG, "expected E_INVALIDARG got %08lx\n", hr );
125 ok( !name, "expected NULL got %p\n", name );
126
127 name = (IAssemblyName *)0xdeadbeef;
129 ok( hr == E_INVALIDARG, "expected E_INVALIDARG got %08lx\n", hr );
130 ok( !name, "expected NULL got %p\n", name );
131
132 name = (IAssemblyName *)0xdeadbeef;
134 ok( hr == E_INVALIDARG, "expected E_INVALIDARG got %08lx\n", hr );
135 ok( !name, "expected NULL got %p\n", name );
136
137 name = (IAssemblyName *)0xdeadbeef;
139 ok( hr == E_INVALIDARG, "expected E_INVALIDARG got %08lx\n", hr );
140 ok( !name, "expected NULL got %p\n", name );
141
142 name = (IAssemblyName *)0xdeadbeef;
144 ok( hr == E_INVALIDARG, "expected E_INVALIDARG got %08lx\n", hr );
145 ok( !name, "expected NULL got %p\n", name );
146
147 name = NULL;
148 hr = CreateAssemblyNameObject( &name, L"wine,version=\"1.2.3.4\"", CANOF_PARSE_DISPLAY_NAME, NULL );
149 ok( hr == S_OK, "expected S_OK got %08lx\n", hr );
150 ok( name != NULL, "expected non-NULL name\n" );
151 IAssemblyName_Release( name );
152
153 name = (IAssemblyName *)0xdeadbeef;
154 hr = CreateAssemblyNameObject( &name, L"wine,version=1.2.3.4", CANOF_PARSE_DISPLAY_NAME, NULL );
155 ok( hr == E_INVALIDARG, "expected E_INVALIDARG got %08lx\n", hr );
156 ok( !name, "expected NULL got %p\n", name );
157
158 name = (IAssemblyName *)0xdeadbeef;
159 hr = CreateAssemblyNameObject( &name, L"wine, version=\"1.2.3.4\"", CANOF_PARSE_DISPLAY_NAME, NULL );
161 "expected ERROR_SXS_INVALID_ASSEMBLY_IDENTITY_ATTRIBUTE_NAME got %08lx\n", hr );
162 ok( !name, "expected NULL got %p\n", name );
163
164 name = (IAssemblyName *)0xdeadbeef;
165 hr = CreateAssemblyNameObject( &name, L"wine,version =\"1.2.3.4\"", CANOF_PARSE_DISPLAY_NAME, NULL );
167 "expected ERROR_SXS_INVALID_ASSEMBLY_IDENTITY_ATTRIBUTE_NAME got %08lx\n", hr );
168 ok( !name, "expected NULL got %p\n", name );
169
170 name = (IAssemblyName *)0xdeadbeef;
171 hr = CreateAssemblyNameObject( &name, L"wine,version= \"1.2.3.4\"", CANOF_PARSE_DISPLAY_NAME, NULL );
172 ok( hr == E_INVALIDARG, "expected E_INVALIDARG got %08lx\n", hr );
173 ok( !name, "expected NULL got %p\n", name );
174
175 name = NULL;
176 hr = CreateAssemblyNameObject( &name, L"wine ,version=\"1.2.3.4\"", CANOF_PARSE_DISPLAY_NAME, NULL );
177 ok( hr == S_OK, "expected S_OK got %08lx\n", hr );
178 ok( name != NULL, "expected non-NULL name\n" );
179 IAssemblyName_Release( name );
180
181 name = (IAssemblyName *)0xdeadbeef;
183 ok( hr == E_INVALIDARG, "expected E_INVALIDARG got %08lx\n", hr );
184 ok( !name, "expected NULL got %p\n", name );
185
186 name = NULL;
188 ok( hr == S_OK, "expected S_OK got %08lx\n", hr );
189 ok( name != NULL, "expected non-NULL name\n" );
190 IAssemblyName_Release( name );
191
192 name = (IAssemblyName *)0xdeadbeef;
194 ok( hr == E_INVALIDARG, "expected E_INVALIDARG got %08lx\n", hr );
195 ok( !name, "expected NULL got %p\n", name );
196}
197
199{
201}
#define ok(value,...)
Definition: atltest.h:57
#define START_TEST(x)
Definition: atltest.h:75
#define E_INVALIDARG
Definition: ddrawi.h:101
HRESULT hr
Definition: delayimp.cpp:582
#define NULL
Definition: types.h:112
HRESULT WINAPI CreateAssemblyNameObject(LPASSEMBLYNAME *obj, LPCWSTR assembly, DWORD flags, LPVOID reserved)
Definition: name.c:360
#define L(x)
Definition: resources.c:13
static const WCHAR emptyW[]
Definition: navigate.c:40
#define S_OK
Definition: intsafe.h:52
static void test_CreateAssemblyNameObject(void)
Definition: name.c:29
short WCHAR
Definition: pedump.c:58
Definition: name.c:39
static HRESULT HRESULT_FROM_WIN32(unsigned int x)
Definition: winerror.h:210
#define ERROR_SXS_INVALID_ASSEMBLY_IDENTITY_ATTRIBUTE_NAME
Definition: winerror.h:3174
@ CANOF_PARSE_DISPLAY_NAME
Definition: winsxs.idl:193
@ CANOF_SET_DEFAULT_VALUES
Definition: winsxs.idl:194