From: Vadim Zeitlin Date: Tue, 7 Jun 2005 12:19:28 +0000 (+0000) Subject: added tests of more URLs in URITestCase::URLCompat() X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/24fec90857ffef5f5c803754699fbcb5b62cad9a?ds=inline added tests of more URLs in URITestCase::URLCompat() git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@34568 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/tests/uris/uris.cpp b/tests/uris/uris.cpp index 4067550da7..c4aa89dc5c 100644 --- a/tests/uris/uris.cpp +++ b/tests/uris/uris.cpp @@ -299,9 +299,12 @@ void URITestCase::Unescaping() CPPUNIT_ASSERT(works2.IsSameAs(broken2)); } - #if TEST_URL +const wxChar* pszProblemUrls[] = { wxT("http://www.csdn.net"), + wxT("http://www.163.com"), + wxT("http://www.sina.com.cn") }; + #include "wx/url.h" #include "wx/file.h" @@ -341,6 +344,32 @@ void URITestCase::URLCompat() CPPUNIT_ASSERT( test.BuildURI() == wxT("file:%22myf%22ile.txt") ); CPPUNIT_ASSERT( test.GetScheme() == wxT("file") ); CPPUNIT_ASSERT( test.GetPath() == wxT("%22myf%22ile.txt") ); + + // Test problem urls (reported not to work some time ago by a user...) + for ( size_t i = 0; i < WXSIZEOF(pszProblemUrls); ++i ) + { + wxURL urlProblem(pszProblemUrls[i]); + CPPUNIT_ASSERT(urlProblem.GetError() == wxURL_NOERR); + + wxInputStream* is = urlProblem.GetInputStream(); + CPPUNIT_ASSERT(is != NULL); + + wxFile fOut(_T("test.html"), wxFile::write); + wxASSERT(fOut.IsOpened()); + + char buf[1001]; + for( ;; ) + { + is->Read(buf, 1000); + size_t n = is->LastRead(); + if ( n == 0 ) + break; + buf[n] = 0; + fOut.Write(buf, n); + } + + delete is; + } } #if wxUSE_PROTOCOL_HTTP