MCPcopy
hub / github.com/klauspost/compress / TestWriterMemUsage

Function TestWriterMemUsage

flate/writer_test.go:22–66  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

20)
21
22func TestWriterMemUsage(t *testing.T) {
23 testMem := func(t *testing.T, fn func()) {
24 var before, after runtime.MemStats
25 runtime.GC()
26 runtime.ReadMemStats(&before)
27 fn()
28 runtime.GC()
29 runtime.ReadMemStats(&after)
30 t.Logf("%s: Memory Used: %dKB, %d allocs", t.Name(), (after.HeapInuse-before.HeapInuse)/1024, after.HeapObjects-before.HeapObjects)
31 }
32 data := make([]byte, 100000)
33 t.Run("stateless", func(t *testing.T) {
34 testMem(t, func() {
35 StatelessDeflate(io.Discard, data, false, nil)
36 })
37 })
38 for level := HuffmanOnly; level <= BestCompression; level++ {
39 t.Run(fmt.Sprint("level-", level), func(t *testing.T) {
40 var zr *Writer
41 var err error
42 testMem(t, func() {
43 zr, err = NewWriter(io.Discard, level)
44 if err != nil {
45 t.Fatal(err)
46 }
47 zr.Write(data)
48 })
49 zr.Close()
50 })
51 }
52 for level := HuffmanOnly; level <= BestCompression; level++ {
53 t.Run(fmt.Sprint("stdlib-", level), func(t *testing.T) {
54 var zr *flate.Writer
55 var err error
56 testMem(t, func() {
57 zr, err = flate.NewWriter(io.Discard, level)
58 if err != nil {
59 t.Fatal(err)
60 }
61 zr.Write(data)
62 })
63 zr.Close()
64 })
65 }
66}
67
68func TestWriterRegression(t *testing.T) {
69 data, err := os.ReadFile("testdata/regression.zip")

Callers

nothing calls this directly

Calls 6

WriteMethod · 0.95
CloseMethod · 0.95
StatelessDeflateFunction · 0.85
FatalMethod · 0.80
NewWriterFunction · 0.70
NameMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…