forked from quic-go/quic-go
71 lines
1.6 KiB
Go
71 lines
1.6 KiB
Go
package logging_test
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/quic-go/quic-go/internal/protocol"
|
|
"github.com/quic-go/quic-go/internal/wire"
|
|
"github.com/quic-go/quic-go/logging"
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func TestPacketTypeFromHeader(t *testing.T) {
|
|
testCases := []struct {
|
|
name string
|
|
header *wire.Header
|
|
expectedType logging.PacketType
|
|
}{
|
|
{
|
|
name: "Initial packet",
|
|
header: &wire.Header{
|
|
Type: protocol.PacketTypeInitial,
|
|
Version: protocol.Version1,
|
|
},
|
|
expectedType: logging.PacketTypeInitial,
|
|
},
|
|
{
|
|
name: "Handshake packet",
|
|
header: &wire.Header{
|
|
Type: protocol.PacketTypeHandshake,
|
|
Version: protocol.Version1,
|
|
},
|
|
expectedType: logging.PacketTypeHandshake,
|
|
},
|
|
{
|
|
name: "Retry packet",
|
|
header: &wire.Header{
|
|
Type: protocol.PacketTypeRetry,
|
|
Version: protocol.Version1,
|
|
},
|
|
expectedType: logging.PacketTypeRetry,
|
|
},
|
|
{
|
|
name: "0-RTT packet",
|
|
header: &wire.Header{
|
|
Type: protocol.PacketType0RTT,
|
|
Version: protocol.Version1,
|
|
},
|
|
expectedType: logging.PacketType0RTT,
|
|
},
|
|
{
|
|
name: "Version Negotiation packet",
|
|
header: &wire.Header{},
|
|
expectedType: logging.PacketTypeVersionNegotiation,
|
|
},
|
|
{
|
|
name: "Unrecognized packet type",
|
|
header: &wire.Header{
|
|
Version: protocol.Version1,
|
|
},
|
|
expectedType: logging.PacketTypeNotDetermined,
|
|
},
|
|
}
|
|
|
|
for _, tc := range testCases {
|
|
t.Run(tc.name, func(t *testing.T) {
|
|
packetType := logging.PacketTypeFromHeader(tc.header)
|
|
require.Equal(t, tc.expectedType, packetType)
|
|
})
|
|
}
|
|
}
|