diff options
| author | chrislusf <chris.lu@gmail.com> | 2016-04-14 01:30:26 -0700 |
|---|---|---|
| committer | chrislusf <chris.lu@gmail.com> | 2016-04-14 01:30:26 -0700 |
| commit | 0649d778a72d4c0c27b3f2049fdb6f6e18956a65 (patch) | |
| tree | fd8f58c8639aba6038cf6bef0d382fc806a8b48c /go/util/bytes_pool_test.go | |
| parent | 95e0d2f1b236f97f70d51a62c3df6a937a27286d (diff) | |
| download | seaweedfs-0649d778a72d4c0c27b3f2049fdb6f6e18956a65.tar.xz seaweedfs-0649d778a72d4c0c27b3f2049fdb6f6e18956a65.zip | |
pooling []byte
reduce the number of requests to make([]byte)
Diffstat (limited to 'go/util/bytes_pool_test.go')
| -rw-r--r-- | go/util/bytes_pool_test.go | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/go/util/bytes_pool_test.go b/go/util/bytes_pool_test.go new file mode 100644 index 000000000..3f37c16cf --- /dev/null +++ b/go/util/bytes_pool_test.go @@ -0,0 +1,41 @@ +package util + +import ( + "testing" +) + +func TestTTLReadWrite(t *testing.T) { + var tests = []struct { + n int // input + expected int // expected result + }{ + {0, -1}, + {1, 0}, + {1 << 4, 0}, + {1 << 6, 1}, + {1 << 8, 2}, + {1 << 10, 3}, + {1 << 12, 4}, + {1 << 14, 5}, + {1 << 16, 6}, + {1 << 18, 7}, + {1<<4 + 1, 1}, + {1<<6 + 1, 2}, + {1<<8 + 1, 3}, + {1<<10 + 1, 4}, + {1<<12 + 1, 5}, + {1<<14 + 1, 6}, + {1<<16 + 1, 7}, + {1<<18 + 1, 8}, + {1<<28 - 1, 12}, + {1 << 28, 12}, + {1<<28 + 2134, -1}, + {1080, 4}, + } + for _, tt := range tests { + actual := findChunkPoolIndex(tt.n) + if actual != tt.expected { + t.Errorf("findChunkPoolIndex(%d): expected %d, actual %d", tt.n, tt.expected, actual) + } + } +} |
