@@ -54,6 +54,67 @@ func TestBackend(t *testing.T) {
5454 })
5555 })
5656
57+ Convey ("When sending a TX_ACK packet (no error)" , func () {
58+ p := TXACKPacket {
59+ ProtocolVersion : ProtocolVersion2 ,
60+ RandomToken : 12345 ,
61+ GatewayMAC : [8 ]byte {1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 },
62+ }
63+ b , err := p .MarshalBinary ()
64+ So (err , ShouldBeNil )
65+ _ , err = gwConn .WriteToUDP (b , backendAddr )
66+ So (err , ShouldBeNil )
67+
68+ Convey ("Then the ack is returned by the ack channel" , func () {
69+ ack := <- backend .TXAckChan ()
70+ So (ack , ShouldResemble , gw.TXAck {MAC : p .GatewayMAC , Token : p .RandomToken })
71+ })
72+ })
73+
74+ Convey ("When sending a TX_ACK packet (with error)" , func () {
75+ p := TXACKPacket {
76+ ProtocolVersion : ProtocolVersion2 ,
77+ RandomToken : 12345 ,
78+ GatewayMAC : [8 ]byte {1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 },
79+ Payload : & TXACKPayload {
80+ TXPKACK : TXPKACK {
81+ Error : gw .ErrGPSUnlocked ,
82+ },
83+ },
84+ }
85+ b , err := p .MarshalBinary ()
86+ So (err , ShouldBeNil )
87+ _ , err = gwConn .WriteToUDP (b , backendAddr )
88+ So (err , ShouldBeNil )
89+
90+ Convey ("Then the ack is returned by the ack channel" , func () {
91+ ack := <- backend .TXAckChan ()
92+ So (ack , ShouldResemble , gw.TXAck {MAC : p .GatewayMAC , Token : p .RandomToken , Error : gw .ErrGPSUnlocked })
93+ })
94+ })
95+
96+ Convey ("When sending a TX_ACK packet (with error 'NONE')" , func () {
97+ p := TXACKPacket {
98+ ProtocolVersion : ProtocolVersion2 ,
99+ RandomToken : 12345 ,
100+ GatewayMAC : [8 ]byte {1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 },
101+ Payload : & TXACKPayload {
102+ TXPKACK : TXPKACK {
103+ Error : "NONE" ,
104+ },
105+ },
106+ }
107+ b , err := p .MarshalBinary ()
108+ So (err , ShouldBeNil )
109+ _ , err = gwConn .WriteToUDP (b , backendAddr )
110+ So (err , ShouldBeNil )
111+
112+ Convey ("Then the ack is returned by the ack channel" , func () {
113+ ack := <- backend .TXAckChan ()
114+ So (ack , ShouldResemble , gw.TXAck {MAC : p .GatewayMAC , Token : p .RandomToken })
115+ })
116+ })
117+
57118 Convey ("When sending a PUSH_DATA packet with stats" , func () {
58119 p := PushDataPacket {
59120 ProtocolVersion : ProtocolVersion2 ,
0 commit comments