From: Björn Lindqvist Date: Thu, 27 Mar 2014 17:47:18 +0000 (+0100) Subject: windows.winsock: fix the definition of SOCKET_ERROR and unit tests that X-Git-Tag: 0.97~705 X-Git-Url: https://gitweb.factorcode.org/gitweb.cgi?p=factor.git;a=commitdiff_plain;h=4676ff921a26a34bc46ab98f3068e2d5472a1c84 windows.winsock: fix the definition of SOCKET_ERROR and unit tests that verifies its correctness --- diff --git a/basis/windows/winsock/winsock-tests.factor b/basis/windows/winsock/winsock-tests.factor new file mode 100644 index 0000000000..aff856cdf5 --- /dev/null +++ b/basis/windows/winsock/winsock-tests.factor @@ -0,0 +1,19 @@ +USING: kernel tools.test windows.winsock ; +IN: windows.winsock.tests + +: normal-socket ( -- socket ) + AF_INET SOCK_STREAM IPPROTO_TCP socket ; + +{ t f } [ + 98 97 96 socket normal-socket [ INVALID_SOCKET = ] bi@ +] unit-test + +{ 0 } [ normal-socket closesocket ] unit-test + +! Generate lots of socket errors +{ t t t } [ + normal-socket 99 98 "bad bad!" 3 setsockopt + f closesocket + normal-socket "hello" 5 0 send + [ SOCKET_ERROR = ] tri@ +] unit-test diff --git a/basis/windows/winsock/winsock.factor b/basis/windows/winsock/winsock.factor index 3336c52743..c64e2493fd 100644 --- a/basis/windows/winsock/winsock.factor +++ b/basis/windows/winsock/winsock.factor @@ -102,7 +102,7 @@ CONSTANT: INADDR_ANY 0 : INVALID_SOCKET ( -- n ) -1 ; inline -: SOCKET_ERROR ( -- n ) -1 ; inline +: SOCKET_ERROR ( -- n ) -1 ; inline CONSTANT: SD_RECV 0 CONSTANT: SD_SEND 1