summaryrefslogtreecommitdiffstats
path: root/testsuite
diff options
context:
space:
mode:
authorguanglei <guanglei>2006-11-21 08:14:27 +0000
committerguanglei <guanglei>2006-11-21 08:14:27 +0000
commit5d4d52aa800cf717d57377ce1e6356cde0116c5b (patch)
treee311e47a1ed192832f3e1114b0733058f7d7015a /testsuite
parent85ecf79a90e57a11f747d0c37470122f622ff671 (diff)
downloadsystemtap-steved-5d4d52aa800cf717d57377ce1e6356cde0116c5b.tar.gz
systemtap-steved-5d4d52aa800cf717d57377ce1e6356cde0116c5b.tar.xz
systemtap-steved-5d4d52aa800cf717d57377ce1e6356cde0116c5b.zip
add LKET testcase into testsuite/systemtap.samples/
change the return codes of lket-b2a and add a new macro b2a_error() for error reporting
Diffstat (limited to 'testsuite')
-rw-r--r--testsuite/ChangeLog6
-rw-r--r--testsuite/systemtap.samples/lket.exp45
-rw-r--r--testsuite/systemtap.samples/lket.stp3
3 files changed, 54 insertions, 0 deletions
diff --git a/testsuite/ChangeLog b/testsuite/ChangeLog
index ea0d9ba7..bed37e80 100644
--- a/testsuite/ChangeLog
+++ b/testsuite/ChangeLog
@@ -1,3 +1,9 @@
+2006-11-21 Li Guanglei <guanglei@cn.ibm.com>
+
+ From Gui Jian <guijian@cn.ibm.com>
+ * systemtap.samples/lket.exp, systemtap.samples/lket.stp: add
+ testcase for LKET
+
2006-11-19 Frank Ch. Eigler <fche@elastic.org>
* parseko/twentythree.stp: New test for running tapset file.
diff --git a/testsuite/systemtap.samples/lket.exp b/testsuite/systemtap.samples/lket.exp
new file mode 100644
index 00000000..d7587af7
--- /dev/null
+++ b/testsuite/systemtap.samples/lket.exp
@@ -0,0 +1,45 @@
+# Test the basic functionality of LKET tapset and lket-b2a utility
+
+set test "lket"
+if {![installtest_p]} { untested $test; return }
+
+eval spawn stap -v -bM $srcdir/$subdir/lket.stp
+set failed 1
+expect {
+ -timeout 150
+ -re {^Pass\ ([1234]):\ [^\r]*\r\n} {
+ set detail "pass$expect_out(1,string)";
+ exp_continue
+ }
+ -re {^Pass\ 5: starting run.\r\n} {
+ set detail "stap runtime";
+ exp_continue
+ }
+ -re {^Pass\ 5:[^\r]*\ in\ ([0-9]+)usr/([0-9]+)sys/([0-9]+)real\ ms.\r\n} {
+ set failed 0
+ }
+ -re {parse error|semantic error} {set detail "$expect_out(0,string)"}
+ timeout {set detail "stap timeout"; send "\003" }
+}
+
+if {$failed} { fail "$test\($detail\)"; return}
+
+set failed [catch {exec /bin/sh -c "lket-b2a -f stpd_cpu*"}]
+
+if { $failed || ![file readable "lket.out"] } {
+ fail "$test\(lket-b2a runtime\)"; return
+}
+
+eval {spawn head -n 10 "lket.out"}
+expect -re {^LKET\ Magic:\t0xAEFCDB6B\r\nInitHdrLen:\t[0-9]+\r\nVersion\ Major:\t[0-9]+\r\nVersion\ Minor:\t[0-9]+\r\nBig\ endian:\t(YES|NO)\r\nTiming\ method:\t.+\r\nBits\ width:\t[0-9]+\r\nInitial\ CPU\ timebase:\t[0-9]+\ \(cycles\ per\ microsecond\)\r\n\r\n[0-9]+\.[0-9]+\ CPU:[0-9]+\ PID:[0-9]+\ APPNAME:.+\ EVT_NAME:process_snapshot\ tid:[0-9]+,pid:[0-9]+,ppid:[0-9]+,pname:} {
+ set failed 0
+}
+
+if {$failed} {
+ fail "$test\(wrong init_header\)";
+} else {
+ pass "$test\($failed\)";
+}
+
+catch {exec rm -f stpd_cpu* lket.out}
+return
diff --git a/testsuite/systemtap.samples/lket.stp b/testsuite/systemtap.samples/lket.stp
new file mode 100644
index 00000000..e63229b2
--- /dev/null
+++ b/testsuite/systemtap.samples/lket.stp
@@ -0,0 +1,3 @@
+#! stap -bM
+probe addevent.* ? {}
+probe timer.ms(30000) { exit() }