Files
findos/internal/fingerprint/packet_test.go
Dev 4d51c65060
Some checks failed
Go CI / test (push) Has been cancelled
up
2025-09-13 12:30:01 +03:00

31 lines
733 B
Go

package fingerprint
import (
"testing"
"github.com/google/gopacket"
"github.com/google/gopacket/layers"
)
func TestBuildSYNPacket(t *testing.T) {
data, err := BuildSYNPacket("192.0.2.1", "198.51.100.2", 12345, 80)
if err != nil {
t.Fatalf("BuildSYNPacket returned error: %v", err)
}
packet := gopacket.NewPacket(data, layers.LayerTypeIPv4, gopacket.Default)
if packet == nil {
t.Fatalf("Failed to decode packet")
}
if ipLayer := packet.Layer(layers.LayerTypeIPv4); ipLayer == nil {
t.Fatalf("IPv4 layer not found")
}
tcpLayer := packet.Layer(layers.LayerTypeTCP)
if tcpLayer == nil {
t.Fatalf("TCP layer not found")
}
tcp, _ := tcpLayer.(*layers.TCP)
if !tcp.SYN {
t.Fatalf("Expected SYN flag set")
}
}