Rob Shearman : wininet: Add tests for InternetTimeFromSystemTimeW with insufficient buffer.

Alexandre Julliard julliard at winehq.org
Thu Oct 2 11:37:21 CDT 2008


Module: wine
Branch: master
Commit: ef0e3792bb10410bce88b7876b2d8014bf23f661
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=ef0e3792bb10410bce88b7876b2d8014bf23f661

Author: Rob Shearman <robertshearman at gmail.com>
Date:   Thu Oct  2 11:38:30 2008 +0100

wininet: Add tests for InternetTimeFromSystemTimeW with insufficient buffer.

---

 dlls/wininet/tests/http.c |   21 +++++++++++++++++++++
 1 files changed, 21 insertions(+), 0 deletions(-)

diff --git a/dlls/wininet/tests/http.c b/dlls/wininet/tests/http.c
index 1c52f27..db4f075 100644
--- a/dlls/wininet/tests/http.c
+++ b/dlls/wininet/tests/http.c
@@ -789,12 +789,23 @@ static void InternetTimeFromSystemTimeA_test(void)
     static const SYSTEMTIME time = { 2005, 1, 5, 7, 12, 6, 35, 0 };
     char string[INTERNET_RFC1123_BUFSIZE];
     static const char expect[] = "Fri, 07 Jan 2005 12:06:35 GMT";
+    DWORD error;
 
     ret = pInternetTimeFromSystemTimeA( &time, INTERNET_RFC1123_FORMAT, string, sizeof(string) );
     ok( ret, "InternetTimeFromSystemTimeA failed (%u)\n", GetLastError() );
 
     ok( !memcmp( string, expect, sizeof(expect) ),
         "InternetTimeFromSystemTimeA failed (%u)\n", GetLastError() );
+
+    SetLastError(0xdeadbeef);
+    ret = pInternetTimeFromSystemTimeA( &time, INTERNET_RFC1123_FORMAT, string, 0 );
+    error = GetLastError();
+    todo_wine {
+    ok( !ret, "InternetTimeFromSystemTimeA should have returned FALSE\n" );
+    ok( error == ERROR_INSUFFICIENT_BUFFER,
+        "InternetTimeFromSystemTimeA failed with ERROR_INSUFFICIENT_BUFFER instead of %u\n",
+        error );
+    }
 }
 
 static void InternetTimeFromSystemTimeW_test(void)
@@ -804,12 +815,22 @@ static void InternetTimeFromSystemTimeW_test(void)
     WCHAR string[INTERNET_RFC1123_BUFSIZE + 1];
     static const WCHAR expect[] = { 'F','r','i',',',' ','0','7',' ','J','a','n',' ','2','0','0','5',' ',
                                     '1','2',':','0','6',':','3','5',' ','G','M','T',0 };
+    DWORD error;
 
     ret = pInternetTimeFromSystemTimeW( &time, INTERNET_RFC1123_FORMAT, string, sizeof(string) );
     ok( ret, "InternetTimeFromSystemTimeW failed (%u)\n", GetLastError() );
 
     ok( !memcmp( string, expect, sizeof(expect) ),
         "InternetTimeFromSystemTimeW failed (%u)\n", GetLastError() );
+
+    SetLastError(0xdeadbeef);
+    ret = pInternetTimeFromSystemTimeW( &time, INTERNET_RFC1123_FORMAT, string, sizeof(string)/sizeof(string[0]) );
+    error = GetLastError();
+    ok( !ret, "InternetTimeFromSystemTimeW should have returned FALSE\n" );
+    todo_wine
+    ok( error == ERROR_INSUFFICIENT_BUFFER,
+        "InternetTimeFromSystemTimeW failed with ERROR_INSUFFICIENT_BUFFER instead of %u\n",
+        error );
 }
 
 static void InternetTimeToSystemTimeA_test(void)




More information about the wine-cvs mailing list