github.com/mackerelio/mackerel-agent-plugins@v0.89.3/mackerel-plugin-memcached/lib/memcached_test.go (about) 1 package mpmemcached 2 3 import ( 4 "bytes" 5 "fmt" 6 "testing" 7 8 "github.com/stretchr/testify/assert" 9 ) 10 11 func TestGraphDefinition(t *testing.T) { 12 var memcached MemcachedPlugin 13 14 graphdef := memcached.GraphDefinition() 15 if len(graphdef) != 9 { 16 t.Errorf("GetTempfilename: %d should be 9", len(graphdef)) 17 } 18 } 19 20 func TestParse(t *testing.T) { 21 var memcached MemcachedPlugin 22 stub := `STAT pid 1994 23 STAT uptime 92066123 24 STAT time 1436890963 25 STAT version 1.4.0 26 STAT pointer_size 64 27 STAT rusage_user 1393.803107 28 STAT rusage_system 2947.180187 29 STAT curr_connections 1003 30 STAT total_connections 965032539 31 STAT connection_structures 16388 32 STAT cmd_get 4306259844 33 STAT cmd_set 2423543841 34 STAT cmd_flush 0 35 STAT get_hits 2769383483 36 STAT get_misses 1536876361 37 STAT delete_misses 244469885 38 STAT delete_hits 14456835 39 STAT incr_misses 0 40 STAT incr_hits 0 41 STAT decr_misses 0 42 STAT decr_hits 0 43 STAT cas_misses 0 44 STAT cas_hits 0 45 STAT cas_badval 0 46 STAT bytes_read 8328670869009 47 STAT bytes_written 9151962263382 48 STAT limit_maxbytes 2147483648 49 STAT accepting_conns 1 50 STAT listen_disabled_num 0 51 STAT threads 5 52 STAT conn_yields 1487476 53 STAT bytes 621371972 54 STAT curr_items 955652 55 STAT total_items 2423543841 56 STAT evictions 236677775 57 END 58 ` 59 60 memcachedStats := bytes.NewBufferString(stub) 61 62 stat, err := memcached.parseStats(memcachedStats) 63 fmt.Println(stat) 64 assert.Nil(t, err) 65 // Memcached Stats 66 assert.EqualValues(t, stat["get_hits"], 2769383483) 67 }