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

Delta Between Two Patch Sets: src/pkg/net/packetconn_test.go

Issue 7004044: code review 7004044: net: make unix connection tests more robust (Closed)
Left Patch Set: diff -r b9bee6184b4e https://code.google.com/p/go Created 11 years, 3 months ago
Right Patch Set: diff -r d7a66e98c7a6 https://code.google.com/p/go Created 11 years, 3 months 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:
Left: Side by side diff | Download
Right: Side by side diff | Download
« no previous file with change/comment | « src/pkg/net/conn_test.go ('k') | no next file » | no next file with change/comment »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
LEFTRIGHT
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_test 5 package net_test
6 6
7 import ( 7 import (
8 "net" 8 "net"
9 "os" 9 "os"
10 "runtime" 10 "runtime"
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
56 } 56 }
57 os.Remove(tt.addr1) 57 os.Remove(tt.addr1)
58 os.Remove(tt.addr2) 58 os.Remove(tt.addr2)
59 wb = []byte("UNIXGRAM PACKETCONN TEST") 59 wb = []byte("UNIXGRAM PACKETCONN TEST")
60 default: 60 default:
61 continue 61 continue
62 } 62 }
63 63
64 c1, err := net.ListenPacket(tt.net, tt.addr1) 64 c1, err := net.ListenPacket(tt.net, tt.addr1)
65 if err != nil { 65 if err != nil {
66 » » » t.Errorf("net.ListenPacket failed: %v", err) 66 » » » t.Fatalf("net.ListenPacket failed: %v", err)
dfc 2012/12/21 04:21:25 Why have you converted all these to Errorfs ?
67 » » » return
68 } 67 }
69 c1.LocalAddr() 68 c1.LocalAddr()
70 c1.SetDeadline(time.Now().Add(100 * time.Millisecond)) 69 c1.SetDeadline(time.Now().Add(100 * time.Millisecond))
71 c1.SetReadDeadline(time.Now().Add(100 * time.Millisecond)) 70 c1.SetReadDeadline(time.Now().Add(100 * time.Millisecond))
72 c1.SetWriteDeadline(time.Now().Add(100 * time.Millisecond)) 71 c1.SetWriteDeadline(time.Now().Add(100 * time.Millisecond))
73 defer closer(c1, netstr[0], tt.addr1, tt.addr2) 72 defer closer(c1, netstr[0], tt.addr1, tt.addr2)
74 73
75 c2, err := net.ListenPacket(tt.net, tt.addr2) 74 c2, err := net.ListenPacket(tt.net, tt.addr2)
76 if err != nil { 75 if err != nil {
77 » » » t.Errorf("net.ListenPacket failed: %v", err) 76 » » » t.Fatalf("net.ListenPacket failed: %v", err)
78 » » » return
79 } 77 }
80 c2.LocalAddr() 78 c2.LocalAddr()
81 c2.SetDeadline(time.Now().Add(100 * time.Millisecond)) 79 c2.SetDeadline(time.Now().Add(100 * time.Millisecond))
82 c2.SetReadDeadline(time.Now().Add(100 * time.Millisecond)) 80 c2.SetReadDeadline(time.Now().Add(100 * time.Millisecond))
83 c2.SetWriteDeadline(time.Now().Add(100 * time.Millisecond)) 81 c2.SetWriteDeadline(time.Now().Add(100 * time.Millisecond))
84 defer closer(c2, netstr[0], tt.addr1, tt.addr2) 82 defer closer(c2, netstr[0], tt.addr1, tt.addr2)
85 83
86 if _, err := c1.WriteTo(wb, c2.LocalAddr()); err != nil { 84 if _, err := c1.WriteTo(wb, c2.LocalAddr()); err != nil {
87 » » » t.Errorf("net.PacketConn.WriteTo failed: %v", err) 85 » » » t.Fatalf("net.PacketConn.WriteTo failed: %v", err)
88 » » » return
89 } 86 }
90 rb2 := make([]byte, 128) 87 rb2 := make([]byte, 128)
91 if _, _, err := c2.ReadFrom(rb2); err != nil { 88 if _, _, err := c2.ReadFrom(rb2); err != nil {
92 » » » t.Errorf("net.PacketConn.ReadFrom failed: %v", err) 89 » » » t.Fatalf("net.PacketConn.ReadFrom failed: %v", err)
93 » » » return
94 } 90 }
95 if _, err := c2.WriteTo(wb, c1.LocalAddr()); err != nil { 91 if _, err := c2.WriteTo(wb, c1.LocalAddr()); err != nil {
96 » » » t.Errorf("net.PacketConn.WriteTo failed: %v", err) 92 » » » t.Fatalf("net.PacketConn.WriteTo failed: %v", err)
97 » » » return
98 } 93 }
99 rb1 := make([]byte, 128) 94 rb1 := make([]byte, 128)
100 if _, _, err := c1.ReadFrom(rb1); err != nil { 95 if _, _, err := c1.ReadFrom(rb1); err != nil {
101 » » » t.Errorf("net.PacketConn.ReadFrom failed: %v", err) 96 » » » t.Fatalf("net.PacketConn.ReadFrom failed: %v", err)
102 » » » return
103 } 97 }
104 } 98 }
105 } 99 }
106 100
107 func TestConnAndPacketConn(t *testing.T) { 101 func TestConnAndPacketConn(t *testing.T) {
108 for _, tt := range packetConnTests { 102 for _, tt := range packetConnTests {
109 var wb []byte 103 var wb []byte
110 netstr := strings.Split(tt.net, ":") 104 netstr := strings.Split(tt.net, ":")
111 switch netstr[0] { 105 switch netstr[0] {
112 case "udp": 106 case "udp":
113 wb = []byte("UDP PACKETCONN TEST") 107 wb = []byte("UDP PACKETCONN TEST")
114 case "ip": 108 case "ip":
115 switch runtime.GOOS { 109 switch runtime.GOOS {
116 case "plan9": 110 case "plan9":
117 continue 111 continue
118 } 112 }
119 if os.Getuid() != 0 { 113 if os.Getuid() != 0 {
120 continue 114 continue
121 } 115 }
122 id := os.Getpid() & 0xffff 116 id := os.Getpid() & 0xffff
123 wb = newICMPEchoRequest(id, 1, 128, []byte("IP PACKETCON N TEST")) 117 wb = newICMPEchoRequest(id, 1, 128, []byte("IP PACKETCON N TEST"))
124 default: 118 default:
125 continue 119 continue
126 } 120 }
127 121
128 c1, err := net.ListenPacket(tt.net, tt.addr1) 122 c1, err := net.ListenPacket(tt.net, tt.addr1)
129 if err != nil { 123 if err != nil {
130 » » » t.Errorf("net.ListenPacket failed: %v", err) 124 » » » t.Fatalf("net.ListenPacket failed: %v", err)
131 » » » return
132 } 125 }
133 c1.LocalAddr() 126 c1.LocalAddr()
134 c1.SetDeadline(time.Now().Add(100 * time.Millisecond)) 127 c1.SetDeadline(time.Now().Add(100 * time.Millisecond))
135 c1.SetReadDeadline(time.Now().Add(100 * time.Millisecond)) 128 c1.SetReadDeadline(time.Now().Add(100 * time.Millisecond))
136 c1.SetWriteDeadline(time.Now().Add(100 * time.Millisecond)) 129 c1.SetWriteDeadline(time.Now().Add(100 * time.Millisecond))
137 defer c1.Close() 130 defer c1.Close()
138 131
139 c2, err := net.Dial(tt.net, c1.LocalAddr().String()) 132 c2, err := net.Dial(tt.net, c1.LocalAddr().String())
140 if err != nil { 133 if err != nil {
141 » » » t.Errorf("net.Dial failed: %v", err) 134 » » » t.Fatalf("net.Dial failed: %v", err)
142 » » » return
143 } 135 }
144 c2.LocalAddr() 136 c2.LocalAddr()
145 c2.RemoteAddr() 137 c2.RemoteAddr()
146 c2.SetDeadline(time.Now().Add(100 * time.Millisecond)) 138 c2.SetDeadline(time.Now().Add(100 * time.Millisecond))
147 c2.SetReadDeadline(time.Now().Add(100 * time.Millisecond)) 139 c2.SetReadDeadline(time.Now().Add(100 * time.Millisecond))
148 c2.SetWriteDeadline(time.Now().Add(100 * time.Millisecond)) 140 c2.SetWriteDeadline(time.Now().Add(100 * time.Millisecond))
149 defer c2.Close() 141 defer c2.Close()
150 142
151 if _, err := c2.Write(wb); err != nil { 143 if _, err := c2.Write(wb); err != nil {
152 » » » t.Errorf("net.Conn.Write failed: %v", err) 144 » » » t.Fatalf("net.Conn.Write failed: %v", err)
153 » » » return
154 } 145 }
155 rb1 := make([]byte, 128) 146 rb1 := make([]byte, 128)
156 if _, _, err := c1.ReadFrom(rb1); err != nil { 147 if _, _, err := c1.ReadFrom(rb1); err != nil {
157 » » » t.Errorf("net.PacetConn.ReadFrom failed: %v", err) 148 » » » t.Fatalf("net.PacetConn.ReadFrom failed: %v", err)
158 » » » return
159 } 149 }
160 var dst net.Addr 150 var dst net.Addr
161 if netstr[0] == "ip" { 151 if netstr[0] == "ip" {
162 dst = &net.IPAddr{IP: net.IPv4(127, 0, 0, 1)} 152 dst = &net.IPAddr{IP: net.IPv4(127, 0, 0, 1)}
163 } else { 153 } else {
164 dst = c2.LocalAddr() 154 dst = c2.LocalAddr()
165 } 155 }
166 if _, err := c1.WriteTo(wb, dst); err != nil { 156 if _, err := c1.WriteTo(wb, dst); err != nil {
167 » » » t.Errorf("net.PacketConn.WriteTo failed: %v", err) 157 » » » t.Fatalf("net.PacketConn.WriteTo failed: %v", err)
168 » » » return
169 } 158 }
170 rb2 := make([]byte, 128) 159 rb2 := make([]byte, 128)
171 if _, err := c2.Read(rb2); err != nil { 160 if _, err := c2.Read(rb2); err != nil {
172 » » » t.Errorf("net.Conn.Read failed: %v", err) 161 » » » t.Fatalf("net.Conn.Read failed: %v", err)
173 » » » return
174 } 162 }
175 } 163 }
176 } 164 }
LEFTRIGHT

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