本文整理汇总了Golang中github.com/eleme/banshee/util/assert.Ok函数的典型用法代码示例。如果您正苦于以下问题:Golang Ok函数的具体用法?Golang Ok怎么用?Golang Ok使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了Ok函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: TestAnomalyAfterBigAnomaly
// Case anomaly after an anomaly.
func TestAnomalyAfterBigAnomaly(t *testing.T) {
wf := 0.05
leastC := 18
c := New(wf, leastC)
l := genMetrics(120.0, 140.0, 100)
var s *models.State
for _, m := range l {
s = c.Next(s, m)
assert.Ok(t, !m.IsAnomalous())
}
// Give a big anomaly
m := &models.Metric{Value: 2000}
s = c.Next(s, m)
assert.Ok(t, m.IsAnomalousTrendUp())
// Test up and down anomaly
m = &models.Metric{Value: 190}
s = c.Next(s, m)
assert.Ok(t, m.IsAnomalousTrendUp())
m = &models.Metric{Value: 80}
s = c.Next(s, m)
assert.Ok(t, m.IsAnomalousTrendDown())
// Test normal
m = &models.Metric{Value: 130}
s = c.Next(s, m)
assert.Ok(t, !m.IsAnomalous())
}
开发者ID:nrzipher,项目名称:banshee,代码行数:27,代码来源:cursor_test.go
示例2: TestToFixed
func TestToFixed(t *testing.T) {
assert.Ok(t, ToFixed(1.2345, 2) == "1.23")
assert.Ok(t, ToFixed(10000.12121121, 5) == "10000.12121")
assert.Ok(t, ToFixed(102, 3) == "102")
assert.Ok(t, ToFixed(102.22, 3) == "102.22")
assert.Ok(t, ToFixed(100, 3) == "100")
}
开发者ID:orthogonous,项目名称:banshee,代码行数:7,代码来源:util_test.go
示例3: TestPut
func TestPut(t *testing.T) {
// Open db.
fileName := "db-testing"
db, _ := Open(fileName)
defer os.RemoveAll(fileName)
defer db.Close()
// Put.
m := &models.Metric{
Name: "foo",
Stamp: 1452758773,
Value: 3.14,
Score: 0.1892,
Average: 3.133,
}
err := db.Put(m)
assert.Ok(t, err == nil)
// Must in db
key := encodeKey(m)
value, err := db.db.Get(key, nil)
assert.Ok(t, err == nil)
m1 := &models.Metric{
Name: m.Name,
Stamp: m.Stamp,
}
err = decodeValue(value, m1)
assert.Ok(t, err == nil)
assert.Ok(t, reflect.DeepEqual(m, m1))
}
开发者ID:hit9,项目名称:banshee,代码行数:28,代码来源:db_test.go
示例4: TestHitLimit
func TestHitLimit(t *testing.T) {
// Currently disable logging
log.Disable()
defer log.Enable()
//New and add rules.
config := config.New()
config.Interval = 1
rule1 := &models.Rule{Pattern: "a.*.c.d"}
filter := New()
filter.addRule(rule1)
filter.SetHitLimit(config)
for i := 0; i < config.Detector.IntervalHitLimit; i++ {
//hit rule when counter < intervalHitLimit
rules := filter.MatchedRules(&models.Metric{Name: "a.b.c.d"})
assert.Ok(t, 1 == len(rules))
}
//counter over limit, matched rules = 0
rules := filter.MatchedRules(&models.Metric{Name: "a.b.c.d"})
assert.Ok(t, 0 == len(rules))
time.Sleep(time.Second * 2)
//after interval counter is cleared, matched rules = 1
rules = filter.MatchedRules(&models.Metric{Name: "a.b.c.d"})
assert.Ok(t, 1 == len(rules))
}
开发者ID:hit9,项目名称:banshee,代码行数:26,代码来源:filter_test.go
示例5: TestExampleConfigParsing
func TestExampleConfigParsing(t *testing.T) {
config := New()
err := config.UpdateWithJSONFile("./exampleConfig.json")
assert.Ok(t, err == nil)
defaults := New()
assert.Ok(t, reflect.DeepEqual(config, defaults))
}
开发者ID:nrzipher,项目名称:banshee,代码行数:7,代码来源:config_test.go
示例6: TestDecodeKey
func TestDecodeKey(t *testing.T) {
key := []byte("foo000001f")
m := &models.Metric{}
err := decodeKey(key, m)
assert.Ok(t, err == nil)
assert.Ok(t, m.Name == "foo")
assert.Ok(t, m.Stamp == 36+0xf+horizon)
}
开发者ID:nrzipher,项目名称:banshee,代码行数:8,代码来源:encoding_test.go
示例7: TestOpen
func TestOpen(t *testing.T) {
fileName := "db-testing"
db, err := Open(fileName)
assert.Ok(t, err == nil)
assert.Ok(t, util.IsFileExist(fileName))
db.Close()
os.RemoveAll(fileName)
}
开发者ID:hit9,项目名称:banshee,代码行数:8,代码来源:db_test.go
示例8: TestParseMetric
func TestParseMetric(t *testing.T) {
line := "foo 1449655769 3.14"
m, err := parseMetric(line)
assert.Ok(t, err == nil)
assert.Ok(t, m.Name == "foo")
assert.Ok(t, m.Stamp == uint32(1449655769))
assert.Ok(t, m.Value == 3.14)
}
开发者ID:nrzipher,项目名称:banshee,代码行数:8,代码来源:protocol_test.go
示例9: TestOpen
func TestOpen(t *testing.T) {
fileName := "db-testing"
db, err := Open(fileName, &Options{288, 300})
defer db.Close()
defer os.RemoveAll(fileName)
assert.Ok(t, err == nil)
assert.Ok(t, util.IsFileExist(fileName))
}
开发者ID:nrzipher,项目名称:banshee,代码行数:8,代码来源:db_test.go
示例10: TestDecodeValue
func TestDecodeValue(t *testing.T) {
m := &models.Metric{}
value := []byte("1.23:0.72:0.79")
err := decodeValue(value, m)
assert.Ok(t, err == nil)
assert.Ok(t, m.Value == 1.23)
assert.Ok(t, m.Score == 0.72)
assert.Ok(t, m.Average == 0.79)
}
开发者ID:nrzipher,项目名称:banshee,代码行数:9,代码来源:encoding_test.go
示例11: TestDecode
func TestDecode(t *testing.T) {
s := "1450422576:1.2:3.1"
idx := &models.Index{}
err := decode([]byte(s), idx)
assert.Ok(t, err == nil)
assert.Ok(t, idx.Stamp == 1450422576)
assert.Ok(t, idx.Score == 1.2)
assert.Ok(t, idx.Average == 3.1)
}
开发者ID:nrzipher,项目名称:banshee,代码行数:9,代码来源:encoding_test.go
示例12: TestStampLenEnoughToUse
func TestStampLenEnoughToUse(t *testing.T) {
stamp := uint32(90*365*24*60*60) + horizon
m := &models.Metric{Name: "foo", Stamp: stamp}
key := encodeKey(m)
n := &models.Metric{}
err := decodeKey(key, n)
assert.Ok(t, err == nil)
assert.Ok(t, n.Name == m.Name)
assert.Ok(t, n.Stamp == m.Stamp)
}
开发者ID:nrzipher,项目名称:banshee,代码行数:10,代码来源:encoding_test.go
示例13: TestMakeEventID
func TestMakeEventID(t *testing.T) {
// Metric with the same name but different stamps.
m1 := &models.Metric{Name: "foo", Stamp: 1456815973}
m2 := &models.Metric{Name: "foo", Stamp: 1456815974}
assert.Ok(t, makeEventID(m1) != makeEventID(m2))
// Metric with the same stamp but different names.
m1 = &models.Metric{Name: "foo", Stamp: 1456815973}
m2 = &models.Metric{Name: "bar", Stamp: 1456815973}
assert.Ok(t, makeEventID(m1) != makeEventID(m2))
}
开发者ID:hit9,项目名称:banshee,代码行数:10,代码来源:alerter_test.go
示例14: TestGenerateID
func TestGenerateID(t *testing.T) {
// Metric with the same name but different stamps.
ev1 := NewEvent(&Metric{Name: "foo", Stamp: 1456815973}, nil)
ev2 := NewEvent(&Metric{Name: "foo", Stamp: 1456815974}, nil)
assert.Ok(t, ev1.ID != ev2.ID)
// Metric with the same stamp but different names.
ev1 = NewEvent(&Metric{Name: "foo", Stamp: 1456815973}, nil)
ev2 = NewEvent(&Metric{Name: "bar", Stamp: 1456815973}, nil)
assert.Ok(t, ev1.ID != ev2.ID)
}
开发者ID:yoyojacky,项目名称:banshee,代码行数:10,代码来源:event_test.go
示例15: TestEncoding
func TestEncoding(t *testing.T) {
idx := &models.Index{Stamp: 1450426828, Score: 0.678888, Average: 877.234}
value := encode(idx)
idx1 := &models.Index{}
err := decode(value, idx1)
assert.Ok(t, err == nil)
assert.Ok(t, idx1.Stamp == idx.Stamp)
assert.Ok(t, idx1.Score == 0.67889)
assert.Ok(t, idx1.Average == 877.234)
}
开发者ID:nrzipher,项目名称:banshee,代码行数:10,代码来源:encoding_test.go
示例16: TestNotEnough
// Case count not enough
func TestNotEnough(t *testing.T) {
wf := 0.05
leastC := 18
c := New(wf, leastC)
s := &models.State{Count: leastC - 1, Average: 0.1, StdDev: 0.1}
m := &models.Metric{Value: 0.1}
n := c.Next(s, m)
assert.Ok(t, m.Score == 0)
assert.Ok(t, n.Count == leastC)
}
开发者ID:nrzipher,项目名称:banshee,代码行数:11,代码来源:cursor_test.go
示例17: TestAsFirst
// Case as first
func TestAsFirst(t *testing.T) {
wf := 0.05
leastC := 18
c := New(wf, leastC)
m := &models.Metric{Value: 1.32}
s := c.Next(nil, m)
assert.Ok(t, m.Average == m.Value)
assert.Ok(t, m.Score == 0)
assert.Ok(t, s.Count == 1)
assert.Ok(t, s.StdDev == 0)
}
开发者ID:nrzipher,项目名称:banshee,代码行数:12,代码来源:cursor_test.go
示例18: TestValueEncoding
func TestValueEncoding(t *testing.T) {
// New DB just for testing
db := &DB{numGrid: 288, gridLen: 300}
// Test
s := &models.State{Average: 182.092, StdDev: 1.3, Count: 18}
value := db.encodeValue(s)
n, err := db.decodeValue(value)
assert.Ok(t, err == nil)
assert.Ok(t, n.Average == s.Average)
assert.Ok(t, n.StdDev == s.StdDev)
assert.Ok(t, n.Count == s.Count)
}
开发者ID:nrzipher,项目名称:banshee,代码行数:12,代码来源:encoding_test.go
示例19: TestEncodeKey
func TestEncodeKey(t *testing.T) {
// New DB just for testing
db := &DB{numGrid: 288, gridLen: 300}
period := db.numGrid * db.gridLen
// Test
m := &models.Metric{Name: "foo", Stamp: 1450429041}
gridNo := db.getGridNo(m)
s := fmt.Sprintf("foo:%d", gridNo)
assert.Ok(t, s == string(db.encodeKey(m)))
m.Stamp += uint32(period)
assert.Ok(t, s == string(db.encodeKey(m)))
}
开发者ID:nrzipher,项目名称:banshee,代码行数:12,代码来源:encoding_test.go
示例20: TestRuleBuildRepr
func TestRuleBuildRepr(t *testing.T) {
var rule *Rule
// TrendUp
rule = &Rule{TrendUp: true}
rule.BuildRepr()
assert.Ok(t, rule.Repr == "trend ↑")
// TrendDown
rule = &Rule{TrendDown: true}
rule.BuildRepr()
assert.Ok(t, rule.Repr == "trend ↓")
// TrendUp Or TrendDown
rule = &Rule{TrendUp: true, TrendDown: true}
rule.BuildRepr()
assert.Ok(t, rule.Repr == "trend ↑ || trend ↓")
// Value >= X
rule = &Rule{ThresholdMax: 3.1478}
rule.BuildRepr()
assert.Ok(t, rule.Repr == "value >= 3.148")
// Value <= X
rule = &Rule{ThresholdMin: 3.1478}
rule.BuildRepr()
assert.Ok(t, rule.Repr == "value <= 3.148")
// TrendUp and Value >= X
rule = &Rule{TrendUp: true, ThresholdMax: 1.29}
rule.BuildRepr()
assert.Ok(t, rule.Repr == "(trend ↑ && value >= 1.29)")
// (TrendUp And Value >= X) Or TrendDown
rule = &Rule{TrendDown: true, TrendUp: true, ThresholdMax: 2223.8}
rule.BuildRepr()
assert.Ok(t, rule.Repr == "(trend ↑ && value >= 2223.8) || trend ↓")
// (TrendUp And Value >= X) Or (TrendDown And Value <= X)
rule = &Rule{TrendUp: true, ThresholdMax: 18987, TrendDown: true, ThresholdMin: 781}
rule.BuildRepr()
assert.Ok(t, rule.Repr == "(trend ↑ && value >= 18987) || (trend ↓ && value <= 781)")
}
开发者ID:orthogonous,项目名称:banshee,代码行数:35,代码来源:rule_test.go
注:本文中的github.com/eleme/banshee/util/assert.Ok函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论