From: Mohamad Al-Jaf mohamadaljaf@gmail.com
--- .../tests/hostname.c | 27 ++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-)
diff --git a/dlls/windows.networking.hostname/tests/hostname.c b/dlls/windows.networking.hostname/tests/hostname.c index edb20f1fa44..0d9ea85bdef 100644 --- a/dlls/windows.networking.hostname/tests/hostname.c +++ b/dlls/windows.networking.hostname/tests/hostname.c @@ -48,10 +48,13 @@ static void check_interface_( unsigned int line, void *obj, const IID *iid ) static void test_HostnameStatics(void) { static const WCHAR *hostname_statics_name = L"Windows.Networking.HostName"; + static const WCHAR *ip = L"192.168.0.0"; IHostNameFactory *hostnamefactory; IActivationFactory *factory; - HSTRING str; + HSTRING str, rawname; + IHostName *hostname; HRESULT hr; + INT32 res; LONG ref;
hr = WindowsCreateString( hostname_statics_name, wcslen( hostname_statics_name ), &str ); @@ -72,7 +75,29 @@ static void test_HostnameStatics(void)
hr = IActivationFactory_QueryInterface( factory, &IID_IHostNameFactory, (void **)&hostnamefactory ); ok( hr == S_OK, "got hr %#lx.\n", hr ); + hr = WindowsCreateString( ip, wcslen( ip ), &str ); + ok( hr == S_OK, "got hr %#lx.\n", hr ); + + hr = IHostNameFactory_CreateHostName( hostnamefactory, NULL, &hostname ); + todo_wine ok( hr == E_INVALIDARG, "got hr %#lx.\n", hr ); + hr = IHostNameFactory_CreateHostName( hostnamefactory, str, NULL ); + todo_wine ok( hr == E_POINTER, "got hr %#lx.\n", hr ); + hr = IHostNameFactory_CreateHostName( hostnamefactory, NULL, NULL ); + todo_wine ok( hr == E_POINTER, "got hr %#lx.\n", hr ); + hr = IHostNameFactory_CreateHostName( hostnamefactory, str, &hostname ); + todo_wine ok( hr == S_OK, "got hr %#lx.\n", hr ); + todo_wine ok( hostname != NULL, "got NULL hostname %p.\n", hostname ); + + hr = IHostName_get_RawName( hostname, NULL ); + todo_wine ok( hr == E_INVALIDARG, "got hr %#lx.\n", hr ); + hr = IHostName_get_RawName( hostname, &rawname ); + todo_wine ok( hr == S_OK, "got hr %#lx.\n", hr ); + hr = WindowsCompareStringOrdinal( str, rawname, &res ); + todo_wine ok( hr == S_OK, "got hr %#lx.\n", hr ); + todo_wine ok( !res, "got unexpected string %s.\n", debugstr_hstring(rawname) );
+ WindowsDeleteString( str ); + WindowsDeleteString( rawname ); ref = IHostNameFactory_Release( hostnamefactory ); ok( ref == 2, "got ref %ld.\n", ref ); ref = IActivationFactory_Release( factory );