mirror of https://github.com/hashicorp/consul
61 lines
1.6 KiB
Go
61 lines
1.6 KiB
Go
|
// Copyright (c) HashiCorp, Inc.
|
||
|
// SPDX-License-Identifier: BUSL-1.1
|
||
|
|
||
|
//go:build !consulent
|
||
|
|
||
|
package discovery
|
||
|
|
||
|
import (
|
||
|
"github.com/hashicorp/consul/acl"
|
||
|
)
|
||
|
|
||
|
func getTestCases() []testCaseParseLocality {
|
||
|
testCases := []testCaseParseLocality{
|
||
|
{
|
||
|
name: "test [.<datacenter>.dc]",
|
||
|
labels: []string{"test-dc", "dc"},
|
||
|
enterpriseDNSConfig: EnterpriseDNSConfig{},
|
||
|
expectedResult: QueryLocality{
|
||
|
EnterpriseMeta: acl.EnterpriseMeta{},
|
||
|
Datacenter: "test-dc",
|
||
|
},
|
||
|
expectedOK: true,
|
||
|
},
|
||
|
{
|
||
|
name: "test [.<peer>.peer]",
|
||
|
labels: []string{"test-peer", "peer"},
|
||
|
enterpriseDNSConfig: EnterpriseDNSConfig{},
|
||
|
expectedResult: QueryLocality{
|
||
|
EnterpriseMeta: acl.EnterpriseMeta{},
|
||
|
Peer: "test-peer",
|
||
|
},
|
||
|
expectedOK: true,
|
||
|
},
|
||
|
{
|
||
|
name: "test 1 label",
|
||
|
labels: []string{"test-peer"},
|
||
|
enterpriseDNSConfig: EnterpriseDNSConfig{},
|
||
|
expectedResult: QueryLocality{
|
||
|
EnterpriseMeta: acl.EnterpriseMeta{},
|
||
|
PeerOrDatacenter: "test-peer",
|
||
|
},
|
||
|
expectedOK: true,
|
||
|
},
|
||
|
{
|
||
|
name: "test 0 labels",
|
||
|
labels: []string{},
|
||
|
enterpriseDNSConfig: EnterpriseDNSConfig{},
|
||
|
expectedResult: QueryLocality{},
|
||
|
expectedOK: true,
|
||
|
},
|
||
|
{
|
||
|
name: "test 3 labels returns not found",
|
||
|
labels: []string{"test-dc", "dc", "test-blah"},
|
||
|
enterpriseDNSConfig: EnterpriseDNSConfig{},
|
||
|
expectedResult: QueryLocality{},
|
||
|
expectedOK: false,
|
||
|
},
|
||
|
}
|
||
|
return testCases
|
||
|
}
|