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();
> }