blob: 73875650f5b9169efe95c768fea9c8fdfa85a413 [file] [log] [blame]
// Copyright 2015 The Vanadium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package discovery
import (
"testing"
"v.io/v23/discovery"
)
func TestValidateAttributes(t *testing.T) {
valids := []discovery.Attributes{
discovery.Attributes{"key": "v"},
discovery.Attributes{"k_e.y": "v"},
discovery.Attributes{"k!": "v"},
}
for i, attrs := range valids {
if err := validateAttributes(attrs); err != nil {
t.Errorf("[%d]: valid attributes got error: %v", i, err)
}
}
invalids := []discovery.Attributes{
discovery.Attributes{"_key": "v"},
discovery.Attributes{"k=ey": "v"},
discovery.Attributes{"key\n": "v"},
}
for i, attrs := range invalids {
if err := validateAttributes(attrs); err == nil {
t.Errorf("[%d]: invalid attributes didn't get error", i)
}
}
}