|
@@ -6,6 +6,7 @@ import (
|
|
|
"net"
|
|
|
"os"
|
|
|
"testing"
|
|
|
+ "time"
|
|
|
)
|
|
|
|
|
|
func TestDoorInputConnection(t *testing.T) {
|
|
@@ -86,6 +87,13 @@ func TestDoorInputConnection(t *testing.T) {
|
|
|
t.Errorf("Height not 43: %d", Height)
|
|
|
}
|
|
|
|
|
|
+ // These are the commands sent to detect ... throw this all away.
|
|
|
+ buffer = make([]byte, 128)
|
|
|
+ server.SetReadDeadline(time.Now().Add(time.Millisecond * 20))
|
|
|
+ r, err := server.Read(buffer)
|
|
|
+ // t.Errorf("Buffer : %#v\n", buffer[:r])
|
|
|
+ server.SetReadDeadline(time.Time{})
|
|
|
+
|
|
|
keytest := map[string][]int{
|
|
|
"\x1b": []int{0x1b},
|
|
|
"\x0d\x00": []int{0x0d},
|
|
@@ -137,6 +145,14 @@ func TestDoorInputConnection(t *testing.T) {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ buffer = make([]byte, 128)
|
|
|
+ server.SetReadDeadline(time.Now().Add(time.Millisecond * 20))
|
|
|
+ r, err = server.Read(buffer)
|
|
|
+ if r != 0 {
|
|
|
+ t.Errorf("Buffer After KeyTest: %#v\n", buffer[:r])
|
|
|
+ }
|
|
|
+ server.SetReadDeadline(time.Time{})
|
|
|
+
|
|
|
timeout := d.WaitKey(0, 50)
|
|
|
if timeout != -1 {
|
|
|
t.Errorf("Expected timeout, got %d / %X", timeout, timeout)
|
|
@@ -153,6 +169,17 @@ func TestDoorInputConnection(t *testing.T) {
|
|
|
t.Errorf("Expected Input(5) = 12345, but got %#v", input)
|
|
|
}
|
|
|
|
|
|
+ // I'm not sure what they extra characters are in the buffer here.
|
|
|
+ buffer = make([]byte, 128)
|
|
|
+ server.SetReadDeadline(time.Now().Add(time.Millisecond * 20))
|
|
|
+ r, err = server.Read(buffer)
|
|
|
+ result := string(buffer[:r])
|
|
|
+ expected := " \x08\x08\x08\x08\x0812345\x07\x07\x07\x07\x07"
|
|
|
+ if result != expected {
|
|
|
+ t.Errorf("Buffer Input(5): Expected %#v, got %#v\n", expected, result)
|
|
|
+ }
|
|
|
+ server.SetReadDeadline(time.Time{})
|
|
|
+
|
|
|
buffer = []byte("12345678\x08\x089\r")
|
|
|
server.Write(buffer)
|
|
|
input = d.Input(5)
|