Arquivos
hhvm/hphp/test/quick/debugger/flow2.php.expectf
T
Eric Caruso 958df942ce replicating readline control characters in test output
Readline is awful and dumps characters in the output.
This was causing tests to act weird on another build.
2013-06-06 12:00:07 -07:00

206 linhas
4.0 KiB
Plaintext

Welcome to HipHop Debugger!
Type "help" or "?" for a complete list of commands.
Program %s/flow2.php loaded. Type '[r]un' or '[c]ontinue' to go.
%Shphpd> run
flow2.php done
Program %s/flow2.php exited normally.
hphpd> break test()
Breakpoint 1 set upon entering test()
hphpd> @test(1)
Breakpoint 1 reached at test() on line 53 of %s/flow2.php
52 function test($a) {
53 foo($a);
54 }
hphpd> step
Break at foo() on line 36 of %s/flow2.php
35 function foo($a) {
36 $c = new C1(5);
37
hphpd> next
Constructor
Break at foo() on line 38 of %s/flow2.php
37
38 $i = 0;
39 foreach (genFoo($a) as $x) {
hphpd> next
Break at foo() on line 39 of %s/flow2.php
38 $i = 0;
39 foreach (genFoo($a) as $x) {
40 $i++;
hphpd> next
Break at foo() on line 40 of %s/flow2.php
39 foreach (genFoo($a) as $x) {
40 $i++;
41 var_dump($x);
hphpd> next
Break at foo() on line 41 of %s/flow2.php
40 $i++;
41 var_dump($x);
42 }
hphpd> next
Break at foo() on line 40 of %s/flow2.php
39 foreach (genFoo($a) as $x) {
40 $i++;
41 var_dump($x);
hphpd> next
Break at foo() on line 41 of %s/flow2.php
40 $i++;
41 var_dump($x);
42 }
hphpd> next
Finished in genFoo
Break at foo() on line 44 of %s/flow2.php
43
44 $c = new C1(6); // Runs a destructor
45 $d = $c;
hphpd> next
Constructor
Destructor
Break at foo() on line 45 of %s/flow2.php
44 $c = new C1(6); // Runs a destructor
45 $d = $c;
46 $e = new C1(7);
hphpd> next
Break at foo() on line 46 of %s/flow2.php
45 $d = $c;
46 $e = new C1(7);
47 $c = null;
hphpd> next
Constructor
Break at foo() on line 47 of %s/flow2.php
46 $e = new C1(7);
47 $c = null;
48
hphpd> next
Break at foo() on line 49 of %s/flow2.php
48
49 var_dump($d);
50 } // Ret runs two destructors
hphpd> next
Destructor
Destructor
Break at test() on line 53 of %s/flow2.php
52 function test($a) {
53 foo($a);
54 }
hphpd> break clear all
All breakpoints are cleared.
hphpd> continue
int(8)
int(1)
object(C1)#2 (1) {
["x":"C1":private]=>
int(0)
}
hphpd> break flow2.php:10
Breakpoint 1 set on line 10 of flow2.php
hphpd> break flow2.php:12
Breakpoint 2 set on line 12 of flow2.php
hphpd> @test(2)
Constructor
Breakpoint 1 reached at %s() on line 10 of %s/flow2.php
9 function genFoo($a) {
10 $a = bar($a);
11 $z = yield $a+5;
hphpd> out
Break at foo() on line 40 of %s/flow2.php
39 foreach (genFoo($a) as $x) {
40 $i++;
41 var_dump($x);
hphpd> continue
Breakpoint 2 reached at %s() on line 12 of %s/flow2.php
11 $z = yield $a+5;
12 yield $z+1;
13 error_log('Finished in genFoo');
hphpd> out
Break at foo() on line 40 of %s/flow2.php
39 foreach (genFoo($a) as $x) {
40 $i++;
41 var_dump($x);
hphpd> break clear all
All breakpoints are cleared.
hphpd> continue
Finished in genFoo
Constructor
Destructor
Constructor
Destructor
Destructor
int(9)
int(1)
object(C1)#3 (1) {
["x":"C1":private]=>
int(0)
}
hphpd> break flow2.php:26
Breakpoint 2 set on line 26 of flow2.php
hphpd> @test(3)
Constructor
Finished in genFoo
Constructor
Breakpoint 2 reached at C1::__destruct() on line 26 of %s/flow2.php
25 public function __destruct() {
26 error_log('Destructor');
27 }
hphpd> out
Destructor
Break at foo() on line 44 of %s/flow2.php
43
44 $c = new C1(6); // Runs a destructor
45 $d = $c;
hphpd> continue
Constructor
Breakpoint 2 reached at C1::__destruct() on line 26 of %s/flow2.php
25 public function __destruct() {
26 error_log('Destructor');
27 }
hphpd> out
Destructor
Breakpoint 2 reached at C1::__destruct() on line 26 of %s/flow2.php
25 public function __destruct() {
26 error_log('Destructor');
27 }
hphpd> out
Destructor
Break at test() on line 53 of %s/flow2.php
52 function test($a) {
53 foo($a);
54 }
hphpd> break clear all
All breakpoints are cleared.
hphpd> continue
int(10)
int(1)
object(C1)#4 (1) {
["x":"C1":private]=>
int(0)
}
hphpd> quit