|
1 var rawData = new Uint8Array([65,66,67,68]); |
|
2 var data = String.fromCharCode.apply(null, rawData); |
|
3 |
|
4 function UDPSocketListener(){} |
|
5 |
|
6 UDPSocketListener.prototype = { |
|
7 QueryInterface : XPCOMUtils.generateQI([Ci.nsIUDPSocketListener]), |
|
8 |
|
9 onPacketReceived : function(aSocket, aMessage){ |
|
10 var mData = String.fromCharCode.apply(null, aMessage.rawData); |
|
11 do_check_eq(mData, data); |
|
12 do_check_eq(mData, aMessage.data); |
|
13 do_test_finished(); |
|
14 }, |
|
15 |
|
16 onStopListening: function(aSocket, aStatus){} |
|
17 }; |
|
18 |
|
19 |
|
20 function run_test(){ |
|
21 var socket = Cc["@mozilla.org/network/udp-socket;1"].createInstance(Ci.nsIUDPSocket); |
|
22 |
|
23 socket.init(-1, true); |
|
24 do_print("Port assigned : " + socket.port); |
|
25 socket.asyncListen(new UDPSocketListener()); |
|
26 |
|
27 var written = socket.send("127.0.0.1", socket.port, rawData, rawData.length); |
|
28 do_check_eq(written, data.length); |
|
29 do_test_pending(); |
|
30 } |
|
31 |