PageRenderTime 30ms CodeModel.GetById 24ms RepoModel.GetById 1ms app.codeStats 0ms

/js/lib/Socket.IO-node/tests/transports.flashsocket.js

http://github.com/onedayitwillmake/RealtimeMultiplayerNodeJs
JavaScript | 49 lines | 42 code | 6 blank | 1 comment | 2 complexity | 8d2407ebb8df4ae3ce735b46f8356ece MD5 | raw file
Possible License(s): GPL-2.0, LGPL-2.1, MPL-2.0-no-copyleft-exception, BSD-3-Clause
  1. var io = require('socket.io')
  2. , net = require('net')
  3. , http = require('http')
  4. , assert = require('assert')
  5. , querystring = require('querystring')
  6. , port = 7700
  7. , encode = require('socket.io/utils').encode
  8. , decode = require('socket.io/utils').decode;
  9. function server(callback){
  10. return http.createServer(function(){});
  11. };
  12. function socket(server, options){
  13. if (!options) options = {};
  14. options.log = false;
  15. if (!options.transportOptions) options.transportOptions = {
  16. 'flashsocket': {
  17. // disable heartbeats for tests, re-enabled in heartbeat test below
  18. timeout: null
  19. }
  20. };
  21. return io.listen(server, options);
  22. };
  23. function listen(s, callback){
  24. s._port = port;
  25. s.listen(port, callback);
  26. port++;
  27. return s;
  28. };
  29. module.exports = {
  30. 'test xml policy added to connection': function(){
  31. var _server = server()
  32. , _socket = socket(_server);
  33. listen(_server, function(){
  34. var conn = net.createConnection(_server._port);
  35. conn.write('<policy-file-request/>\0');
  36. conn.on('data', function(data){
  37. assert.ok(data.toString().indexOf('<allow-access-from domain="*" to-ports="*"/>') !== -1);
  38. conn.destroy();
  39. _server.close();
  40. });
  41. });
  42. }
  43. }