Files
weave-scope/vendor/github.com/c9s/goprocinfo/linux/net_tcp_test.go
2015-12-04 13:57:32 +00:00

89 lines
2.4 KiB
Go

package linux
import (
"reflect"
"testing"
)
func TestReadNetTCP(t *testing.T) {
tcp, err := ReadNetTCPSockets("proc/net_tcp", NetIPv4Decoder)
if err != nil {
t.Fatal("net tcp read fail", err)
}
expected := &NetTCPSockets{
Sockets: []NetTCPSocket{
NetTCPSocket{
NetSocket: NetSocket{
LocalAddress: "127.0.0.1:8080", RemoteAddress: "0.0.0.0:0", Status: 10,
TxQueue: 0, RxQueue: 0, Uid: 1000, Inode: 569261, SocketReferenceCount: 1,
},
RetransmitTimeout: 100, PredictedTick: 0, AckQuick: 0, AckPingpong: false,
SendingCongestionWindow: 10, SlowStartSizeThreshold: -1,
},
NetTCPSocket{
NetSocket: NetSocket{
LocalAddress: "0.0.0.0:80", RemoteAddress: "0.0.0.0:0", Status: 10,
TxQueue: 0, RxQueue: 0, Uid: 0, Inode: 4609, SocketReferenceCount: 1,
},
RetransmitTimeout: 100, PredictedTick: 0, AckQuick: 0, AckPingpong: false,
SendingCongestionWindow: 10, SlowStartSizeThreshold: -1,
},
NetTCPSocket{
NetSocket: NetSocket{
LocalAddress: "0.0.0.0:22", RemoteAddress: "0.0.0.0:0", Status: 10,
TxQueue: 0, RxQueue: 0, Uid: 0, Inode: 420553, SocketReferenceCount: 1,
},
RetransmitTimeout: 100, PredictedTick: 0, AckQuick: 0, AckPingpong: false,
SendingCongestionWindow: 10, SlowStartSizeThreshold: -1,
},
NetTCPSocket{
NetSocket: NetSocket{
LocalAddress: "10.0.7.21:22", RemoteAddress: "10.0.251.11:53280", Status: 1,
TxQueue: 96, RxQueue: 0, Uid: 0, Inode: 582338, SocketReferenceCount: 4,
},
RetransmitTimeout: 29, PredictedTick: 4, AckQuick: 13, AckPingpong: true,
SendingCongestionWindow: 10, SlowStartSizeThreshold: -1,
},
},
}
if !reflect.DeepEqual(tcp, expected) {
t.Errorf("not equal to expected %+v", expected)
}
t.Logf("%+v", tcp)
}
func TestReadNetTCP6(t *testing.T) {
tcp, err := ReadNetTCPSockets("proc/net_tcp6", NetIPv6Decoder)
if err != nil {
t.Fatal("net tcp read fail", err)
}
expected := &NetTCPSockets{
Sockets: []NetTCPSocket{
NetTCPSocket{
NetSocket: NetSocket{
LocalAddress: ":::22", RemoteAddress: ":::0", Status: 10,
TxQueue: 0, RxQueue: 0, Uid: 0, Inode: 420555, SocketReferenceCount: 1,
},
RetransmitTimeout: 100, PredictedTick: 0, AckQuick: 0, AckPingpong: false,
SendingCongestionWindow: 2, SlowStartSizeThreshold: -1,
},
},
}
if !reflect.DeepEqual(tcp, expected) {
t.Errorf("not equal to expected %+v", expected)
}
t.Logf("%+v", tcp)
}