Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(548)

Side by Side Diff: src/pkg/net/tcp_test.go

Issue 8011043: code review 8011043: net: fix test data corruption in repetitive test runs b... (Closed)
Patch Set: diff -r d448734315d3 https://code.google.com/p/go Created 12 years ago
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments. Please Sign in to add in-line comments.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/pkg/net/ipraw_test.go ('k') | src/pkg/net/udp_test.go » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 The Go Authors. All rights reserved. 1 // Copyright 2012 The Go Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style 2 // Use of this source code is governed by a BSD-style
3 // license that can be found in the LICENSE file. 3 // license that can be found in the LICENSE file.
4 4
5 package net 5 package net
6 6
7 import ( 7 import (
8 "fmt" 8 "fmt"
9 "reflect" 9 "reflect"
10 "runtime" 10 "runtime"
(...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after
164 {"tcp6", "[fe80::1]:3", &TCPAddr{IP: ParseIP("fe80::1"), Port: 3, Zone: "name"}, nil}, 164 {"tcp6", "[fe80::1]:3", &TCPAddr{IP: ParseIP("fe80::1"), Port: 3, Zone: "name"}, nil},
165 {"tcp6", "[fe80::1]:4", &TCPAddr{IP: ParseIP("fe80::1"), Port: 4, Zone: "index"}, nil}, 165 {"tcp6", "[fe80::1]:4", &TCPAddr{IP: ParseIP("fe80::1"), Port: 4, Zone: "index"}, nil},
166 166
167 {"", "127.0.0.1:0", &TCPAddr{IP: IPv4(127, 0, 0, 1), Port: 0}, nil}, // Go 1.0 behavior 167 {"", "127.0.0.1:0", &TCPAddr{IP: IPv4(127, 0, 0, 1), Port: 0}, nil}, // Go 1.0 behavior
168 {"", "[::1]:0", &TCPAddr{IP: ParseIP("::1"), Port: 0}, nil}, // Go 1.0 behavior 168 {"", "[::1]:0", &TCPAddr{IP: ParseIP("::1"), Port: 0}, nil}, // Go 1.0 behavior
169 169
170 {"http", "127.0.0.1:0", nil, UnknownNetworkError("http")}, 170 {"http", "127.0.0.1:0", nil, UnknownNetworkError("http")},
171 } 171 }
172 172
173 func TestResolveTCPAddr(t *testing.T) { 173 func TestResolveTCPAddr(t *testing.T) {
174 » for _, tt := range resolveTCPAddrTests { 174 » for i, tt := range resolveTCPAddrTests {
175 if tt.addr != nil && (tt.addr.Zone == "name" || tt.addr.Zone == "index") { 175 if tt.addr != nil && (tt.addr.Zone == "name" || tt.addr.Zone == "index") {
176 ifi := loopbackInterface() 176 ifi := loopbackInterface()
177 if ifi == nil { 177 if ifi == nil {
178 continue 178 continue
179 } 179 }
180 » » » i := last(tt.litAddr, ']') 180 » » » j := last(tt.litAddr, ']')
181 » » » if i > 0 { 181 » » » if j > 0 {
182 switch tt.addr.Zone { 182 switch tt.addr.Zone {
183 case "name": 183 case "name":
184 » » » » » tt.litAddr = tt.litAddr[:i] + "%" + ifi. Name + tt.litAddr[i:] 184 » » » » » resolveTCPAddrTests[i].litAddr = tt.litA ddr[:j] + "%" + ifi.Name + tt.litAddr[j:]
185 » » » » » tt.addr.Zone = zoneToString(ifi.Index) 185 » » » » » resolveTCPAddrTests[i].addr.Zone = zoneT oString(ifi.Index)
186 case "index": 186 case "index":
187 index := fmt.Sprintf("%v", ifi.Index) 187 index := fmt.Sprintf("%v", ifi.Index)
188 » » » » » tt.litAddr = tt.litAddr[:i] + "%" + inde x + tt.litAddr[i:] 188 » » » » » resolveTCPAddrTests[i].litAddr = tt.litA ddr[:j] + "%" + index + tt.litAddr[j:]
189 » » » » » tt.addr.Zone = index 189 » » » » » resolveTCPAddrTests[i].addr.Zone = index
190 } 190 }
191 } 191 }
192 } 192 }
193 » » addr, err := ResolveTCPAddr(tt.net, tt.litAddr) 193 » » addr, err := ResolveTCPAddr(tt.net, resolveTCPAddrTests[i].litAd dr)
194 if err != tt.err { 194 if err != tt.err {
195 » » » t.Fatalf("ResolveTCPAddr(%v, %v) failed: %v", tt.net, tt .litAddr, err) 195 » » » t.Fatalf("ResolveTCPAddr(%v, %v) failed: %v", tt.net, re solveTCPAddrTests[i].litAddr, err)
196 } 196 }
197 » » if !reflect.DeepEqual(addr, tt.addr) { 197 » » if !reflect.DeepEqual(addr, resolveTCPAddrTests[i].addr) {
198 » » » t.Fatalf("got %#v; expected %#v", addr, tt.addr) 198 » » » t.Fatalf("got %#v; expected %#v", addr, resolveTCPAddrTe sts[i].addr)
199 } 199 }
200 } 200 }
201 } 201 }
202 202
203 var tcpListenerNameTests = []struct { 203 var tcpListenerNameTests = []struct {
204 net string 204 net string
205 laddr *TCPAddr 205 laddr *TCPAddr
206 }{ 206 }{
207 {"tcp4", &TCPAddr{IP: IPv4(127, 0, 0, 1)}}, 207 {"tcp4", &TCPAddr{IP: IPv4(127, 0, 0, 1)}},
208 {"tcp4", &TCPAddr{}}, 208 {"tcp4", &TCPAddr{}},
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after
295 t.Fatalf("Conn.Write failed: %v", err) 295 t.Fatalf("Conn.Write failed: %v", err)
296 } 296 }
297 b := make([]byte, 32) 297 b := make([]byte, 32)
298 if _, err := c.Read(b); err != nil { 298 if _, err := c.Read(b); err != nil {
299 t.Fatalf("Conn.Read failed: %v", err) 299 t.Fatalf("Conn.Read failed: %v", err)
300 } 300 }
301 301
302 <-done 302 <-done
303 } 303 }
304 } 304 }
OLDNEW
« no previous file with comments | « src/pkg/net/ipraw_test.go ('k') | src/pkg/net/udp_test.go » ('j') | no next file with comments »

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b