mirror of
https://github.com/golang/net.git
synced 2026-03-31 18:37:08 +09:00
For golang/go#58547 Change-Id: I119d820824f82bfdd236c6826f960d0c934745ca Reviewed-on: https://go-review.googlesource.com/c/net/+/566295 LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Jonathan Amsterdam <jba@google.com>
44 lines
1.0 KiB
Go
44 lines
1.0 KiB
Go
// Copyright 2023 The Go Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style
|
|
// license that can be found in the LICENSE file.
|
|
|
|
//go:build go1.21
|
|
|
|
package quic
|
|
|
|
import "testing"
|
|
|
|
func TestPing(t *testing.T) {
|
|
tc := newTestConn(t, clientSide)
|
|
tc.handshake()
|
|
|
|
tc.conn.ping(appDataSpace)
|
|
tc.wantFrame("connection should send a PING frame",
|
|
packetType1RTT, debugFramePing{})
|
|
|
|
tc.advanceToTimer()
|
|
tc.wantFrame("on PTO, connection should send another PING frame",
|
|
packetType1RTT, debugFramePing{})
|
|
|
|
tc.wantIdle("after sending PTO probe, no additional frames to send")
|
|
}
|
|
|
|
func TestAck(t *testing.T) {
|
|
tc := newTestConn(t, serverSide)
|
|
tc.handshake()
|
|
|
|
// Send two packets, to trigger an immediate ACK.
|
|
tc.writeFrames(packetType1RTT,
|
|
debugFramePing{},
|
|
)
|
|
tc.writeFrames(packetType1RTT,
|
|
debugFramePing{},
|
|
)
|
|
tc.wantFrame("connection should respond to ack-eliciting packet with an ACK frame",
|
|
packetType1RTT,
|
|
debugFrameAck{
|
|
ranges: []i64range[packetNumber]{{0, 4}},
|
|
},
|
|
)
|
|
}
|