lnd.xprv/lnwire/node_announcement_test.go
2019-01-07 12:53:40 -08:00

43 lines
840 B
Go

package lnwire
import "testing"
// TestNodeAliasValidation tests that the NewNodeAlias method will only accept
// valid node announcements.
func TestNodeAliasValidation(t *testing.T) {
t.Parallel()
var testCases = []struct {
alias string
valid bool
}{
// UTF-8 alias with valid length.
{
alias: "meruem",
valid: true,
},
// UTF-8 alias with invalid length.
{
alias: "p3kysxqr23swl33m6h5grmzddgw5nsgkky3g52zc6frpwz",
valid: false,
},
// String with non UTF-8 characters.
{
alias: "\xE0\x80\x80",
valid: false,
},
}
for i, testCase := range testCases {
_, err := NewNodeAlias(testCase.alias)
switch {
case err != nil && testCase.valid:
t.Fatalf("#%v: alias should have been invalid", i)
case err == nil && !testCase.valid:
t.Fatalf("#%v: invalid alias was missed", i)
}
}
}