Some checks failed
CI Docker Mining Proof / Linux agent hashrate proof (push) Has been cancelled
Return sane fallback CPU percent after first sample on unknown Unix platforms; add xvfb/scrot docs and stub tests; clear PROBLEMS.md open bugs.
31 lines
812 B
Go
31 lines
812 B
Go
package stats
|
|
|
|
import "testing"
|
|
|
|
func TestStubSystemCPUPercentFirstSampleZero(t *testing.T) {
|
|
r := NewReporter()
|
|
if got := r.stubSystemCPUPercent(); got != 0 {
|
|
t.Fatalf("first sample want 0 got %v", got)
|
|
}
|
|
}
|
|
|
|
func TestStubSystemCPUPercentFallbackBelowIdleThreshold(t *testing.T) {
|
|
r := NewReporter()
|
|
_ = r.stubSystemCPUPercent()
|
|
got := r.stubSystemCPUPercent()
|
|
if got != StubFallbackCPUPercent {
|
|
t.Fatalf("fallback want %v got %v", StubFallbackCPUPercent, got)
|
|
}
|
|
if got >= 20 {
|
|
t.Fatalf("fallback %v must stay below default idle threshold 20", got)
|
|
}
|
|
}
|
|
|
|
func TestStubSystemCPUPercentSubsequentNonZero(t *testing.T) {
|
|
r := NewReporter()
|
|
_ = r.stubSystemCPUPercent()
|
|
if got := r.stubSystemCPUPercent(); got <= 0 {
|
|
t.Fatalf("subsequent stub sample must be >0 for idle guard, got %v", got)
|
|
}
|
|
}
|