aboutsummaryrefslogtreecommitdiff
path: root/weed/util/log_buffer/log_buffer_test.go
diff options
context:
space:
mode:
authorChris Lu <chris.lu@gmail.com>2020-04-19 23:37:04 -0700
committerChris Lu <chris.lu@gmail.com>2020-04-19 23:37:50 -0700
commitce3cb25cfbf30a06348386210f72cc51c3fbd13a (patch)
tree217836bc07221d97a180f7f2fba41dd51ddb3eae /weed/util/log_buffer/log_buffer_test.go
parentf37323222751c104723273293a0b15b209021f32 (diff)
downloadseaweedfs-ce3cb25cfbf30a06348386210f72cc51c3fbd13a.tar.xz
seaweedfs-ce3cb25cfbf30a06348386210f72cc51c3fbd13a.zip
working for in memory single log buffer
Diffstat (limited to 'weed/util/log_buffer/log_buffer_test.go')
-rw-r--r--weed/util/log_buffer/log_buffer_test.go41
1 files changed, 41 insertions, 0 deletions
diff --git a/weed/util/log_buffer/log_buffer_test.go b/weed/util/log_buffer/log_buffer_test.go
new file mode 100644
index 000000000..dfd611bed
--- /dev/null
+++ b/weed/util/log_buffer/log_buffer_test.go
@@ -0,0 +1,41 @@
+package log_buffer
+
+import (
+ "math/rand"
+ "testing"
+ "time"
+
+ "github.com/chrislusf/seaweedfs/weed/pb/filer_pb"
+)
+
+func TestNewLogBuffer(t *testing.T) {
+ lb := NewLogBuffer(time.Second, func(startTime, stopTime time.Time, buf []byte) {
+
+ }, func() {
+
+ })
+
+ startTime := time.Now()
+
+ messageSize := 1024
+ messageCount := 994
+ var buf = make([]byte, messageSize)
+ for i := 0; i < messageCount; i++ {
+ rand.Read(buf)
+ lb.AddToBuffer(nil, buf)
+ }
+
+ receivedmessageCount := 0
+ lb.LoopProcessLogData(startTime, func() bool {
+ // stop if no more messages
+ return false
+ }, func(logEntry *filer_pb.LogEntry) error {
+ receivedmessageCount++
+ return nil
+ })
+
+ if receivedmessageCount != messageCount {
+ t.Errorf("sent %d received %d", messageCount, receivedmessageCount)
+ }
+
+}