github.com/MetalBlockchain/metalgo@v1.11.9/utils/dynamicip/resolver_test.go (about) 1 // Copyright (C) 2019-2024, Ava Labs, Inc. All rights reserved. 2 // See the file LICENSE for licensing terms. 3 4 package dynamicip 5 6 import ( 7 "strings" 8 "testing" 9 10 "github.com/stretchr/testify/require" 11 ) 12 13 func TestNewResolver(t *testing.T) { 14 type test struct { 15 service string 16 err error 17 } 18 tests := []test{ 19 { 20 service: OpenDNSName, 21 err: nil, 22 }, 23 { 24 service: IFConfigName, 25 err: nil, 26 }, 27 { 28 service: IFConfigCoName, 29 err: nil, 30 }, 31 { 32 service: IFConfigMeName, 33 err: nil, 34 }, 35 { 36 service: strings.ToUpper(IFConfigMeName), 37 err: nil, 38 }, 39 { 40 service: "not a valid resolution service name", 41 err: errUnknownResolver, 42 }, 43 } 44 for _, tt := range tests { 45 t.Run(tt.service, func(t *testing.T) { 46 require := require.New(t) 47 _, err := NewResolver(tt.service) 48 require.ErrorIs(err, tt.err) 49 }) 50 } 51 }