Added slabtop tests
This commit is contained in:
parent
23afed732a
commit
226c1f2a6f
@ -63,6 +63,46 @@ proc expect_table { test match_header match_items match_footer } {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
proc expect_table_dsc { test match_header match_item } {
|
||||||
|
expect {
|
||||||
|
-re $match_header {}
|
||||||
|
default {
|
||||||
|
fail "$test (header)"
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
set do_loop 1
|
||||||
|
set last_value 999999
|
||||||
|
set found_item 0
|
||||||
|
while { $do_loop ==1 } {
|
||||||
|
expect {
|
||||||
|
-re $match_item {
|
||||||
|
set current_value $expect_out(1,string)
|
||||||
|
if { $current_value > $last_value } {
|
||||||
|
fail "$test (sorting $current_value > $last_value)"
|
||||||
|
return
|
||||||
|
} else {
|
||||||
|
set found_item 1
|
||||||
|
set last_value $current_value
|
||||||
|
}
|
||||||
|
}
|
||||||
|
default {
|
||||||
|
if { $found_item == 0 } {
|
||||||
|
fail "$test (items)"
|
||||||
|
} else {
|
||||||
|
pass $test
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#expect {
|
||||||
|
# -re $match_footer { pass $test }
|
||||||
|
# default { fail "$test (footer)" }
|
||||||
|
#}
|
||||||
|
}
|
||||||
|
|
||||||
proc make_testproc { } {
|
proc make_testproc { } {
|
||||||
# Time to run the whole job
|
# Time to run the whole job
|
||||||
set sleep_time 300
|
set sleep_time 300
|
||||||
|
30
testsuite/slabtop.test/slabtop.exp
Normal file
30
testsuite/slabtop.test/slabtop.exp
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
#
|
||||||
|
# Dehagnu testing for slabtop - part of procps
|
||||||
|
#
|
||||||
|
set slabtop ${topdir}slabtop
|
||||||
|
|
||||||
|
set avst "Active / Total"
|
||||||
|
set used "\\\(% used\\\)\\s+:"
|
||||||
|
set pct "\\\(\\d+\\.\\d+%\\\)"
|
||||||
|
|
||||||
|
set slabtop_header "^ $avst Objects $used \\d+ / \\d+ ${pct}\\s+$avst Slabs $used \\d+ / \\d+ ${pct}\\s+$avst Caches $used \\d+ / \\d+ ${pct}\\s+$avst Size $used \\d+\\.\\d+K / \\d+\\.\\d+K ${pct}\\s+Minimum / Average / Maximum Object : \\d+\\.\\d+K / \\d+\\.\\d+K / \\d+\\.\\d+K\\s+OBJS ACTIVE USE OBJ SIZE SLABS OBJ/SLAB CACHE SIZE NAME\\s+"
|
||||||
|
|
||||||
|
set test "slabtop help"
|
||||||
|
spawn $slabtop --help
|
||||||
|
expect_pass $test "usage: $slabtop \\\[options\\\]"
|
||||||
|
|
||||||
|
set sort_tests {
|
||||||
|
"a" "active objects" "^\\d+\\s+(\\d+)\\s+\\d+%\\s+\\d+\\.\\d+K\\s+\\d+\\s+\\d+\\s+\\d+K\\s+\\S\[^\r\]+\\s*"
|
||||||
|
"b" "objects per slab" "^\\s*\\d+\\s+\\d+\\s+\\d+%\\s+\\d+\\.\\d+K\\s+\\d+\\s+(\\d+)\\s+\\d+K\\s+\\S\[^\r\]+\\s*"
|
||||||
|
"c" "cache size" "^\\d+\\s+\\d+\\s+\\d+%\\s+\\d+\\.\\d+K\\s+\\d+\\s+\\d+\\s+(\\d+)K\\s+\\S\[^\r\]+\\s*"
|
||||||
|
"l" "number of slabs" "^\\d+\\s+\\d+\\s+\\d+%\\s+\\d+\\.\\d+K\\s+(\\d+)\\s+\\d+\\s+\\d+K\\s+\\S\[^\r\]+\\s*"
|
||||||
|
"o" "object count" "^(\\d+)\\s+\\d+\\s+\\d+%\\s+\\d+\\.\\d+K\\s+\\d+\\s+\\d+\\s+\\d+K\\s+\\S\[^\r\]+\\s*"
|
||||||
|
"s" "object size" "^\\d+\\s+\\d+\\s+\\d+%\\s+(\\d+\\.\\d+)K\\s+\\d+\\s+\\d+\\s+\\d+K\\s+\\S\[^\r\]+\\s*"
|
||||||
|
"u" "utilisation" "^\\d+\\s+\\d+\\s+(\\d+)%\\s+\\d+\\.\\d+K\\s+\\d+\\s+\\d+\\s+\\d+K\\s+\\S\[^\r\]+\\s*"
|
||||||
|
}
|
||||||
|
foreach { flag desc match } $sort_tests {
|
||||||
|
set test "slabtop sorted by $desc"
|
||||||
|
spawn $slabtop -o -s $flag
|
||||||
|
expect_table_dsc $test $slabtop_header $match
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user