zhangzengfei
2022-10-18 78b58d3fc68f7ede33f0bc681b7914bc2b29cc82
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
package boltcache
 
import (
    "testing"
    "time"
)
 
func TestInit(t *testing.T) {
    conf := NewDefaultConfig()
    ls, err := Init(conf)
    if err != nil {
        ls.printLog("Init err:", err)
        return
    }
 
    defer ls.Close()
 
    //go consume(ls)
    //
    //for i := 0; i < 10; i++ {
    //    ls.ApplyLog([]byte("hello world " + strconv.Itoa(i)))
    //    time.Sleep(time.Millisecond * 100)
    //}
 
    ls.printLog("Size = ", ls.Size())
 
    var logs []*LogCon
    ls.ForEach(func(log *LogCon) error {
        ls.printLog("val=:", string(log.GetData()))
 
        logs = append(logs, log)
        time.Sleep(time.Millisecond * 100)
 
        return nil
    })
 
    for _, log := range logs {
        ls.Delete(log)
    }
    //consume(ls)
}
 
func consume(ls *LogStore) {
    for {
        lc := ls.Get()
        if lc != nil {
            ls.printLog(lc.conf.BucketName, " send old log:", string(lc.Log.Data))
            ls.Delete(lc)
        } else {
            return
        }
 
        time.Sleep(10 * time.Millisecond)
    }
}