File: client002.phpt

package info (click to toggle)
php-pecl-http 4.2.6-3
  • links: PTS, VCS
  • area: main
  • in suites: sid, trixie
  • size: 2,240 kB
  • sloc: ansic: 20,086; php: 682; xml: 394; pascal: 161; makefile: 3
file content (43 lines) | stat: -rw-r--r-- 902 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
--TEST--
client observer
--SKIPIF--
<?php
include "skipif.inc";
skip_client_test();
?>
--FILE--
<?php

include "helper/server.inc";

echo "Test\n";

class Observer implements SplObserver
{
	#[ReturnTypeWillChange]
	function update(SplSubject $client, ?http\Client\Request $request = null, ?StdClass $progress = null) {
		echo "P";
		/* fence against buggy infof() calls in some curl versions */
		$compare = $client->getProgressInfo($request);
		if ($progress->info !== "prepare" && $compare && $compare != $progress) {
			var_dump($progress, $compare);
		}
	}
}

server("proxy.inc", function($port, $stdin, $stdout, $stderr) {
	foreach (http\Client::getAvailableDrivers() as $driver) {
		$client = new http\Client($driver);
		$client->attach(new Observer);
		$client->enqueue(new http\Client\Request("GET", "http://localhost:$port/"));
		$client->send();
	}
});

?>

Done
--EXPECTREGEX--
Test
P+
Done