aboutsummaryrefslogtreecommitdiff
path: root/weed/util/bytes_pool_test.go
diff options
context:
space:
mode:
authorChris Lu <chris.lu@gmail.com>2016-06-02 18:09:14 -0700
committerChris Lu <chris.lu@gmail.com>2016-06-02 18:09:14 -0700
commit5ce6bbf07672bf3f3c8d26cd2ce0e3e853a47c44 (patch)
tree2e4dd2ad0a618ab2b7cdebcdb9c503526c31e2e8 /weed/util/bytes_pool_test.go
parentcaeffa3998adc060fa66c4cd77af971ff2d26c57 (diff)
downloadseaweedfs-5ce6bbf07672bf3f3c8d26cd2ce0e3e853a47c44.tar.xz
seaweedfs-5ce6bbf07672bf3f3c8d26cd2ce0e3e853a47c44.zip
directory structure change to work with glide
glide has its own requirements. My previous workaround caused me some code checkin errors. Need to fix this.
Diffstat (limited to 'weed/util/bytes_pool_test.go')
-rw-r--r--weed/util/bytes_pool_test.go41
1 files changed, 41 insertions, 0 deletions
diff --git a/weed/util/bytes_pool_test.go b/weed/util/bytes_pool_test.go
new file mode 100644
index 000000000..3f37c16cf
--- /dev/null
+++ b/weed/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)
+ }
+ }
+}