46 lines
1.7 KiB
Go
46 lines
1.7 KiB
Go
package system
|
|
|
|
import "testing"
|
|
|
|
func TestParseStartTime(t *testing.T) {
|
|
data := map[string]Stat_t{
|
|
"4902 (gunicorn: maste) S 4885 4902 4902 0 -1 4194560 29683 29929 61 83 78 16 96 17 20 0 1 0 9126532 52965376 1903 18446744073709551615 4194304 7461796 140733928751520 140733928698072 139816984959091 0 0 16781312 137447943 1 0 0 17 3 0 0 9 0 0 9559488 10071156 33050624 140733928758775 140733928758945 140733928758945 140733928759264 0": {
|
|
PID: 4902,
|
|
Name: "gunicorn: maste",
|
|
State: 'S',
|
|
StartTime: 9126532,
|
|
},
|
|
"9534 (cat) R 9323 9534 9323 34828 9534 4194304 95 0 0 0 0 0 0 0 20 0 1 0 9214966 7626752 168 18446744073709551615 4194304 4240332 140732237651568 140732237650920 140570710391216 0 0 0 0 0 0 0 17 1 0 0 0 0 0 6340112 6341364 21553152 140732237653865 140732237653885 140732237653885 140732237656047 0": {
|
|
PID: 9534,
|
|
Name: "cat",
|
|
State: 'R',
|
|
StartTime: 9214966,
|
|
},
|
|
|
|
"24767 (irq/44-mei_me) S 2 0 0 0 -1 2129984 0 0 0 0 0 0 0 0 -51 0 1 0 8722075 0 0 18446744073709551615 0 0 0 0 0 0 0 2147483647 0 0 0 0 17 1 50 1 0 0 0 0 0 0 0 0 0 0 0": {
|
|
PID: 24767,
|
|
Name: "irq/44-mei_me",
|
|
State: 'S',
|
|
StartTime: 8722075,
|
|
},
|
|
}
|
|
for line, expected := range data {
|
|
st, err := parseStat(line)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
if st.PID != expected.PID {
|
|
t.Fatalf("expected PID %q but received %q", expected.PID, st.PID)
|
|
}
|
|
if st.State != expected.State {
|
|
t.Fatalf("expected state %q but received %q", expected.State, st.State)
|
|
}
|
|
if st.Name != expected.Name {
|
|
t.Fatalf("expected name %q but received %q", expected.Name, st.Name)
|
|
}
|
|
if st.StartTime != expected.StartTime {
|
|
t.Fatalf("expected start time %q but received %q", expected.StartTime, st.StartTime)
|
|
}
|
|
}
|
|
}
|