#if wxUSE_SOCKETS
#include "wx/socket.h"
+#include "wx/url.h"
+#include "wx/sstream.h"
#include "wx/evtloop.h"
#include <memory>
CPPUNIT_TEST( ReadNormal ); \
CPPUNIT_TEST( ReadBlock ); \
CPPUNIT_TEST( ReadNowait ); \
- CPPUNIT_TEST( ReadWaitall )
+ CPPUNIT_TEST( ReadWaitall ); \
+ CPPUNIT_TEST( UrlTest )
CPPUNIT_TEST_SUITE( SocketTestCase );
ALL_SOCKET_TESTS();
void ReadNowait();
void ReadWaitall();
+ void UrlTest();
+
static bool ms_useLoop;
DECLARE_NO_COPY_CLASS(SocketTestCase)
CPPUNIT_ASSERT_EQUAL( WXSIZEOF(buf), sock->LastCount() );
}
+void SocketTestCase::UrlTest()
+{
+ if ( gs_serverHost.empty() )
+ return;
+
+ SocketTestEventLoop loop(ms_useLoop);
+
+ wxURL url("http://" + gs_serverHost);
+
+ const std::auto_ptr<wxInputStream> in(url.GetInputStream());
+ CPPUNIT_ASSERT( in.get() );
+
+ wxStringOutputStream out;
+ CPPUNIT_ASSERT_EQUAL( wxSTREAM_EOF, in->Read(out).GetLastError() );
+}
+
#endif // wxUSE_SOCKETS