Arquivos
hhvm/hphp/test/quick/debugger/flow.php.expectf
T
Mike Magruder 0d14e585fd Change TERM when running tests with input
In general, a test which gets its input piped in is not really interacting with a terminal like it normally would. Thus, letting it think it has the same terminal as the environment is incorrect. More specifically, hphpd uses Readline, which inspects the TERM env var and based on that and a stunning array of other options will attempt to initialize the terminal with extra control characters on first use. It would be tough to try to control for all of the different options and ensure they're all the same, and honestly testing Readline is not the objective of our tests anyway. Thus, I'm forcing TERM to 'dumb' when a test has input to ensure a) a simple terminal which requires no control characters and b) consistency no matter what environment is present when the tests are run.
2013-07-02 11:46:21 -07:00

297 linhas
5.3 KiB
Plaintext

Program %s/flow.php loaded. Type '[r]un' or '[c]ontinue' to go.
break cls::pub()
Breakpoint 1 set upon entering cls::pub()
But wont break until class cls has been loaded.
run
flow_t.php loaded
Program %s/flow.php exited normally.
@test(1)
test 1
Breakpoint 1 reached at cls::pub() on line 12 of %s/flow.php
11 public function pub($x) {
12 error_log("in pub:".$x);
13 $this->pri($x);
next
in pub:1
Break at cls::pub() on line 13 of %s/flow.php
12 error_log("in pub:".$x);
13 $this->pri($x);
14 error_log("out pub:".$x);
variable
$x = 1
next
in pri:1
foo:1
out pri:1
Break at cls::pub() on line 14 of %s/flow.php
13 $this->pri($x);
14 error_log("out pub:".$x);
15 }
next
out pub:1
Break at test() on line 62 of %s/flow.php
61 $obj = new cls();
62 $obj->pub($x);
63 error_log("test done ".$x);
next
Break at test() on line 63 of %s/flow.php
62 $obj->pub($x);
63 error_log("test done ".$x);
64 }
break clear all
All breakpoints are cleared.
continue
test done 1
break flow.php:18
Breakpoint 1 set on line 18 of flow.php
@test(2)
test 2
in pub:2
in pri:2
Breakpoint 1 reached at cls::pri() on line 18 of %s/flow.php
17 error_log("in pri:".$x);
18 $y = $x + 3; $z = $x * 5;
19 foo($y, $z);
step
Break at cls::pri() on line 19 of %s/flow.php
18 $y = $x + 3; $z = $x * 5;
19 foo($y, $z);
20 if ($x == 3) {
variable
$x = 2
$y = 5
$z = 10
step
Break at foo() on line 6 of %s/flow.php
5 function foo($a, $b) {
6 $c = $b - $a;
7 error_log("foo:".$c);
variable
$a = 5
$b = 10
step
Break at foo() on line 7 of %s/flow.php
6 $c = $b - $a;
7 error_log("foo:".$c);
8 }
variable
$a = 5
$b = 10
$c = 5
next
foo:5
Break at cls::pri() on line 19 of %s/flow.php
18 $y = $x + 3; $z = $x * 5;
19 foo($y, $z);
20 if ($x == 3) {
step
Break at cls::pri() on line 20 of %s/flow.php
19 foo($y, $z);
20 if ($x == 3) {
21 hphpd_break();
break clear all
All breakpoints are cleared.
continue
out pri:2
out pub:2
test done 2
break flow.php:6
Breakpoint 1 set on line 6 of flow.php
@test(3)
test 3
in pub:3
in pri:3
Breakpoint 1 reached at foo() on line 6 of %s/flow.php
5 function foo($a, $b) {
6 $c = $b - $a;
7 error_log("foo:".$c);
continue
foo:9
Break at cls::pri() on line 21 of %s/flow.php
20 if ($x == 3) {
21 hphpd_break();
22 }
break clear all
All breakpoints are cleared.
continue
out pri:3
out pub:3
test done 3
break flow.php:7
Breakpoint 1 set on line 7 of flow.php
@test(4)
test 4
in pub:4
in pri:4
Breakpoint 1 reached at foo() on line 7 of %s/flow.php
6 $c = $b - $a;
7 error_log("foo:".$c);
8 }
break clear all
All breakpoints are cleared.
out
foo:13
Break at cls::pri() on line 19 of %s/flow.php
18 $y = $x + 3; $z = $x * 5;
19 foo($y, $z);
20 if ($x == 3) {
step
Break at cls::pri() on line 20 of %s/flow.php
19 foo($y, $z);
20 if ($x == 3) {
21 hphpd_break();
out
out pri:4
Break at cls::pub() on line 13 of %s/flow.php
12 error_log("in pub:".$x);
13 $this->pri($x);
14 error_log("out pub:".$x);
next
Break at cls::pub() on line 14 of %s/flow.php
13 $this->pri($x);
14 error_log("out pub:".$x);
15 }
out
out pub:4
Break at test() on line 62 of %s/flow.php
61 $obj = new cls();
62 $obj->pub($x);
63 error_log("test done ".$x);
continue
test done 4
break flow.php:46
Breakpoint 1 set on line 46 of flow.php
test(5)
test 5
in pub:5
in pri:5
foo:17
Breakpoint 1 reached at thrower() on line 46 of %s/flow.php
45 function thrower($a) {
46 throw new Exception();
47 }
break clear all
All breakpoints are cleared.
next
Break at baz() on line 50 of %s/flow.php
49 function baz($a) {
50 try {
51 $a = thrower($a);
52 } catch (Exception $e) {
53 $a = 0;
54 }
55
next
Break at baz() on line 53 of %s/flow.php
52 } catch (Exception $e) {
53 $a = 0;
54 }
out
Break at cls::pri() on line 27 of %s/flow.php
26 if ($x == 5 || $x == 6) {
27 baz($x);
28 }
continue
out pri:5
out pub:5
test done 5
break flow.php:46
Breakpoint 1 set on line 46 of flow.php
test(6)
test 6
in pub:6
in pri:6
foo:21
Breakpoint 1 reached at thrower() on line 46 of %s/flow.php
45 function thrower($a) {
46 throw new Exception();
47 }
break clear all
All breakpoints are cleared.
out
Break at baz() on line 50 of %s/flow.php
49 function baz($a) {
50 try {
51 $a = thrower($a);
52 } catch (Exception $e) {
53 $a = 0;
54 }
55
next
Break at baz() on line 53 of %s/flow.php
52 } catch (Exception $e) {
53 $a = 0;
54 }
out
Break at cls::pri() on line 27 of %s/flow.php
26 if ($x == 5 || $x == 6) {
27 baz($x);
28 }
continue
out pri:6
out pub:6
test done 6
break flow.php:7
Breakpoint 1 set on line 7 of flow.php
@test(7)
test 7
in pub:7
in pri:7
Breakpoint 1 reached at foo() on line 7 of %s/flow.php
6 $c = $b - $a;
7 error_log("foo:".$c);
8 }
break clear all
All breakpoints are cleared.
break flow.php:62
Breakpoint 1 set on line 62 of flow.php
continue
foo:25
out pri:7
out pub:7
Breakpoint 1 reached at test() on line 62 of %s/flow.php
61 $obj = new cls();
62 $obj->pub($x);
63 error_log("test done ".$x);
break clear all
All breakpoints are cleared.
continue
test done 7
quit