]>
Commit | Line | Data |
---|---|---|
e8689856 DS |
1 | set test "java" |
2 | if {[catch { exec which javac } res]} { | |
3 | untested "$test - no javac" | |
4 | return | |
5 | } | |
6 | ||
454524da | 7 | set test "singleparam" |
489f8460 | 8 | |
7f04d249 FCE |
9 | if {! [installtest_p]} then { untested $test; return } |
10 | ||
489f8460 LB |
11 | # Test per method probing |
12 | ||
13 | catch { exec javac -d ./ $srcdir/$subdir/singleparam.java } err | |
14 | if {$err == "" && [file exists ./singleparam.class]} then { pass "$test compile" } else { fail "$test compile $err" } | |
15 | ||
d885563b | 16 | spawn stap $srcdir/$subdir/java.stp -c "java singleparam >/dev/null 2>&1" |
454524da | 17 | set ok 0 |
489f8460 | 18 | expect { |
454524da | 19 | -timeout 40 |
d885563b FCE |
20 | -re {printMessage\(int\)[^\r\n]*42\r\n} { incr ok; exp_continue} |
21 | -re {printMessage\(long\)[^\r\n]*254775806\r\n} { incr ok; exp_continue } | |
22 | -re {printMessage\(double\)[^\r\n]*3\r\n} { incr ok; exp_continue } | |
23 | -re {printMessage\(float\)[^\r\n]*2345987\r\n} { incr ok; exp_continue } | |
24 | -re {printMessage\(byte\)[^\r\n]*10\r\n} { incr ok; exp_continue } | |
25 | -re {printMessage\(boolean\)[^\r\n]*1\r\n} { incr ok; exp_continue } | |
26 | -re {printMessage\(char\)[^\r\n]*97\r\n} { incr ok; exp_continue } | |
27 | -re {printMessage\(short\)[^\r\n]*14\r\n} { incr ok; exp_continue } | |
454524da | 28 | timeout { fail "$test (timeout)" } |
489f8460 LB |
29 | } |
30 | ||
454524da LB |
31 | if {$ok == 8} then { |
32 | pass "$test ($ok)" | |
33 | } else { | |
34 | fail "$test ($ok)" | |
35 | } | |
489f8460 LB |
36 | catch {close}; catch {wait} |
37 | catch {exec rm ./singleparam.class} | |
38 | ||
454524da LB |
39 | set test "return" |
40 | ||
41 | catch { exec javac -d ./ $srcdir/$subdir/returnstatement.java } err1 | |
42 | if {$err1 == "" && [file exists ./returnstatement.class]} then { pass "$test compile" } else { fail "$test compile $err1" } | |
43 | ||
d885563b | 44 | spawn stap $srcdir/$subdir/returnstatement.stp -c "java returnstatement >/dev/null 2>&1" |
454524da LB |
45 | set oka 0 |
46 | expect { | |
47 | -timeout 40 | |
d885563b FCE |
48 | -re {printMessage\(int\)[^\r\n]*42\ ret\r\n} { incr oka; exp_continue } |
49 | -re {printMessage\(long\)[^\r\n]*254775806\ ret\r\n} { incr oka; exp_continue } | |
50 | -re {printMessage\(double\)[^\r\n]*3\ ret\r\n} { incr oka; exp_continue } | |
51 | -re {printMessage\(float\)[^\r\n]*2345987\ ret\r\n} { incr oka; exp_continue } | |
52 | -re {printMessage\(byte\)[^\r\n]*10\ ret\r\n} { incr oka; exp_continue } | |
53 | -re {printMessage\(boolean\)[^\r\n]*1\ ret\r\n} { incr oka; exp_continue } | |
54 | -re {printMessage\(char\)[^\r\n]*97\ ret\r\n} { incr oka; exp_continue } | |
55 | -re {printMessage\(short\)[^\r\n]*14\ ret\r\n} { incr oka; exp_continue } | |
454524da LB |
56 | timeout { fail "$test unexpected timeout" } |
57 | } | |
58 | ||
59 | if {$oka == 8} then { | |
60 | pass "$test ($oka)" | |
61 | } else { | |
62 | fail "$test ($oka)" | |
63 | } | |
64 | ||
65 | catch {close}; catch {wait} | |
66 | catch {exec rm ./returnstatement.class} | |
67 | ||
68 | set test "multiparams" | |
69 | ||
70 | catch { exec javac -d ./ $srcdir/$subdir/multiparams.java } err2 | |
71 | if {$err2 == "" && [file exists ./multiparams.class]} then { pass "$test compile" } else { fail "$test compile $err2" } | |
72 | ||
d885563b | 73 | spawn stap $srcdir/$subdir/multiparams.stp -c "java multiparams >/dev/null 2>&1" |
454524da LB |
74 | set okb 0 |
75 | expect { | |
76 | -timeout 40 | |
d885563b FCE |
77 | -re {printMessage1\(int\)[^\r\n]*42\r\n} { incr okb; exp_continue } |
78 | -re {printMessage2\(long\,\ int\)[^\r\n]*254775806\ 42\r\n} { incr okb; exp_continue } | |
79 | -re {printMessage3\(double,\ long,\ int\)[^\r\n]*3\ 254775806\ 42\r\n} { incr okb; exp_continue } | |
80 | -re {printMessage4\(float,\ double,\ long,\ int\)[^\r\n]*2345987\ 3\ 254775806\ 42\r\n} { incr okb; exp_continue } | |
81 | -re {printMessage5\(byte,\ float,\ double,\ long,\ int\)[^\r\n]*10\ 2345987\ 3\ 254775806\ 42\r\n} { incr okb; exp_continue } | |
82 | -re {printMessage6\(boolean,\ byte,\ float,\ double,\ long,\ int\)[^\r\n]*1\ 10\ 2345987\ 3\ 254775806\ 42\r\n} { incr okb; exp_continue } | |
83 | -re {printMessage7\(char,\ boolean,\ byte,\ float,\ double,\ long,\ int\)[^\r\n]*97\ 1\ 10\ 2345987\ 3\ 254775806\ 42\r\n} { incr okb; exp_continue } | |
84 | -re {printMessage8\(short,\ char,\ boolean,\ byte,\ float,\ double,\ long,\ int\)[^\r\n]*14\ 97\ 1\ 10\ 2345987\ 3\ 254775806\ 42\r\n} { incr okb; exp_continue } | |
85 | -re {printMessage9\(short,\ short,\ char,\ boolean,\ byte,\ float,\ double,\ long,\ int\)[^\r\n]*14\ 14\ 97\ 1\ 10\ 2345987\ 3\ 254775806\ 42\r\n} { incr okb; exp_continue } | |
86 | -re {printMessage10\(short,\ short,\ short,\ char,\ boolean,\ byte,\ float,\ double,\ long,\ int\)[^\r\n]*14\ 14\ 14\ 97\ 1\ 10\ 2345987\ 3\ 254775806\ 42\r\n} { incr okb; exp_continue } | |
454524da LB |
87 | timeout { fail "$test unexpected timeout" } |
88 | } | |
89 | if {$okb == 10} then { | |
90 | pass "$test ($okb)" | |
91 | } else { | |
92 | fail "$test ($okb)" | |
93 | } | |
94 | ||
95 | catch {close}; catch {wait} | |
96 | catch {exec rm ./multiparams.class} | |
97 |