1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129
|
package dns
import (
"testing"
"github.com/stretchr/testify/assert"
)
func TestRecord_ContainsHelper(t *testing.T) {
tm1 := []string{
"test1",
"test2",
"test3",
}
assert.Equal(t, contains(tm1, "test1"), true)
assert.Equal(t, contains(tm1, "test2"), true)
assert.Equal(t, contains(tm1, "test3"), true)
assert.Equal(t, contains(tm1, "test4"), false)
}
func TestRecord_ARecord(t *testing.T) {
a := NewARecord()
f := []string{
"name",
"ttl",
"active",
"target",
}
assert.Equal(t, a.fieldMap, f)
assert.Equal(t, a.fieldMap, a.GetAllowedFields())
assert.Equal(t, a.SetField("name", "test1"), nil)
assert.Equal(t, a.SetField("doesntExist", "test1"), &RecordError{fieldName: "doesntExist"})
a.SetField("ttl", 900)
a.SetField("active", true)
a.SetField("target", "test2")
assert.Equal(t, a.ToMap(), map[string]interface{}{
"name": "test1",
"ttl": 900,
"active": true,
"target": "test2",
})
}
func TestRecord_AllRecords_WrongTypes(t *testing.T) {
a := NewARecord()
e := a.SetField("name", 1)
assert.Equal(t, e, &RecordError{fieldName: "name"})
a1 := NewAaaaRecord()
e1 := a1.SetField("name", 1)
assert.Equal(t, e1, &RecordError{fieldName: "name"})
a2 := NewAfsdbRecord()
e = a2.SetField("name", 1)
assert.Equal(t, e, &RecordError{fieldName: "name"})
a3 := NewCnameRecord()
e = a3.SetField("name", 1)
assert.Equal(t, e, &RecordError{fieldName: "name"})
a4 := NewDnskeyRecord()
e = a4.SetField("name", 1)
assert.Equal(t, e, &RecordError{fieldName: "name"})
a5 := NewDsRecord()
e = a5.SetField("name", 1)
assert.Equal(t, e, &RecordError{fieldName: "name"})
a6 := NewHinfoRecord()
e = a6.SetField("name", 1)
assert.Equal(t, e, &RecordError{fieldName: "name"})
a7 := NewLocRecord()
e = a7.SetField("name", 1)
assert.Equal(t, e, &RecordError{fieldName: "name"})
a8 := NewMxRecord()
e = a8.SetField("name", 1)
assert.Equal(t, e, &RecordError{fieldName: "name"})
a9 := NewNaptrRecord()
e = a9.SetField("name", 1)
assert.Equal(t, e, &RecordError{fieldName: "name"})
a10 := NewNsRecord()
e = a10.SetField("name", 1)
assert.Equal(t, e, &RecordError{fieldName: "name"})
a11 := NewNsec3Record()
e = a11.SetField("name", 1)
assert.Equal(t, e, &RecordError{fieldName: "name"})
a12 := NewNsec3paramRecord()
e = a12.SetField("name", 1)
assert.Equal(t, e, &RecordError{fieldName: "name"})
a13 := NewPtrRecord()
e = a13.SetField("name", 1)
assert.Equal(t, e, &RecordError{fieldName: "name"})
a14 := NewRpRecord()
e = a14.SetField("name", 1)
assert.Equal(t, e, &RecordError{fieldName: "name"})
a15 := NewRrsigRecord()
e = a15.SetField("name", 1)
assert.Equal(t, e, &RecordError{fieldName: "name"})
a16 := NewSoaRecord()
e = a16.SetField("ttl", "test")
assert.Equal(t, e, &RecordError{fieldName: "ttl"})
a17 := NewSpfRecord()
e = a17.SetField("name", 1)
assert.Equal(t, e, &RecordError{fieldName: "name"})
a18 := NewSrvRecord()
e = a18.SetField("name", 1)
assert.Equal(t, e, &RecordError{fieldName: "name"})
a19 := NewSshfpRecord()
e = a19.SetField("name", 1)
assert.Equal(t, e, &RecordError{fieldName: "name"})
a20 := NewTxtRecord()
e = a20.SetField("name", 1)
assert.Equal(t, e, &RecordError{fieldName: "name"})
}
|