1 Star 1 Fork 0

RichardOtc / consul-template

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
brain_test.go 1.55 KB
一键复制 编辑 原始数据 按行查看 历史
Armon Dadgar 提交于 2015-11-16 21:55 . Adding ForceSet to brain
package main
import (
"reflect"
"testing"
dep "github.com/hashicorp/consul-template/dependency"
)
func TestNewBrain(t *testing.T) {
b := NewBrain()
if b.data == nil {
t.Errorf("expected data to not be nil")
}
if b.receivedData == nil {
t.Errorf("expected receivedData to not be nil")
}
}
func TestRecall(t *testing.T) {
b := NewBrain()
d := &dep.CatalogNodes{}
nodes := []*dep.Node{&dep.Node{Node: "node", Address: "address"}}
b.Remember(d, nodes)
data, ok := b.Recall(d)
if !ok {
t.Fatal("expected data from brain")
}
result := data.([]*dep.Node)
if !reflect.DeepEqual(result, nodes) {
t.Errorf("expected %#v to be %#v", result, nodes)
}
}
func TestForceSet(t *testing.T) {
b := NewBrain()
d := &dep.CatalogNodes{}
nodes := []*dep.Node{&dep.Node{Node: "node", Address: "address"}}
b.ForceSet(d.HashCode(), nodes)
data, ok := b.Recall(d)
if !ok {
t.Fatal("expected data from brain")
}
result := data.([]*dep.Node)
if !reflect.DeepEqual(result, nodes) {
t.Errorf("expected %#v to be %#v", result, nodes)
}
}
func TestForget(t *testing.T) {
b := NewBrain()
list := map[dep.Dependency]interface{}{
&dep.CatalogNodes{}: []*dep.Node{},
&dep.CatalogServices{}: []*dep.CatalogService{},
&dep.File{}: "",
&dep.HealthServices{}: []*dep.HealthService{},
&dep.StoreKey{}: "",
&dep.StoreKeyPrefix{}: []*dep.KeyPair{},
}
for d, data := range list {
b.Remember(d, data)
}
for d, _ := range list {
b.Forget(d)
if _, ok := b.Recall(d); ok {
t.Errorf("expected %#v to not be forgotten", d)
}
}
}
Go
1
https://gitee.com/ucasrichard/consul-template.git
git@gitee.com:ucasrichard/consul-template.git
ucasrichard
consul-template
consul-template
master

搜索帮助