github.com/zhuohuang-hust/src-cbuild@v0.0.0-20230105071821-c7aab3e7c840/mergeCode/libnetwork/drivers/bridge/resolvconf_test.go (about) 1 package bridge 2 3 import ( 4 "bytes" 5 "testing" 6 ) 7 8 func TestResolveConfRead(t *testing.T) { 9 b, err := readResolvConf() 10 if err != nil { 11 t.Fatalf("Failed to read resolv.conf: %v", err) 12 } 13 14 if b == nil { 15 t.Fatal("Reading resolv.conf returned no content") 16 } 17 } 18 19 func TestResolveConfReadLines(t *testing.T) { 20 commentChar := []byte("#") 21 22 b, _ := readResolvConf() 23 lines := getLines(b, commentChar) 24 if lines == nil { 25 t.Fatal("Failed to read resolv.conf lines") 26 } 27 28 for _, line := range lines { 29 if bytes.Index(line, commentChar) != -1 { 30 t.Fatal("Returned comment content from resolv.conf") 31 } 32 } 33 } 34 35 func TestResolvConfNameserversAsCIDR(t *testing.T) { 36 resolvConf := `# Commented line 37 nameserver 1.2.3.4 38 39 nameserver 5.6.7.8 # Test 40 ` 41 42 cidrs := getNameserversAsCIDR([]byte(resolvConf)) 43 if expected := 2; len(cidrs) != expected { 44 t.Fatalf("Expected %d nameservers, got %d", expected, len(cidrs)) 45 } 46 47 expected := []string{"1.2.3.4/32", "5.6.7.8/32"} 48 for i, exp := range expected { 49 if cidrs[i] != exp { 50 t.Fatalf("Expected nameservers %s, got %s", exp, cidrs[i]) 51 } 52 } 53 }