Skip to content

Commit 7263019

Browse files
committed
Add socket_atmark unit test
1 parent 3660bc3 commit 7263019

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed

ext/sockets/tests/socket_atmark.phpt

+35
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
--TEST--
2+
ext/sockets - socket_atmark
3+
--EXTENSIONS--
4+
sockets
5+
--SKIPIF--
6+
<?php
7+
8+
if (getenv("SKIP_ONLINE_TESTS")) {
9+
die("skip test requiring internet connection");
10+
}
11+
?>
12+
--FILE--
13+
<?php
14+
$s_c = socket_create(AF_INET, SOCK_STREAM, SOL_TCP) or die("socket_create failed");
15+
$s_bind = socket_bind($s_c, '0.0.0.0') or die("socket_bind failed");
16+
$s_conn = socket_connect($s_c, 'www.php.net', 80) or die("socket_connect failed");
17+
$string = "no chance of socket_atmark returning true";
18+
$len = strlen($string);
19+
$s_w = socket_send($s_c, $string, $len, 0);
20+
if ($s_w != $len)
21+
die("socket_send failed");
22+
if (socket_atmark($s_c) === FALSE) {
23+
if (socket_recv($s_c, $buf, $len, 0) != $len)
24+
die("socket_recv failed");
25+
echo "not OOB";
26+
} else {
27+
$buf = "";
28+
if (socket_recv($s_c, $buf, 1, MSG_OOB) === FALSE)
29+
die("socket_recv failed");
30+
echo "OOB";
31+
}
32+
socket_close($s_c);
33+
?>
34+
--EXPECT--
35+
not OOB

0 commit comments

Comments
 (0)