github.com/verrazzano/verrazzano@v1.7.1/tests/e2e/pkg/dns_test.go (about) 1 // Copyright (c) 2021, Oracle and/or its affiliates. 2 // Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 4 package pkg 5 6 import ( 7 asserts "github.com/stretchr/testify/assert" 8 "testing" 9 ) 10 11 // TestDNSWildcards tests if a string uses a DNS wildcard 12 // Given a set of strings 13 // WHEN a string has a valid DNS wildcard syntax 14 // THEN return true 15 func TestValidWildcard(t *testing.T) { 16 assert := asserts.New(t) 17 tests := []struct { 18 name string 19 data string 20 domain string 21 }{ 22 { 23 name: "test1", 24 data: "nip.io", 25 domain: "nip.io", 26 }, 27 { 28 name: "test2", 29 data: "a.nip.io", 30 domain: "nip.io", 31 }, 32 { 33 name: "test3", 34 data: "a.nip.io:33", 35 domain: "nip.io", 36 }, 37 { 38 name: "test4", 39 data: "a.nip.io:33", 40 domain: "nip.io", 41 }, 42 { 43 name: "test5", 44 data: "123.23.344.343.nip.io/foo:33", 45 domain: "nip.io", 46 }, 47 { 48 name: "test6", 49 data: "a.nip.io", 50 domain: "nip.io", 51 }, 52 { 53 name: "test7", 54 data: "a.sslip.io", 55 domain: "sslip.io", 56 }, 57 } 58 for _, test := range tests { 59 t.Run(test.name, func(t *testing.T) { 60 assert.True(HasWildcardDNS(test.data), test.name+" failed") 61 assert.Equal(GetWildcardDNS(test.data), test.domain, test.name+" failed") 62 }) 63 } 64 } 65 66 // TestNotWildcard tests if a string does not use a DNS wildcard 67 // Given a set of strings 68 // WHEN a string does not have a valid DNS wildcard syntax 69 // THEN return false 70 func TestNotWildcard(t *testing.T) { 71 assert := asserts.New(t) 72 tests := []struct { 73 name string 74 data string 75 }{ 76 { 77 name: "test1", 78 data: "xipp.io", 79 }, 80 { 81 name: "test2", 82 data: "xipio.a", 83 }, 84 { 85 name: "test5", 86 data: "123.23.344.343.xip:33", 87 }, 88 { 89 name: "test6", 90 data: "nip.b", 91 }, 92 { 93 name: "test7", 94 data: "sslip.b", 95 }, 96 } 97 for _, test := range tests { 98 t.Run(test.name, func(t *testing.T) { 99 assert.False(HasWildcardDNS(test.data), test.name+" failed") 100 }) 101 } 102 }