Skip to content
Snippets Groups Projects
Commit c30ce8ae authored by Oliver Herms's avatar Oliver Herms
Browse files

Test recv fail case

parent 25db2ef8
No related branches found
No related tags found
No related merge requests found
......@@ -127,6 +127,19 @@ func TestProcessIngressPacket(t *testing.T) {
expectedErr string
expected *mockDev
}{
{
name: "Recv Fail",
dev: &dev{
name: "eth0",
sys: &mockSys{
wantFailRecvPacket: true,
},
},
mockDev: &mockDev{},
wantFail: true,
expectedErr: "receiving packet failed: Fail",
expected: &mockDev{},
},
{
name: "Decode Fail",
dev: &dev{
......
......@@ -26,10 +26,7 @@ type mockSys struct {
wantFailMcastJoin bool
wantFailSendPacket bool
wantFailRecvPacket bool
recvPktCount int
recvPktPkt []byte
stopRecvPktFail chan struct{}
stopRecvPktGraceful chan struct{}
closePacketSocketCalled bool
}
......@@ -68,23 +65,8 @@ func (m *mockSys) sendPacket(pkt []byte, dst [6]byte) error {
func (m *mockSys) recvPacket() (pkt []byte, src types.MACAddress, err error) {
if m.wantFailRecvPacket {
select {
case <-m.stopRecvPktFail:
return nil, [6]byte{}, fmt.Errorf("Fail")
case <-m.stopRecvPktGraceful:
return nil, [6]byte{}, fmt.Errorf("Stopped")
}
return nil, [6]byte{}, fmt.Errorf("Fail")
}
if m.recvPktCount == 1 {
select {
case <-m.stopRecvPktFail:
return nil, [6]byte{}, fmt.Errorf("Socket closed")
case <-m.stopRecvPktGraceful:
return m.recvPktPkt, [6]byte{10, 20, 30, 40, 50, 60}, nil
}
}
m.recvPktCount--
return m.recvPktPkt, [6]byte{10, 20, 30, 40, 50, 60}, nil
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment