Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Android/build/build/soong/ui/metrics/proc/   (Android Betriebssystem Version 17©)  Datei vom 26.5.2026 mit Größe 2 kB image not shown  

Quelle  status_linux_test.go   Sprache: unbekannt

 
Spracherkennung für: .go vermutete Sprache: Unknown {[0] [0] [0]} [Methode: Schwerpunktbildung, einfache Gewichte, sechs Dimensionen]

package proc

import (
 "path/filepath"
 "reflect"
 "strconv"
 "testing"

 "android/soong/finder/fs"
)

func TestNewProcStatus(t *testing.T) {
 fs := fs.NewMockFs(nil)

 pid := 4032827
 procDir := filepath.Join("/proc", strconv.Itoa(pid))
 if err := fs.MkDirs(procDir); err != nil {
  t.Fatalf("failed to create proc pid dir %s: %v", procDir, err)
 }
 statusFilename := filepath.Join(procDir, "status")

 if err := fs.WriteFile(statusFilename, statusData, 0644); err != nil {
  t.Fatalf("failed to write proc file %s: %v", statusFilename, err)
 }

 status, err := NewProcStatus(pid, fs)
 if err != nil {
  t.Fatalf("got %v, want nil for error", err)
 }

 if !reflect.DeepEqual(status, expectedStatus) {
  t.Errorf("got %v, expecting %v for ProcStatus", status, expectedStatus)
 }
}

var statusData = []byte(`Name:   fake_process
Umask:  0022
State:  S (sleeping)
Tgid:   4032827
Ngid:   0
Pid:    4032827
PPid:   1
TracerPid:      0
Uid:    0       0       0       0
Gid:    0       0       0       0
FDSize: 512
Groups:
NStgid: 4032827
NSpid:  4032827
NSpgid: 4032827
NSsid:  4032827
VmPeak:   733232 kB
VmSize:   733232 kB
VmLck:       132 kB
VmPin:       130 kB
VmHWM:     69156 kB
VmRSS:     69156 kB
RssAnon:           50896 kB
RssFile:           18260 kB
RssShmem:            122 kB
VmData:   112388 kB
VmStk:       132 kB
VmExe:      9304 kB
VmLib:         8 kB
VmPTE:       228 kB
VmSwap:        10 kB
HugetlbPages:          22 kB
CoreDumping:    0
THP_enabled:    1
Threads:        46
SigQ:   2/767780
SigPnd: 0000000000000000
ShdPnd: 0000000000000000
SigBlk: fffffffe3bfa3a00
SigIgn: 0000000000000000
SigCgt: fffffffe7fc1feff
CapInh: 0000000000000000
CapPrm: 0000003fffffffff
CapEff: 0000003fffffffff
CapBnd: 0000003fffffffff
CapAmb: 0000000000000000
NoNewPrivs:     0
Seccomp:        0
Speculation_Store_Bypass:       thread vulnerable
Cpus_allowed:   ff,ffffffff,ffffffff
Cpus_allowed_list:      0-71
Mems_allowed:   00000000,00000003
Mems_allowed_list:      0-1
voluntary_ctxt_switches:        1635
nonvoluntary_ctxt_switches:     32
`)

var expectedStatus = &ProcStatus{
 pid:          4032827,
 VmPeak:       750829568,
 VmSize:       750829568,
 VmLck:        135168,
 VmPin:        133120,
 VmHWM:        70815744,
 VmRss:        70815744,
 RssAnon:      52117504,
 RssShmem:     124928,
 VmData:       115085312,
 VmStk:        135168,
 VmExe:        9527296,
 VmLib:        8192,
 VmPTE:        233472,
 VmSwap:       10240,
 HugetlbPages: 22528,
}

[Dauer der Verarbeitung: 0.13 Sekunden, vorverarbeitet 2026-06-28]