Browse code

pkg/networkfs/etchosts: tests for Update method

Docker-DCO-1.1-Signed-off-by: Erik Hollensbe <github@hollensbe.org> (github: erikh)

Erik Hollensbe authored on 2014/08/26 14:23:56
Showing 1 changed files
... ...
@@ -72,3 +72,37 @@ func TestBuildNoIP(t *testing.T) {
72 72
 		t.Fatalf("Expected to find '%s' got '%s'", expected, content)
73 73
 	}
74 74
 }
75
+
76
+func TestUpdate(t *testing.T) {
77
+	file, err := ioutil.TempFile("", "")
78
+	if err != nil {
79
+		t.Fatal(err)
80
+	}
81
+	defer os.Remove(file.Name())
82
+
83
+	if err := Build(file.Name(), "10.11.12.13", "testhostname", "testdomainname", nil); err != nil {
84
+		t.Fatal(err)
85
+	}
86
+
87
+	content, err := ioutil.ReadFile(file.Name())
88
+	if err != nil {
89
+		t.Fatal(err)
90
+	}
91
+
92
+	if expected := "10.11.12.13\ttesthostname.testdomainname testhostname\n"; !bytes.Contains(content, []byte(expected)) {
93
+		t.Fatalf("Expected to find '%s' got '%s'", expected, content)
94
+	}
95
+
96
+	if err := Update(file.Name(), "1.1.1.1", "testhostname"); err != nil {
97
+		t.Fatal(err)
98
+	}
99
+
100
+	content, err = ioutil.ReadFile(file.Name())
101
+	if err != nil {
102
+		t.Fatal(err)
103
+	}
104
+
105
+	if expected := "1.1.1.1\ttesthostname.testdomainname testhostname\n"; !bytes.Contains(content, []byte(expected)) {
106
+		t.Fatalf("Expected to find '%s' got '%s'", expected, content)
107
+	}
108
+}