本文整理汇总了Golang中github.com/hashicorp/consul-template/dependency.ParseCatalogNode函数的典型用法代码示例。如果您正苦于以下问题:Golang ParseCatalogNode函数的具体用法?Golang ParseCatalogNode怎么用?Golang ParseCatalogNode使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了ParseCatalogNode函数的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: TestNodeFunc_missingData
func TestNodeFunc_missingData(t *testing.T) {
d, err := dep.ParseCatalogNode("@non-existing")
if err != nil {
t.Fatal(err)
}
brain := NewBrain()
used := make(map[string]dep.Dependency)
missing := make(map[string]dep.Dependency)
f := nodeFunc(brain, used, missing)
result, err := f("@non-existing")
if err != nil {
t.Fatal(err)
}
if result != nil {
t.Errorf("expected %q to be nil", result)
}
if _, ok := used[d.HashCode()]; !ok {
t.Errorf("expected dep to be used")
}
if _, ok := missing[d.HashCode()]; !ok {
t.Errorf("expected dep to be missing")
}
}
开发者ID:necroscope,项目名称:consul-template,代码行数:29,代码来源:template_functions_test.go
示例2: nodeFunc
func nodeFunc(brain *Brain,
used, missing map[string]dep.Dependency) func(...string) (*dep.NodeDetail, error) {
return func(s ...string) (*dep.NodeDetail, error) {
d, err := dep.ParseCatalogNode(s...)
if err != nil {
return nil, err
}
addDependency(used, d)
if value, ok := brain.Recall(d); ok {
return value.(*dep.NodeDetail), nil
}
addDependency(missing, d)
return nil, nil
}
}
开发者ID:hashbrowncipher,项目名称:consul-template,代码行数:20,代码来源:template_functions.go
示例3: TestNodeFunc_hasData
func TestNodeFunc_hasData(t *testing.T) {
d, err := dep.ParseCatalogNode("@existing")
if err != nil {
t.Fatal(err)
}
data := &dep.NodeDetail{
Node: &dep.Node{Node: "a"},
Services: make(dep.NodeServiceList, 0),
}
brain := NewBrain()
brain.Remember(d, data)
used := make(map[string]dep.Dependency)
missing := make(map[string]dep.Dependency)
f := nodeFunc(brain, used, missing)
result, err := f("@existing")
if err != nil {
t.Fatal(err)
}
expected := data
if !reflect.DeepEqual(result, expected) {
t.Errorf("expected %q to be %q", result, expected)
}
if len(missing) != 0 {
t.Errorf("expected missing to have 0 elements, but had %d", len(missing))
}
if _, ok := used[d.HashCode()]; !ok {
t.Errorf("expected dep to be used")
}
}
开发者ID:necroscope,项目名称:consul-template,代码行数:36,代码来源:template_functions_test.go
示例4: TestExecute_renders
//.........这里部分代码省略.........
brain := NewBrain()
var d dep.Dependency
d, err = dep.ParseDatacenters()
if err != nil {
t.Fatal(err)
}
brain.Remember(d, []string{"dc1", "dc2"})
d, err = dep.ParseFile("/path/to/file")
if err != nil {
t.Fatal(err)
}
brain.Remember(d, "some content")
d, err = dep.ParseStoreKey("config/redis/maxconns")
if err != nil {
t.Fatal(err)
}
brain.Remember(d, "5")
d, err = dep.ParseStoreKeyPrefix("config/redis")
if err != nil {
t.Fatal(err)
}
brain.Remember(d, []*dep.KeyPair{
&dep.KeyPair{Key: "", Value: ""},
&dep.KeyPair{Key: "admin/port", Value: "1134"},
&dep.KeyPair{Key: "maxconns", Value: "5"},
&dep.KeyPair{Key: "minconns", Value: "2"},
})
d, err = dep.ParseCatalogNode()
if err != nil {
t.Fatal(err)
}
brain.Remember(d, &dep.NodeDetail{
Node: &dep.Node{Node: "node1"},
Services: dep.NodeServiceList([]*dep.NodeService{
&dep.NodeService{
Service: "service1",
},
}),
})
d, err = dep.ParseCatalogNodes("")
if err != nil {
t.Fatal(err)
}
brain.Remember(d, []*dep.Node{
&dep.Node{Node: "node1"},
&dep.Node{Node: "node2"},
})
d, err = dep.ParseHealthServices("webapp")
if err != nil {
t.Fatal(err)
}
brain.Remember(d, []*dep.HealthService{
&dep.HealthService{
Node: "node1",
Address: "1.2.3.4",
Tags: []string{"release"},
},
&dep.HealthService{
开发者ID:necroscope,项目名称:consul-template,代码行数:67,代码来源:template_test.go
注:本文中的github.com/hashicorp/consul-template/dependency.ParseCatalogNode函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论