urlmon: Add test for IsValidURL [try 2]

Vladimir Pankratov scriptkid at mail.ru
Tue Sep 1 12:20:17 CDT 2009


Hello all.

What do you think about this? What's wrong in this patch? Any comments?

Vladimir Pankratov wrote:
> Hello all.
> 
> Added test for IsValidURL.
> 
> Now test shows error codes and tests exact code.
> 
> Thanks Jacek.
> 
> changed files:
> dlls/urlmon/tests/misc.c
> 
> Thanks.
> 
> 
> 
> 
> ------------------------------------------------------------------------
> 
> diff -u -r a/dlls/urlmon/tests/misc.c b/dlls/urlmon/tests/misc.c
> --- a/dlls/urlmon/tests/misc.c	2009-08-21 23:34:16.000000000 +0500
> +++ b/dlls/urlmon/tests/misc.c	2009-09-01 18:53:08.000000000 +0500
> @@ -1326,6 +1326,44 @@
>      IBindCtx_Release(bctx);
>  }
>  
> +static void test_IsValidURL(void)
> +{
> +    HRESULT hr;
> +    int i;
> +    static const WCHAR good_urls[][100] = {
> +        {'f','i','l','e',':','/','/','c',':','\\','b','o','o','t','.','i','n','i',0},
> +        {'h','t','t','p',':','/','/','w','w','w','.','w','i','n','e','h','q','.','o','r','g',0},
> +        {'h','t','t','p','s',':','/','/','s','e','c','u','r','e','.','h','o','s','t','.','d','o','m',0},
> +        {'f','t','p',':','/','/','s','o','u','r','c','e','f','o','r','g','e','.','o','r','g',0},
> +        {'c',':','\\','b','o','o','t','.','i','n','i',0},
> +        {'m','k',0},
> +        {'h','t','t','p','s',0}
> +    };
> +    static const WCHAR bad_urls[][100] = {
> +        {'w','i','n','e','h','q','.','o','r','g',0},
> +        {'l','o','c','a','l','h','o','s','t',0},
> +        {'t','e','s','t',0},
> +        {'1','2','7','.','0','.','0','.','1',0},
> +        {'b','o','o','t','.','i','n','i',0}
> +    };
> +
> +    hr = IsValidURL(NULL, 0, 10);
> +
> +    ok(hr == E_INVALIDARG, "IsValidURL should fail, expected E_INVALIDARG, got %08x.\n", hr);
> +
> +    for(i = 0; i < sizeof(good_urls)/sizeof(good_urls[0]); i++)
> +    {
> +        hr = IsValidURL(NULL, good_urls[i], 0);
> +        ok(hr == S_OK, "URL %s must be valid, expected S_OK, got %08x.\n", wine_dbgstr_w(good_urls[i]), hr);
> +    }
> +
> +    for(i = 0; i < sizeof(bad_urls)/sizeof(bad_urls[0]); i++)
> +    {
> +        hr = IsValidURL(NULL, bad_urls[i], 0);
> +        ok(hr == S_FALSE, "URL %s must be invalid, expected S_FALSE, got %08x.\n", wine_dbgstr_w(bad_urls[i]), hr);
> +    }
> +}
> +
>  START_TEST(misc)
>  {
>      OleInitialize(NULL);
> @@ -1345,6 +1383,7 @@
>      test_UrlMkGetSessionOption();
>      test_user_agent();
>      test_MkParseDisplayNameEx();
> +    todo_wine test_IsValidURL();
>  
>      OleUninitialize();
>  }




More information about the wine-devel mailing list