]> gitweb.factorcode.org Git - factor.git/blob - basis/io/sockets/windows/windows-tests.factor
io.sockets.windows: wrap ioctlsocket and related constants to enable
[factor.git] / basis / io / sockets / windows / windows-tests.factor
1 USING: accessors continuations io.sockets io.sockets.windows kernel sequences tools.test
2 urls windows.winsock ;
3 IN: io.sockets.windows.tests
4
5 : google-socket ( -- socket )
6     URL" http://www.google.com" url-addr resolve-host first
7     SOCK_STREAM open-socket ;
8
9 { } [
10     google-socket
11     { FIONBIO FIONREAD } [
12         google-socket swap execute( -- x )
13         [ 1 set-ioctl-socket ] [ 0 set-ioctl-socket ] 2bi
14     ] each drop
15 ] unit-test
16
17 { t } [
18     [ google-socket 1337 -8 set-ioctl-socket ]
19     [ [ winsock-exception? ] [ n>> 10045 = ] bi and ] recover
20 ] unit-test