Skip to content

Commit d4dc49b

Browse files
authored
meminfo: Fix ZswappedBytes (#759)
Fix assignment of ZswappedBytes parsing. * Add tests. * Migrate `meminfo_test.go` to `cmp` package. Fixes: #758 Signed-off-by: SuperQ <[email protected]>
1 parent 638b55c commit d4dc49b

File tree

3 files changed

+14
-9
lines changed

3 files changed

+14
-9
lines changed

meminfo.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -307,7 +307,7 @@ func parseMemInfo(r io.Reader) (*Meminfo, error) {
307307
m.ZswapBytes = &valBytes
308308
case "Zswapped:":
309309
m.Zswapped = &val
310-
m.ZswapBytes = &valBytes
310+
m.ZswappedBytes = &valBytes
311311
case "Dirty:":
312312
m.Dirty = &val
313313
m.DirtyBytes = &valBytes

meminfo_test.go

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,13 @@
1414
package procfs
1515

1616
import (
17-
"reflect"
1817
"testing"
18+
19+
"github.com/google/go-cmp/cmp"
1920
)
2021

2122
func TestMeminfo(t *testing.T) {
22-
expected := Meminfo{
23+
want := Meminfo{
2324
MemTotal: newuint64(15666184),
2425
MemFree: newuint64(440324),
2526
Buffers: newuint64(1020128),
@@ -35,6 +36,8 @@ func TestMeminfo(t *testing.T) {
3536
Mlocked: newuint64(0),
3637
SwapTotal: newuint64(0),
3738
SwapFree: newuint64(0),
39+
Zswap: newuint64(22414),
40+
Zswapped: newuint64(10502),
3841
Dirty: newuint64(768),
3942
Writeback: newuint64(0),
4043
AnonPages: newuint64(266216),
@@ -79,6 +82,8 @@ func TestMeminfo(t *testing.T) {
7982
MlockedBytes: newuint64(0),
8083
SwapTotalBytes: newuint64(0),
8184
SwapFreeBytes: newuint64(0),
85+
ZswapBytes: newuint64(22951936),
86+
ZswappedBytes: newuint64(10754048),
8287
DirtyBytes: newuint64(786432),
8388
WritebackBytes: newuint64(0),
8489
AnonPagesBytes: newuint64(272605184),
@@ -105,14 +110,12 @@ func TestMeminfo(t *testing.T) {
105110
DirectMap2MBytes: newuint64(16424894464),
106111
}
107112

108-
have, err := getProcFixtures(t).Meminfo()
113+
got, err := getProcFixtures(t).Meminfo()
109114
if err != nil {
110115
t.Fatal(err)
111116
}
112117

113-
if !reflect.DeepEqual(have, expected) {
114-
t.Logf("have: %+v", have)
115-
t.Logf("expected: %+v", expected)
116-
t.Errorf("structs are not equal")
118+
if diff := cmp.Diff(want, got); diff != "" {
119+
t.Fatalf("unexpected meminfo entry (-want +got):\n%s", diff)
117120
}
118121
}

testdata/fixtures.ttar

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2513,7 +2513,7 @@ unused devices: <none>
25132513
Mode: 644
25142514
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
25152515
Path: fixtures/proc/meminfo
2516-
Lines: 43
2516+
Lines: 45
25172517
MemTotal: 15666184 kB
25182518
MemFree: 440324 kB
25192519
Buffers: 1020128 kB
@@ -2529,6 +2529,8 @@ Unevictable: 0 kB
25292529
Mlocked: 0 kB
25302530
SwapTotal: 0 kB
25312531
SwapFree: 0 kB
2532+
Zswap: 22414 kB
2533+
Zswapped: 10502 kB
25322534
Dirty: 768 kB
25332535
Writeback: 0 kB
25342536
AnonPages: 266216 kB

0 commit comments

Comments
 (0)