refactor sendPingReply and added first unit test for login
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
parent
e0015b6d73
commit
74f66ffce2
43
sending_test.go
Normal file
43
sending_test.go
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
"net"
|
||||||
|
"testing"
|
||||||
|
)
|
||||||
|
|
||||||
|
// Test scafolding
|
||||||
|
func TestSendLogin(t *testing.T) {
|
||||||
|
testTable := []struct {
|
||||||
|
name string
|
||||||
|
pass string
|
||||||
|
resultBuffer []byte
|
||||||
|
resultLenght int
|
||||||
|
// input, output
|
||||||
|
}{
|
||||||
|
{
|
||||||
|
name: "happy",
|
||||||
|
pass: "happy2",
|
||||||
|
resultBuffer: []byte{140, 15, 0, 104, 97, 112, 112, 121, 32, 104, 97, 112, 112, 121, 50, 0, 0},
|
||||||
|
resultLenght: 17,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
for _, tt := range testTable {
|
||||||
|
t.Run(tt.name, func(t *testing.T) {
|
||||||
|
// call function or method under test
|
||||||
|
// ....
|
||||||
|
// check respose
|
||||||
|
server, client := net.Pipe()
|
||||||
|
|
||||||
|
go func() {
|
||||||
|
sendLogin(client, tt.name, tt.pass)
|
||||||
|
}()
|
||||||
|
|
||||||
|
reply := make([]byte, 4096)
|
||||||
|
length, _ := server.Read(reply)
|
||||||
|
if length != tt.resultLenght {
|
||||||
|
t.Errorf("Expected length %v, got %v buffer: %v for %s / %s", tt.resultLenght, length, reply[0:length], tt.name, tt.pass)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user