# # Dejagnu tests for pgrep - part of procps # set pmap "${topdir}pmap" set mypid [pid] set pmap_procname "${mypid}:\\s+\\S+\[^\\r\]+\\s+" set pmap_initname "1:\\s+\\S+\[^\\r\]+\\s+" set pmap_std_header $pmap_procname set pmap_device_header "${pmap_procname}Address\\s+Kbytes\\s+Mode\\s+Offset\\s+Device\\s+Mapping\\s+" set pmap_ext_header "${pmap_procname}Address\\s+Kbytes\\s+RSS\\s+Dirty\\s+Mode\\s+Mapping\\s+" set pmap_generic_header "${pmap_procname}\\s+\(?:\[A-Z\]\[a-z\]+ +\)+" set pmap_std_items "\(\[0-9a-f\]+\\s+\\d+K \[rwx-\]{5}\\s+\\S+\[^\\r\]+\\s*\)+" set pmap_device_items "\(\[0-9a-f\]+\\s+\\d+ \[rwx-\]{5}\\s+\[0-9a-f\]+\\s+\[0-9a-f\]{3}:\[0-9a-f\]{5}\\s+\\S+\[^\\r\]+\\s*\)+" set pmap_ext_items "\(\[0-9a-f\]+\\s+\\d+\\s+\\d+\\s+\\d+ \[rwx-\]{5}\\s+\\S+\[^\\r\]+\\s*\)+" set pmap_std_footer "total\\s+\\d+K\\s*\$" set pmap_device_footer "mapped:\\s+\\d+K\\s+writeable\/private:\\s+\\d+K\\s+shared:\\s+\\d+K\\s*\$" set pmap_ext_footer "\[ -\]+\\s+total kB\\s+\\d+(\\s+\[\\d-\]+){2,3}\\s*\$" set test "pmap with no arguments" spawn $pmap #expect_pass "$test" "^\(lt-\)\?pmap: argument missing" expect_pass "$test" "Usage:\\s+\(lt-\)?pmap \\\[options\\\] pid \\\[pid \.\.\.\\\]" set test "pmap standard output" spawn $pmap $mypid expect_table $test $pmap_std_header $pmap_std_items $pmap_std_footer set test "pmap standard output with quiet" spawn $pmap -q $mypid expect_table $test $pmap_procname $pmap_std_items "\$" set test "pmap device output" spawn $pmap -d $mypid expect_table $test $pmap_device_header $pmap_device_items $pmap_device_footer set test "pmap device output quiet (dq)" spawn $pmap -dq $mypid expect_table $test $pmap_procname $pmap_device_items "\$" set test "pmap device output quiet (qd)" spawn $pmap -qd $mypid expect_table $test $pmap_procname $pmap_device_items "\$" set test "pmap extended output" spawn $pmap -x $mypid expect_table $test $pmap_ext_header $pmap_ext_items $pmap_ext_footer # -X and -XX have no real format as its dependent on smaps set test "pmap extra extended output" spawn $pmap -X $mypid expect_table $test $pmap_generic_header ".+" "\[= \]+" set test "pmap double extra extended output" spawn $pmap -XX $mypid expect_table $test $pmap_generic_header ".+" "\[= \]+" set test "pmap X with unreachable process" spawn $pmap -X 1 expect_pass $test "$pmap_initname\$" set test "pmap XX with unreachable process" spawn $pmap -XX 1 expect_pass $test "$pmap_initname\$"