pingerchips-js 1.0.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (435) hide show
  1. package/README.md +53 -655
  2. package/index.js +169 -0
  3. package/package.json +20 -59
  4. package/.editorconfig +0 -14
  5. package/.github/ISSUE_TEMPLATE.md +0 -11
  6. package/.github/PULL_REQUEST_TEMPLATE.md +0 -14
  7. package/.github/dependabot.yml +0 -14
  8. package/.github/stale.yml +0 -26
  9. package/.github/workflows/release.yml +0 -112
  10. package/.github/workflows/release_pr.yml +0 -43
  11. package/.github/workflows/run-tests.yml +0 -62
  12. package/.gitmodules +0 -3
  13. package/.prettierrc +0 -2
  14. package/CHANGELOG.md +0 -924
  15. package/LICENCE +0 -19
  16. package/Makefile +0 -78
  17. package/bower.json +0 -28
  18. package/dist/node/pusher.js +0 -10870
  19. package/dist/node/pusher.js.map +0 -1
  20. package/dist/react-native/pusher.js +0 -9
  21. package/dist/react-native/pusher.js.map +0 -1
  22. package/dist/web/json2.js +0 -486
  23. package/dist/web/json2.min.js +0 -1
  24. package/dist/web/pusher-with-encryption.js +0 -7009
  25. package/dist/web/pusher-with-encryption.js.map +0 -1
  26. package/dist/web/pusher-with-encryption.min.js +0 -9
  27. package/dist/web/pusher-with-encryption.min.js.map +0 -1
  28. package/dist/web/pusher.js +0 -4587
  29. package/dist/web/pusher.js.map +0 -1
  30. package/dist/web/pusher.min.js +0 -9
  31. package/dist/web/pusher.min.js.map +0 -1
  32. package/dist/web/sockjs.js +0 -2435
  33. package/dist/web/sockjs.min.js +0 -89
  34. package/dist/worker/pusher-with-encryption.worker.js +0 -6622
  35. package/dist/worker/pusher-with-encryption.worker.js.map +0 -1
  36. package/dist/worker/pusher-with-encryption.worker.min.js +0 -9
  37. package/dist/worker/pusher-with-encryption.worker.min.js.map +0 -1
  38. package/dist/worker/pusher.worker.js +0 -4200
  39. package/dist/worker/pusher.worker.js.map +0 -1
  40. package/dist/worker/pusher.worker.min.js +0 -9
  41. package/dist/worker/pusher.worker.min.js.map +0 -1
  42. package/index.d.ts +0 -29
  43. package/integration_tests_server/index.js +0 -176
  44. package/integration_tests_server/package-lock.json +0 -1177
  45. package/integration_tests_server/package.json +0 -15
  46. package/node.js +0 -1
  47. package/pusher-with-encryption/index.js +0 -1
  48. package/react-native/index.d.ts +0 -29
  49. package/react-native/index.js +0 -1
  50. package/spec/config/jasmine/helpers/reporter.js +0 -14
  51. package/spec/config/jasmine/integration.json +0 -13
  52. package/spec/config/jasmine/unit.json +0 -13
  53. package/spec/config/jasmine/webpack.integration.js +0 -33
  54. package/spec/config/jasmine/webpack.unit.js +0 -30
  55. package/spec/config/karma/available_browsers.json +0 -4957
  56. package/spec/config/karma/config.ci.js +0 -25
  57. package/spec/config/karma/config.common.js +0 -50
  58. package/spec/config/karma/config.integration.js +0 -26
  59. package/spec/config/karma/config.unit.js +0 -10
  60. package/spec/config/karma/config.worker.js +0 -34
  61. package/spec/config/karma/integration.js +0 -24
  62. package/spec/config/karma/unit.js +0 -20
  63. package/spec/javascripts/helpers/mocks.js +0 -274
  64. package/spec/javascripts/helpers/node/integration.js +0 -33
  65. package/spec/javascripts/helpers/node/mock-dom-dependencies.ts +0 -1
  66. package/spec/javascripts/helpers/pusher_integration.js +0 -1
  67. package/spec/javascripts/helpers/pusher_integration_class.ts +0 -12
  68. package/spec/javascripts/helpers/timers/promises.js +0 -9
  69. package/spec/javascripts/helpers/waitsFor.js +0 -37
  70. package/spec/javascripts/helpers/web/integration.js +0 -44
  71. package/spec/javascripts/helpers/worker/mock-dom-dependencies.js +0 -1
  72. package/spec/javascripts/integration/core/cluster_config_spec.js +0 -153
  73. package/spec/javascripts/integration/core/falling_back_spec.js +0 -195
  74. package/spec/javascripts/integration/core/pusher_spec/index.js +0 -68
  75. package/spec/javascripts/integration/core/pusher_spec/test_builder.js +0 -715
  76. package/spec/javascripts/integration/core/timeout_configuration_spec.js +0 -200
  77. package/spec/javascripts/integration/core/transport_lists_spec.js +0 -103
  78. package/spec/javascripts/integration/index.node.js +0 -12
  79. package/spec/javascripts/integration/index.web.js +0 -63
  80. package/spec/javascripts/integration/index.worker.js +0 -13
  81. package/spec/javascripts/integration/web/dom/jsonp_spec.js +0 -97
  82. package/spec/javascripts/integration/web/dom/script_request_spec.js +0 -90
  83. package/spec/javascripts/polyfills/index.js +0 -105
  84. package/spec/javascripts/unit/core/channels/channel_spec.js +0 -355
  85. package/spec/javascripts/unit/core/channels/channels_spec.js +0 -94
  86. package/spec/javascripts/unit/core/channels/encrypted_channel_spec.js +0 -343
  87. package/spec/javascripts/unit/core/channels/presence_channel_spec.js +0 -553
  88. package/spec/javascripts/unit/core/channels/private_channel_spec.js +0 -182
  89. package/spec/javascripts/unit/core/config_spec.js +0 -507
  90. package/spec/javascripts/unit/core/connection/connection_manager_spec.js +0 -656
  91. package/spec/javascripts/unit/core/connection/connection_spec.js +0 -286
  92. package/spec/javascripts/unit/core/connection/handshake_spec.js +0 -160
  93. package/spec/javascripts/unit/core/connection/protocol_spec.js +0 -420
  94. package/spec/javascripts/unit/core/defaults_spec.js +0 -26
  95. package/spec/javascripts/unit/core/events_dispatcher_spec.js +0 -385
  96. package/spec/javascripts/unit/core/http/http_polling_socket_spec.js +0 -60
  97. package/spec/javascripts/unit/core/http/http_request_spec.js +0 -185
  98. package/spec/javascripts/unit/core/http/http_socket_spec.js +0 -370
  99. package/spec/javascripts/unit/core/http/http_streaming_socket_spec.js +0 -56
  100. package/spec/javascripts/unit/core/http/http_xhr_request_spec.js +0 -164
  101. package/spec/javascripts/unit/core/logger_spec.js +0 -133
  102. package/spec/javascripts/unit/core/pusher_spec.js +0 -613
  103. package/spec/javascripts/unit/core/pusher_with_encryption_spec.js +0 -18
  104. package/spec/javascripts/unit/core/strategies/best_connected_ever_strategy_spec.js +0 -104
  105. package/spec/javascripts/unit/core/strategies/delayed_strategy_spec.js +0 -95
  106. package/spec/javascripts/unit/core/strategies/first_connected_strategy_spec.js +0 -68
  107. package/spec/javascripts/unit/core/strategies/if_strategy_spec.js +0 -165
  108. package/spec/javascripts/unit/core/strategies/sequential_strategy_spec.js +0 -213
  109. package/spec/javascripts/unit/core/strategies/transport_strategy_spec.js +0 -250
  110. package/spec/javascripts/unit/core/strategies/websocket_prioritized_cached_strategy_spec.js +0 -400
  111. package/spec/javascripts/unit/core/timeline/timeline_spec.js +0 -153
  112. package/spec/javascripts/unit/core/transports/assistant_to_the_transport_manager_spec.js +0 -223
  113. package/spec/javascripts/unit/core/transports/hosts_and_ports_spec.js +0 -85
  114. package/spec/javascripts/unit/core/transports/transport_connection_spec.js +0 -585
  115. package/spec/javascripts/unit/core/transports/transport_manager_spec.js +0 -64
  116. package/spec/javascripts/unit/core/user_spec.js +0 -303
  117. package/spec/javascripts/unit/core/utils/periodic_timer_spec.js +0 -74
  118. package/spec/javascripts/unit/core/utils/timers_spec.js +0 -157
  119. package/spec/javascripts/unit/core/utils/url_store_spec.js +0 -14
  120. package/spec/javascripts/unit/core/watchlist_spec.js +0 -48
  121. package/spec/javascripts/unit/core_with_runtime/auth/channel_authorizer_spec.js +0 -137
  122. package/spec/javascripts/unit/core_with_runtime/auth/deprecated_channel_authorizer_spec.js +0 -48
  123. package/spec/javascripts/unit/core_with_runtime/auth/user_authorizer_spec.js +0 -128
  124. package/spec/javascripts/unit/core_with_runtime/readme.md +0 -5
  125. package/spec/javascripts/unit/index.node.js +0 -11
  126. package/spec/javascripts/unit/index.web.js +0 -12
  127. package/spec/javascripts/unit/index.worker.js +0 -11
  128. package/spec/javascripts/unit/isomorphic/transports/hosts_and_ports_spec.js +0 -82
  129. package/spec/javascripts/unit/isomorphic/transports/transports_spec.js +0 -202
  130. package/spec/javascripts/unit/node/timeline_sender_spec.js +0 -83
  131. package/spec/javascripts/unit/web/dom/dependency_loader_spec.js +0 -249
  132. package/spec/javascripts/unit/web/dom/jsonp_request_spec.js +0 -130
  133. package/spec/javascripts/unit/web/dom/script_receiver_factory_spec.js +0 -68
  134. package/spec/javascripts/unit/web/http/http_xdomain_request_spec.js +0 -222
  135. package/spec/javascripts/unit/web/pusher_authorizer_spec.js +0 -64
  136. package/spec/javascripts/unit/web/timeline/timeline_sender_spec.js +0 -131
  137. package/spec/javascripts/unit/web/transports/hosts_and_ports_spec.js +0 -127
  138. package/spec/javascripts/unit/web/transports/transports_spec.js +0 -444
  139. package/spec/javascripts/unit/worker/channel_authorizer_spec.js +0 -156
  140. package/spec/javascripts/unit/worker/timeline_sender_spec.js +0 -76
  141. package/src/core/auth/auth_transports.ts +0 -18
  142. package/src/core/auth/channel_authorizer.ts +0 -64
  143. package/src/core/auth/deprecated_channel_authorizer.ts +0 -58
  144. package/src/core/auth/options.ts +0 -78
  145. package/src/core/auth/user_authenticator.ts +0 -62
  146. package/src/core/base64.ts +0 -49
  147. package/src/core/channels/channel.ts +0 -163
  148. package/src/core/channels/channel_table.ts +0 -7
  149. package/src/core/channels/channels.ts +0 -85
  150. package/src/core/channels/encrypted_channel.ts +0 -149
  151. package/src/core/channels/members.ts +0 -80
  152. package/src/core/channels/metadata.ts +0 -5
  153. package/src/core/channels/presence_channel.ts +0 -113
  154. package/src/core/channels/private_channel.ts +0 -25
  155. package/src/core/config.ts +0 -189
  156. package/src/core/connection/callbacks.ts +0 -21
  157. package/src/core/connection/connection.ts +0 -160
  158. package/src/core/connection/connection_manager.ts +0 -371
  159. package/src/core/connection/connection_manager_options.ts +0 -14
  160. package/src/core/connection/handshake/handshake_payload.ts +0 -10
  161. package/src/core/connection/handshake/index.ts +0 -90
  162. package/src/core/connection/protocol/action.ts +0 -8
  163. package/src/core/connection/protocol/message-types.ts +0 -8
  164. package/src/core/connection/protocol/protocol.ts +0 -154
  165. package/src/core/defaults.ts +0 -66
  166. package/src/core/errors.ts +0 -69
  167. package/src/core/events/callback.ts +0 -6
  168. package/src/core/events/callback_registry.ts +0 -75
  169. package/src/core/events/callback_table.ts +0 -7
  170. package/src/core/events/dispatcher.ts +0 -84
  171. package/src/core/http/ajax.ts +0 -24
  172. package/src/core/http/http_factory.ts +0 -16
  173. package/src/core/http/http_polling_socket.ts +0 -24
  174. package/src/core/http/http_request.ts +0 -81
  175. package/src/core/http/http_socket.ts +0 -220
  176. package/src/core/http/http_streaming_socket.ts +0 -19
  177. package/src/core/http/request_hooks.ts +0 -9
  178. package/src/core/http/socket_hooks.ts +0 -11
  179. package/src/core/http/state.ts +0 -7
  180. package/src/core/http/url_location.ts +0 -6
  181. package/src/core/logger.ts +0 -53
  182. package/src/core/options.ts +0 -59
  183. package/src/core/pusher-licence.js +0 -7
  184. package/src/core/pusher-with-encryption.js +0 -1
  185. package/src/core/pusher-with-encryption.ts +0 -14
  186. package/src/core/pusher.js +0 -2
  187. package/src/core/pusher.ts +0 -249
  188. package/src/core/reachability.ts +0 -7
  189. package/src/core/socket.ts +0 -14
  190. package/src/core/strategies/best_connected_ever_strategy.ts +0 -81
  191. package/src/core/strategies/delayed_strategy.ts +0 -48
  192. package/src/core/strategies/first_connected_strategy.ts +0 -28
  193. package/src/core/strategies/if_strategy.ts +0 -34
  194. package/src/core/strategies/sequential_strategy.ts +0 -129
  195. package/src/core/strategies/strategy.ts +0 -8
  196. package/src/core/strategies/strategy_builder.ts +0 -67
  197. package/src/core/strategies/strategy_options.ts +0 -18
  198. package/src/core/strategies/strategy_runner.ts +0 -6
  199. package/src/core/strategies/transport_strategy.ts +0 -144
  200. package/src/core/strategies/websocket_prioritized_cached_strategy.ts +0 -157
  201. package/src/core/timeline/level.ts +0 -7
  202. package/src/core/timeline/timeline.ts +0 -90
  203. package/src/core/timeline/timeline_sender.ts +0 -33
  204. package/src/core/timeline/timeline_transport.ts +0 -11
  205. package/src/core/transports/assistant_to_the_transport_manager.ts +0 -104
  206. package/src/core/transports/ping_delay_options.ts +0 -7
  207. package/src/core/transports/transport.ts +0 -54
  208. package/src/core/transports/transport_connection.ts +0 -241
  209. package/src/core/transports/transport_connection_options.ts +0 -8
  210. package/src/core/transports/transport_hooks.ts +0 -16
  211. package/src/core/transports/transport_manager.ts +0 -52
  212. package/src/core/transports/transports_table.ts +0 -12
  213. package/src/core/transports/url_scheme.ts +0 -13
  214. package/src/core/transports/url_schemes.ts +0 -47
  215. package/src/core/user.ts +0 -186
  216. package/src/core/util.ts +0 -34
  217. package/src/core/utils/collections.ts +0 -353
  218. package/src/core/utils/factory.ts +0 -75
  219. package/src/core/utils/flat_promise.ts +0 -10
  220. package/src/core/utils/timers/abstract_timer.ts +0 -39
  221. package/src/core/utils/timers/index.ts +0 -39
  222. package/src/core/utils/timers/scheduling.ts +0 -11
  223. package/src/core/utils/timers/timed_callback.ts +0 -5
  224. package/src/core/utils/url_store.ts +0 -48
  225. package/src/core/watchlist.ts +0 -31
  226. package/src/d.ts/constants/index.d.ts +0 -5
  227. package/src/d.ts/faye-websocket/faye-websocket.d.ts +0 -21
  228. package/src/d.ts/global/global.d.ts +0 -1
  229. package/src/d.ts/module/module.d.ts +0 -12
  230. package/src/d.ts/tweetnacl-util/index.d.ts +0 -6
  231. package/src/d.ts/window/events.d.ts +0 -4
  232. package/src/d.ts/window/sockjs.d.ts +0 -3
  233. package/src/d.ts/window/websocket.d.ts +0 -4
  234. package/src/d.ts/window/xmlhttprequest.d.ts +0 -3
  235. package/src/runtimes/interface.ts +0 -59
  236. package/src/runtimes/isomorphic/auth/xhr_auth.ts +0 -90
  237. package/src/runtimes/isomorphic/default_strategy.ts +0 -155
  238. package/src/runtimes/isomorphic/http/http.ts +0 -32
  239. package/src/runtimes/isomorphic/http/http_xhr_request.ts +0 -35
  240. package/src/runtimes/isomorphic/runtime.ts +0 -62
  241. package/src/runtimes/isomorphic/timeline/xhr_timeline.ts +0 -50
  242. package/src/runtimes/isomorphic/transports/transport_connection_initializer.ts +0 -19
  243. package/src/runtimes/isomorphic/transports/transports.ts +0 -81
  244. package/src/runtimes/node/net_info.ts +0 -10
  245. package/src/runtimes/node/runtime.ts +0 -68
  246. package/src/runtimes/react-native/net_info.ts +0 -42
  247. package/src/runtimes/react-native/runtime.ts +0 -65
  248. package/src/runtimes/web/auth/jsonp_auth.ts +0 -51
  249. package/src/runtimes/web/browser.ts +0 -24
  250. package/src/runtimes/web/default_strategy.ts +0 -201
  251. package/src/runtimes/web/dom/dependencies.ts +0 -16
  252. package/src/runtimes/web/dom/dependency_loader.ts +0 -93
  253. package/src/runtimes/web/dom/json2.js +0 -486
  254. package/src/runtimes/web/dom/jsonp_request.ts +0 -52
  255. package/src/runtimes/web/dom/script_receiver.ts +0 -8
  256. package/src/runtimes/web/dom/script_receiver_factory.ts +0 -57
  257. package/src/runtimes/web/dom/script_request.ts +0 -85
  258. package/src/runtimes/web/dom/sockjs/COPYING +0 -11
  259. package/src/runtimes/web/dom/sockjs/Changelog +0 -147
  260. package/src/runtimes/web/dom/sockjs/LICENSE-MIT-SockJS +0 -19
  261. package/src/runtimes/web/dom/sockjs/Makefile +0 -109
  262. package/src/runtimes/web/dom/sockjs/README.md +0 -388
  263. package/src/runtimes/web/dom/sockjs/VERSION-GEN +0 -17
  264. package/src/runtimes/web/dom/sockjs/bin/render.coffee +0 -111
  265. package/src/runtimes/web/dom/sockjs/bin/run_testling.sh +0 -135
  266. package/src/runtimes/web/dom/sockjs/lib/all.js +0 -9
  267. package/src/runtimes/web/dom/sockjs/lib/dom.js +0 -185
  268. package/src/runtimes/web/dom/sockjs/lib/dom2.js +0 -280
  269. package/src/runtimes/web/dom/sockjs/lib/eventemitter.js +0 -57
  270. package/src/runtimes/web/dom/sockjs/lib/heartbeater.js +0 -70
  271. package/src/runtimes/web/dom/sockjs/lib/index.js +0 -41
  272. package/src/runtimes/web/dom/sockjs/lib/info.js +0 -117
  273. package/src/runtimes/web/dom/sockjs/lib/json2.min.js +0 -1
  274. package/src/runtimes/web/dom/sockjs/lib/reventtarget.js +0 -55
  275. package/src/runtimes/web/dom/sockjs/lib/simpleevent.js +0 -28
  276. package/src/runtimes/web/dom/sockjs/lib/sockjs.js +0 -288
  277. package/src/runtimes/web/dom/sockjs/lib/test-hooks.js +0 -16
  278. package/src/runtimes/web/dom/sockjs/lib/trans-iframe-eventsource.js +0 -29
  279. package/src/runtimes/web/dom/sockjs/lib/trans-iframe-htmlfile.js +0 -35
  280. package/src/runtimes/web/dom/sockjs/lib/trans-iframe-within.js +0 -100
  281. package/src/runtimes/web/dom/sockjs/lib/trans-iframe-xhr-polling.js +0 -30
  282. package/src/runtimes/web/dom/sockjs/lib/trans-iframe.js +0 -103
  283. package/src/runtimes/web/dom/sockjs/lib/trans-jsonp-polling.js +0 -106
  284. package/src/runtimes/web/dom/sockjs/lib/trans-jsonp-receiver.js +0 -116
  285. package/src/runtimes/web/dom/sockjs/lib/trans-polling.js +0 -44
  286. package/src/runtimes/web/dom/sockjs/lib/trans-receiver-eventsource.js +0 -41
  287. package/src/runtimes/web/dom/sockjs/lib/trans-receiver-htmlfile.js +0 -65
  288. package/src/runtimes/web/dom/sockjs/lib/trans-receiver-xhr.js +0 -42
  289. package/src/runtimes/web/dom/sockjs/lib/trans-sender.js +0 -138
  290. package/src/runtimes/web/dom/sockjs/lib/trans-xhr.js +0 -29
  291. package/src/runtimes/web/dom/sockjs/lib/utils.js +0 -297
  292. package/src/runtimes/web/dom/sockjs/package.json +0 -18
  293. package/src/runtimes/web/dom/sockjs/version +0 -1
  294. package/src/runtimes/web/http/http.ts +0 -8
  295. package/src/runtimes/web/http/http_xdomain_request.ts +0 -37
  296. package/src/runtimes/web/net_info.ts +0 -50
  297. package/src/runtimes/web/runtime.ts +0 -174
  298. package/src/runtimes/web/timeline/jsonp_timeline.ts +0 -34
  299. package/src/runtimes/web/transports/transport_connection_initializer.ts +0 -39
  300. package/src/runtimes/web/transports/transports.ts +0 -65
  301. package/src/runtimes/worker/auth/fetch_auth.ts +0 -69
  302. package/src/runtimes/worker/net_info.ts +0 -10
  303. package/src/runtimes/worker/runtime.ts +0 -75
  304. package/src/runtimes/worker/timeline/fetch_timeline.ts +0 -39
  305. package/tsconfig.json +0 -26
  306. package/types/spec/javascripts/helpers/node/mock-dom-dependencies.d.ts +0 -1
  307. package/types/spec/javascripts/helpers/pusher_integration_class.d.ts +0 -4
  308. package/types/src/core/auth/auth_transports.d.ts +0 -9
  309. package/types/src/core/auth/channel_authorizer.d.ts +0 -3
  310. package/types/src/core/auth/deprecated_channel_authorizer.d.ts +0 -18
  311. package/types/src/core/auth/options.d.ts +0 -48
  312. package/types/src/core/auth/user_authenticator.d.ts +0 -3
  313. package/types/src/core/base64.d.ts +0 -1
  314. package/types/src/core/channels/channel.d.ts +0 -23
  315. package/types/src/core/channels/channel_table.d.ts +0 -5
  316. package/types/src/core/channels/channels.d.ts +0 -12
  317. package/types/src/core/channels/encrypted_channel.d.ts +0 -15
  318. package/types/src/core/channels/members.d.ts +0 -14
  319. package/types/src/core/channels/metadata.d.ts +0 -4
  320. package/types/src/core/channels/presence_channel.d.ts +0 -13
  321. package/types/src/core/channels/private_channel.d.ts +0 -5
  322. package/types/src/core/config.d.ts +0 -31
  323. package/types/src/core/connection/callbacks.d.ts +0 -18
  324. package/types/src/core/connection/connection.d.ts +0 -16
  325. package/types/src/core/connection/connection_manager.d.ts +0 -50
  326. package/types/src/core/connection/connection_manager_options.d.ts +0 -11
  327. package/types/src/core/connection/handshake/handshake_payload.d.ts +0 -8
  328. package/types/src/core/connection/handshake/index.d.ts +0 -12
  329. package/types/src/core/connection/protocol/action.d.ts +0 -7
  330. package/types/src/core/connection/protocol/message-types.d.ts +0 -7
  331. package/types/src/core/connection/protocol/protocol.d.ts +0 -10
  332. package/types/src/core/defaults.d.ts +0 -26
  333. package/types/src/core/errors.d.ts +0 -28
  334. package/types/src/core/events/callback.d.ts +0 -5
  335. package/types/src/core/events/callback_registry.d.ts +0 -11
  336. package/types/src/core/events/callback_table.d.ts +0 -5
  337. package/types/src/core/events/dispatcher.d.ts +0 -14
  338. package/types/src/core/http/ajax.d.ts +0 -16
  339. package/types/src/core/http/http_factory.d.ts +0 -13
  340. package/types/src/core/http/http_polling_socket.d.ts +0 -3
  341. package/types/src/core/http/http_request.d.ts +0 -17
  342. package/types/src/core/http/http_socket.d.ts +0 -32
  343. package/types/src/core/http/http_streaming_socket.d.ts +0 -3
  344. package/types/src/core/http/request_hooks.d.ts +0 -6
  345. package/types/src/core/http/socket_hooks.d.ts +0 -8
  346. package/types/src/core/http/state.d.ts +0 -6
  347. package/types/src/core/http/url_location.d.ts +0 -5
  348. package/types/src/core/logger.d.ts +0 -11
  349. package/types/src/core/options.d.ts +0 -34
  350. package/types/src/core/pusher-with-encryption.d.ts +0 -5
  351. package/types/src/core/pusher.d.ts +0 -49
  352. package/types/src/core/reachability.d.ts +0 -5
  353. package/types/src/core/socket.d.ts +0 -12
  354. package/types/src/core/strategies/best_connected_ever_strategy.d.ts +0 -10
  355. package/types/src/core/strategies/delayed_strategy.d.ts +0 -15
  356. package/types/src/core/strategies/first_connected_strategy.d.ts +0 -8
  357. package/types/src/core/strategies/if_strategy.d.ts +0 -10
  358. package/types/src/core/strategies/sequential_strategy.d.ts +0 -16
  359. package/types/src/core/strategies/strategy.d.ts +0 -6
  360. package/types/src/core/strategies/strategy_builder.d.ts +0 -5
  361. package/types/src/core/strategies/strategy_options.d.ts +0 -16
  362. package/types/src/core/strategies/strategy_runner.d.ts +0 -5
  363. package/types/src/core/strategies/transport_strategy.d.ts +0 -15
  364. package/types/src/core/strategies/websocket_prioritized_cached_strategy.d.ts +0 -20
  365. package/types/src/core/timeline/level.d.ts +0 -6
  366. package/types/src/core/timeline/timeline.d.ts +0 -25
  367. package/types/src/core/timeline/timeline_sender.d.ts +0 -13
  368. package/types/src/core/timeline/timeline_transport.d.ts +0 -6
  369. package/types/src/core/transports/assistant_to_the_transport_manager.d.ts +0 -14
  370. package/types/src/core/transports/ping_delay_options.d.ts +0 -6
  371. package/types/src/core/transports/transport.d.ts +0 -8
  372. package/types/src/core/transports/transport_connection.d.ts +0 -35
  373. package/types/src/core/transports/transport_connection_options.d.ts +0 -6
  374. package/types/src/core/transports/transport_hooks.d.ts +0 -13
  375. package/types/src/core/transports/transport_manager.d.ts +0 -14
  376. package/types/src/core/transports/transports_table.d.ts +0 -10
  377. package/types/src/core/transports/url_scheme.d.ts +0 -11
  378. package/types/src/core/transports/url_schemes.d.ts +0 -4
  379. package/types/src/core/user.d.ts +0 -21
  380. package/types/src/core/util.d.ts +0 -8
  381. package/types/src/core/utils/collections.d.ts +0 -18
  382. package/types/src/core/utils/factory.d.ts +0 -29
  383. package/types/src/core/utils/flat_promise.d.ts +0 -6
  384. package/types/src/core/utils/timers/abstract_timer.d.ts +0 -10
  385. package/types/src/core/utils/timers/index.d.ts +0 -9
  386. package/types/src/core/utils/timers/scheduling.d.ts +0 -8
  387. package/types/src/core/utils/timers/timed_callback.d.ts +0 -4
  388. package/types/src/core/utils/url_store.d.ts +0 -4
  389. package/types/src/core/watchlist.d.ts +0 -8
  390. package/types/src/runtimes/interface.d.ts +0 -43
  391. package/types/src/runtimes/isomorphic/auth/xhr_auth.d.ts +0 -3
  392. package/types/src/runtimes/isomorphic/default_strategy.d.ts +0 -5
  393. package/types/src/runtimes/isomorphic/http/http.d.ts +0 -3
  394. package/types/src/runtimes/isomorphic/http/http_xhr_request.d.ts +0 -3
  395. package/types/src/runtimes/isomorphic/runtime.d.ts +0 -2
  396. package/types/src/runtimes/isomorphic/timeline/xhr_timeline.d.ts +0 -6
  397. package/types/src/runtimes/isomorphic/transports/transport_connection_initializer.d.ts +0 -1
  398. package/types/src/runtimes/isomorphic/transports/transports.d.ts +0 -5
  399. package/types/src/runtimes/node/net_info.d.ts +0 -6
  400. package/types/src/runtimes/node/runtime.d.ts +0 -3
  401. package/types/src/runtimes/react-native/net_info.d.ts +0 -8
  402. package/types/src/runtimes/react-native/runtime.d.ts +0 -3
  403. package/types/src/runtimes/web/auth/jsonp_auth.d.ts +0 -3
  404. package/types/src/runtimes/web/browser.d.ts +0 -19
  405. package/types/src/runtimes/web/default_strategy.d.ts +0 -5
  406. package/types/src/runtimes/web/dom/dependencies.d.ts +0 -4
  407. package/types/src/runtimes/web/dom/dependency_loader.d.ts +0 -10
  408. package/types/src/runtimes/web/dom/jsonp_request.d.ts +0 -10
  409. package/types/src/runtimes/web/dom/script_receiver.d.ts +0 -7
  410. package/types/src/runtimes/web/dom/script_receiver_factory.d.ts +0 -10
  411. package/types/src/runtimes/web/dom/script_request.d.ts +0 -9
  412. package/types/src/runtimes/web/http/http.d.ts +0 -2
  413. package/types/src/runtimes/web/http/http_xdomain_request.d.ts +0 -3
  414. package/types/src/runtimes/web/net_info.d.ts +0 -7
  415. package/types/src/runtimes/web/runtime.d.ts +0 -3
  416. package/types/src/runtimes/web/timeline/jsonp_timeline.d.ts +0 -6
  417. package/types/src/runtimes/web/transports/transport_connection_initializer.d.ts +0 -1
  418. package/types/src/runtimes/web/transports/transports.d.ts +0 -2
  419. package/types/src/runtimes/worker/auth/fetch_auth.d.ts +0 -3
  420. package/types/src/runtimes/worker/net_info.d.ts +0 -6
  421. package/types/src/runtimes/worker/runtime.d.ts +0 -3
  422. package/types/src/runtimes/worker/timeline/fetch_timeline.d.ts +0 -6
  423. package/webpack/config.node.js +0 -26
  424. package/webpack/config.react-native.js +0 -35
  425. package/webpack/config.shared.js +0 -50
  426. package/webpack/config.web.js +0 -36
  427. package/webpack/config.worker.js +0 -42
  428. package/webpack/dev.server.js +0 -17
  429. package/webpack/hosting_config.js +0 -6
  430. package/with-encryption/index.d.ts +0 -29
  431. package/with-encryption/index.js +0 -4
  432. package/worker/index.d.ts +0 -29
  433. package/worker/index.js +0 -1
  434. package/worker/with-encryption/index.d.ts +0 -29
  435. package/worker/with-encryption/index.js +0 -1
@@ -1,137 +0,0 @@
1
- var Runtime = require('runtime').default;
2
- var ChannelAuthorizer = require('core/auth/channel_authorizer').default;
3
-
4
- describe("ChannelAuthorizer", function() {
5
-
6
- describe("initialization", function(){
7
- it("should throw an error if the specified transport is unrecognized", function(){
8
- const authOptions = {
9
- transport: "bad-transport",
10
- };
11
- expect(function(){
12
- ChannelAuthorizer(authOptions)
13
- }).toThrow("'bad-transport' is not a recognized auth transport");
14
- });
15
- });
16
-
17
- describe("channel AuthHandler", function(){
18
- let _getAuthorizers;
19
-
20
- beforeAll(function() {
21
- _getAuthorizers = Runtime.getAuthorizers;
22
- });
23
-
24
- afterAll(function() {
25
- Runtime.getAuthorizers = _getAuthorizers;
26
- });
27
-
28
- it("should call the specified transport authorizer", function(){
29
- const authOptions = {
30
- transport: "ajax",
31
- endpoint: "http://example.com/auth",
32
- headers: { "X-Foo": "my-bar" }
33
- };
34
- channelAuthorizer = ChannelAuthorizer(authOptions);
35
-
36
- transportAuthorizer = jasmine.createSpy("ajax")
37
- Runtime.getAuthorizers = jasmine.createSpy("getAuthorizers").and.returnValue({
38
- ajax: transportAuthorizer
39
- });
40
-
41
- const params = { socketId: '1.23', channelName: 'private-test' };
42
- const callback = function(){};
43
- const query = 'socket_id=1.23&channel_name=private-test';
44
- channelAuthorizer(params, callback);
45
- expect(Runtime.getAuthorizers.calls.count()).toEqual(1);
46
- expect(transportAuthorizer).toHaveBeenCalledWith(
47
- Runtime,
48
- query,
49
- authOptions,
50
- 'channel-authorization',
51
- callback);
52
- });
53
-
54
- it("should call the specified transport authorizer with params", function(){
55
- const authOptions = {
56
- transport: "ajax",
57
- endpoint: "http://example.com/auth",
58
- params: { foo: "bar" },
59
- headers: { "X-Foo": "my-bar" }
60
- };
61
- channelAuthorizer = ChannelAuthorizer(authOptions);
62
-
63
- transportAuthorizer = jasmine.createSpy("ajax")
64
- Runtime.getAuthorizers = jasmine.createSpy("getAuthorizers").and.returnValue({
65
- ajax: transportAuthorizer
66
- });
67
-
68
- const params = { socketId: '1.23', channelName: 'private-test' };
69
- const callback = function(){};
70
- const query = 'socket_id=1.23&channel_name=private-test&foo=bar';
71
- channelAuthorizer(params, callback);
72
- expect(Runtime.getAuthorizers.calls.count()).toEqual(1);
73
- expect(transportAuthorizer).toHaveBeenCalledWith(
74
- Runtime,
75
- query,
76
- authOptions,
77
- 'channel-authorization',
78
- callback);
79
- });
80
-
81
- it("should call the specified transport authorizer with paramsProvider", function(){
82
- const authOptions = {
83
- transport: "ajax",
84
- endpoint: "http://example.com/auth",
85
- paramsProvider: () => { return { abc: '123' }; },
86
- headers: { "X-Foo": "my-bar" }
87
- };
88
- channelAuthorizer = ChannelAuthorizer(authOptions);
89
-
90
- transportAuthorizer = jasmine.createSpy("ajax")
91
- Runtime.getAuthorizers = jasmine.createSpy("getAuthorizers").and.returnValue({
92
- ajax: transportAuthorizer
93
- });
94
-
95
- const params = { socketId: '1.23', channelName: 'private-test' };
96
- const callback = function(){};
97
- const query = 'socket_id=1.23&channel_name=private-test&abc=123';
98
- channelAuthorizer(params, callback);
99
- expect(Runtime.getAuthorizers.calls.count()).toEqual(1);
100
- expect(transportAuthorizer).toHaveBeenCalledWith(
101
- Runtime,
102
- query,
103
- authOptions,
104
- 'channel-authorization',
105
- callback);
106
- });
107
-
108
-
109
- it("should call the specified transport authorizer with params and paramsProvider", function(){
110
- const authOptions = {
111
- transport: "ajax",
112
- endpoint: "http://example.com/auth",
113
- params: { foo: "bar" },
114
- paramsProvider: () => { return { abc: '123' }; },
115
- headers: { "X-Foo": "my-bar" }
116
- };
117
- channelAuthorizer = ChannelAuthorizer(authOptions);
118
-
119
- transportAuthorizer = jasmine.createSpy("ajax")
120
- Runtime.getAuthorizers = jasmine.createSpy("getAuthorizers").and.returnValue({
121
- ajax: transportAuthorizer
122
- });
123
-
124
- const params = { socketId: '1.23', channelName: 'private-test' };
125
- const callback = function(){};
126
- const query = 'socket_id=1.23&channel_name=private-test&foo=bar&abc=123';
127
- channelAuthorizer(params, callback);
128
- expect(Runtime.getAuthorizers.calls.count()).toEqual(1);
129
- expect(transportAuthorizer).toHaveBeenCalledWith(
130
- Runtime,
131
- query,
132
- authOptions,
133
- 'channel-authorization',
134
- callback);
135
- });
136
- });
137
- });
@@ -1,48 +0,0 @@
1
- var ChannelAuthorizerProxy = require('core/auth/deprecated_channel_authorizer').ChannelAuthorizerProxy;
2
-
3
- describe("ChannelAuthorizerProxy", function() {
4
-
5
- describe("initialization", function(){
6
- it("should call the deprecated authorizer properly", function(){
7
- const channel = {};
8
- const pusher = {
9
- channel: jasmine.createSpy('channel').and.returnValue(channel)
10
- }
11
-
12
- const authOptions = {
13
- transport: "bad-transport",
14
- endpoint: "http://example.com/auth",
15
- params: { foo: "bar" },
16
- headers: { "X-Foo": "my-bar" }
17
- };
18
- const deprecatedAuthorizerParams = {
19
- authTransport: "bad-transport",
20
- authEndpoint: "http://example.com/auth",
21
- auth: {
22
- params: { foo: "bar" },
23
- headers: { "X-Foo": "my-bar" }
24
- }
25
- }
26
- const deprecatedAuthorizer = {
27
- authorize:jasmine.createSpy('deprecatedAuthorizer')
28
- };
29
- const deprecatedAuthorizerGenerator = jasmine.createSpy("deprecatedAuthorizerGenerator").and.returnValue(deprecatedAuthorizer);
30
-
31
- channelAuthorizer = ChannelAuthorizerProxy(pusher, authOptions, deprecatedAuthorizerGenerator)
32
-
33
- const params = { socketId: "1.23", channelName: "private-test-channel"};
34
- const callback = function() {};
35
- channelAuthorizer(params, callback);
36
-
37
- expect(pusher.channel.calls.count()).toEqual(1);
38
- expect(pusher.channel).toHaveBeenCalledWith('private-test-channel');
39
-
40
- expect(deprecatedAuthorizerGenerator.calls.count()).toEqual(1);
41
- expect(deprecatedAuthorizerGenerator).toHaveBeenCalledWith(channel, deprecatedAuthorizerParams);
42
-
43
- expect(deprecatedAuthorizer.authorize.calls.count()).toEqual(1);
44
- expect(deprecatedAuthorizer.authorize).toHaveBeenCalledWith("1.23", callback);
45
- });
46
- });
47
-
48
- });
@@ -1,128 +0,0 @@
1
- var Runtime = require('runtime').default;
2
- var UserAuthenticator = require('core/auth/user_authenticator').default;
3
-
4
- describe("UserAuthenticator", function() {
5
-
6
- describe("initialization", function(){
7
- it("should throw an error if the specified transport is unrecognized", function(){
8
- const userAuthentication = {
9
- transport: "bad-transport",
10
- };
11
- expect(function(){
12
- UserAuthenticator(userAuthentication)
13
- }).toThrow("'bad-transport' is not a recognized auth transport");
14
- });
15
- });
16
-
17
- describe("user AuthHandler", function(){
18
- let _getAuthorizers;
19
-
20
- beforeAll(function() {
21
- _getAuthorizers = Runtime.getAuthorizers;
22
- });
23
-
24
- afterAll(function() {
25
- Runtime.getAuthorizers = _getAuthorizers;
26
- });
27
-
28
- it("should call the specified transport authorizer", function(){
29
- const userAuthentication = {
30
- transport: "ajax",
31
- };
32
- userAuthenticator = UserAuthenticator(userAuthentication);
33
-
34
- transportAuthorizer = jasmine.createSpy("ajax")
35
- Runtime.getAuthorizers = jasmine.createSpy("getAuthorizers").and.returnValue({
36
- ajax: transportAuthorizer
37
- });
38
-
39
- const params = { socketId: '1.23' };
40
- const callback = function(){};
41
- const query = 'socket_id=1.23';
42
- userAuthenticator(params, callback);
43
- expect(Runtime.getAuthorizers.calls.count()).toEqual(1);
44
- expect(transportAuthorizer).toHaveBeenCalledWith(
45
- Runtime,
46
- query,
47
- userAuthentication,
48
- 'user-authentication',
49
- callback);
50
- });
51
-
52
- it("should call the specified transport authorizer with params", function(){
53
- const userAuthentication = {
54
- transport: "ajax",
55
- params: { abc: '123' }
56
- };
57
- userAuthenticator = UserAuthenticator(userAuthentication);
58
-
59
- transportAuthorizer = jasmine.createSpy("ajax")
60
- Runtime.getAuthorizers = jasmine.createSpy("getAuthorizers").and.returnValue({
61
- ajax: transportAuthorizer
62
- });
63
-
64
- const params = { socketId: '1.23' };
65
- const callback = function(){};
66
- const query = 'socket_id=1.23&abc=123';
67
- userAuthenticator(params, callback);
68
- expect(Runtime.getAuthorizers.calls.count()).toEqual(1);
69
- expect(transportAuthorizer).toHaveBeenCalledWith(
70
- Runtime,
71
- query,
72
- userAuthentication,
73
- 'user-authentication',
74
- callback);
75
- });
76
-
77
- it("should call the specified transport authorizer with paramsProvider", function(){
78
- const userAuthentication = {
79
- transport: "ajax",
80
- paramsProvider: () => { return { abc: '123' }; }
81
- };
82
- userAuthenticator = UserAuthenticator(userAuthentication);
83
-
84
- transportAuthorizer = jasmine.createSpy("ajax")
85
- Runtime.getAuthorizers = jasmine.createSpy("getAuthorizers").and.returnValue({
86
- ajax: transportAuthorizer
87
- });
88
-
89
- const params = { socketId: '1.23' };
90
- const callback = function(){};
91
- const query = 'socket_id=1.23&abc=123';
92
- userAuthenticator(params, callback);
93
- expect(Runtime.getAuthorizers.calls.count()).toEqual(1);
94
- expect(transportAuthorizer).toHaveBeenCalledWith(
95
- Runtime,
96
- query,
97
- userAuthentication,
98
- 'user-authentication',
99
- callback);
100
- });
101
-
102
- it("should call the specified transport authorizer with params and paramsProvider", function(){
103
- const userAuthentication = {
104
- transport: "ajax",
105
- params: { abc: '123' },
106
- paramsProvider: () => { return { def: '456' }; }
107
- };
108
- userAuthenticator = UserAuthenticator(userAuthentication);
109
-
110
- transportAuthorizer = jasmine.createSpy("ajax")
111
- Runtime.getAuthorizers = jasmine.createSpy("getAuthorizers").and.returnValue({
112
- ajax: transportAuthorizer
113
- });
114
-
115
- const params = { socketId: '1.23' };
116
- const callback = function(){};
117
- const query = 'socket_id=1.23&abc=123&def=456';
118
- userAuthenticator(params, callback);
119
- expect(Runtime.getAuthorizers.calls.count()).toEqual(1);
120
- expect(transportAuthorizer).toHaveBeenCalledWith(
121
- Runtime,
122
- query,
123
- userAuthentication,
124
- 'user-authentication',
125
- callback);
126
- });
127
- });
128
- });
@@ -1,5 +0,0 @@
1
- # core with runtime
2
-
3
- This directory contains unit tests for core features that requires access to a `Runtime`. These tests will be included in the unit tests for each runtime and the proper runtime will be loaded before calling those tests.
4
-
5
- In order for this to work, this directory `core_with_runtime` need to be included in `unit/index.node.js` and similar files after the proper runtime directory is included (ex. `unit/node`)
@@ -1,11 +0,0 @@
1
- var sharedTestsContext = require.context("./core", true, /_spec$/);
2
- sharedTestsContext.keys().forEach(sharedTestsContext);
3
-
4
- var nodeTestsContext = require.context("./isomorphic", true, /_spec$/);
5
- nodeTestsContext.keys().forEach(nodeTestsContext);
6
-
7
- var nodeTestsContext = require.context("./node", true, /_spec$/);
8
- nodeTestsContext.keys().forEach(nodeTestsContext)
9
-
10
- var coreWithRuntimeTestsContext = require.context("./core_with_runtime", true, /_spec$/);
11
- coreWithRuntimeTestsContext.keys().forEach(coreWithRuntimeTestsContext)
@@ -1,12 +0,0 @@
1
- // the webpack context API uses Object.keys and Array.prototype.forEach
2
- // both of which are unavailable in old versions of IE.
3
- require('../polyfills');
4
-
5
- var sharedTestsContext = require.context("./core", true, /_spec$/);
6
- sharedTestsContext.keys().forEach(sharedTestsContext);
7
-
8
- var nodeTestsContext = require.context("./web", true, /_spec$/);
9
- nodeTestsContext.keys().forEach(nodeTestsContext);
10
-
11
- var coreWithRuntimeTestsContext = require.context("./core_with_runtime", true, /_spec$/);
12
- coreWithRuntimeTestsContext.keys().forEach(coreWithRuntimeTestsContext)
@@ -1,11 +0,0 @@
1
- var sharedTestsContext = require.context("./core", true, /_spec$/);
2
- sharedTestsContext.keys().forEach(sharedTestsContext);
3
-
4
- var nodeTestsContext = require.context("./isomorphic", true, /_spec$/);
5
- nodeTestsContext.keys().forEach(nodeTestsContext);
6
-
7
- var nodeTestsContext = require.context("./worker", true, /_spec$/);
8
- nodeTestsContext.keys().forEach(nodeTestsContext);
9
-
10
- var coreWithRuntimeTestsContext = require.context("./core_with_runtime", true, /_spec$/);
11
- coreWithRuntimeTestsContext.keys().forEach(coreWithRuntimeTestsContext)
@@ -1,82 +0,0 @@
1
- var TestEnv = require('testenv');
2
- var Pusher = require('core/pusher').default;
3
- var NetInfo = require('net_info').NetInfo;
4
- var Mocks = require('mocks');
5
- var Defaults = require('core/defaults').default;
6
- var version = Defaults.VERSION;
7
- var dependency_suffix = Defaults.dependency_suffix;
8
- var Runtime = require('runtime').default;
9
-
10
- describe("Host/Port Configuration", function() {
11
- var transport;
12
- var pusher;
13
- var Transports;
14
-
15
- beforeEach(function() {
16
- spyOn(Runtime, 'getNetwork').and.callFake(function(){
17
- var network = new NetInfo();
18
- network.isOnline = jasmine.createSpy("isOnline")
19
- .and.returnValue(true);
20
- return network;
21
- });
22
- spyOn(Runtime, "getLocalStorage").and.returnValue({});
23
- });
24
-
25
- afterEach(function() {
26
- try {
27
- pusher.disconnect();
28
- } catch (e) {
29
- console.log(`Received an error when tried to disconnect. Error message: ${e}`);
30
- }
31
- });
32
-
33
- describe("WebSockets", function() {
34
- var _WebSocket;
35
-
36
- beforeEach(function() {
37
- spyOn(Runtime, 'createWebSocket').and.returnValue(Mocks.getTransport());
38
-
39
- var Transports = Runtime.Transports;
40
-
41
- spyOn(Transports.ws, "isSupported").and.returnValue(true);
42
- spyOn(Transports.xhr_streaming, "isSupported").and.returnValue(false);
43
- spyOn(Transports.xhr_polling, "isSupported").and.returnValue(false);
44
- });
45
-
46
- it("should connect to wss://ws-<cluster>.pusher.com:443 by default", function() {
47
- pusher = new Pusher("foobar", {cluster: "mt1"});
48
- pusher.connect();
49
-
50
- expect(Runtime.createWebSocket).toHaveBeenCalledWith(
51
- "wss://ws-mt1.pusher.com:443/app/foobar?protocol=7&client=js&version="+version+"&flash=false"
52
- );
53
- });
54
-
55
- it("should connect to ws://ws-<cluster>.pusher.com:80 by default when forceTLS disabled", function() {
56
- pusher = new Pusher("foobar", { cluster: "mt1", forceTLS: false });
57
- pusher.connect();
58
-
59
- expect(Runtime.createWebSocket).toHaveBeenCalledWith(
60
- "ws://ws-mt1.pusher.com:80/app/foobar?protocol=7&client=js&version="+version+"&flash=false"
61
- );
62
- });
63
-
64
- it("should connect using wsHost and wssPort when specified in options", function() {
65
- pusher = new Pusher("foobar", { cluster: "mt1", wsHost: "example.com", wssPort: 1999 });
66
- pusher.connect();
67
-
68
- expect(Runtime.createWebSocket).toHaveBeenCalledWith(
69
- "wss://example.com:1999/app/foobar?protocol=7&client=js&version="+version+"&flash=false"
70
- );
71
- });
72
-
73
- it("should connect using wsHost and wsPort when specified in options and forceTLS disabled", function() {
74
- pusher = new Pusher("foobar", { cluster: "mt1", wsHost: "example.org", wsPort: 4444, forceTLS: false });
75
- pusher.connect();
76
-
77
- expect(Runtime.createWebSocket).toHaveBeenCalledWith(
78
- "ws://example.org:4444/app/foobar?protocol=7&client=js&version="+version+"&flash=false"
79
- );
80
- });
81
- });
82
- });
@@ -1,202 +0,0 @@
1
- var Mocks = require("mocks");
2
- var Factory = require('core/utils/factory').default;
3
- var Collections = require('core/utils/collections');
4
- var HTTP = require('runtime').default.HTTPFactory;
5
- var Runtime = require('runtime').default;
6
- var VERSION = require('core/defaults').default.VERSION;
7
- var Transports = Runtime.Transports;
8
-
9
- describe("Transports", function() {
10
- describe("ws", function() {
11
- it("should generate correct non TLS URLs", function() {
12
- var url = Transports.ws.hooks.urls.getInitial("foobar", {
13
- useTLS: false,
14
- hostNonTLS: "example.com:123"
15
- });
16
- expect(url).toEqual(
17
- "ws://example.com:123/app/foobar?protocol=7&client=js&version=" + VERSION + "&flash=false"
18
- );
19
- });
20
-
21
- it("should generate correct TLS URLs", function() {
22
- var url = Transports.ws.hooks.urls.getInitial("foobar", {
23
- useTLS: true,
24
- hostTLS: "example.org:321"
25
- });
26
- expect(url).toEqual(
27
- "wss://example.org:321/app/foobar?protocol=7&client=js&version=" + VERSION + "&flash=false"
28
- );
29
- });
30
-
31
- it("should generate correct non TLS URLs with custom path prefix", function() {
32
- var url = Transports.ws.hooks.urls.getInitial("foobar", {
33
- useTLS: false,
34
- hostNonTLS: "example.com:123",
35
- httpPath: "/path"
36
- });
37
- expect(url).toEqual(
38
- "ws://example.com:123/path/app/foobar?protocol=7&client=js&version=" + VERSION + "&flash=false"
39
- );
40
- });
41
-
42
- it("should generate correct TLS URLs with custom path prefix", function() {
43
- var url = Transports.ws.hooks.urls.getInitial("foobar", {
44
- useTLS: true,
45
- hostTLS: "example.org:321",
46
- httpPath: "/path"
47
- });
48
- expect(url).toEqual(
49
- "wss://example.org:321/path/app/foobar?protocol=7&client=js&version=" + VERSION + "&flash=false"
50
- );
51
- });
52
-
53
- it("should not have a resource file", function() {
54
- expect(Transports.ws.hooks.file).toBe(undefined);
55
- });
56
-
57
- it("should not expose the URL path generator", function() {
58
- expect(Transports.ws.hooks.urls.getPath).toBe(undefined);
59
- });
60
-
61
- it("should not handle activity checks", function() {
62
- expect(Transports.ws.hooks.handlesActivityChecks).toBe(false);
63
- });
64
-
65
- it("should not support ping", function() {
66
- expect(Transports.ws.hooks.supportsPing).toBe(false);
67
- });
68
-
69
- it("should not have a beforeOpen hook", function() {
70
- expect(Transports.ws.hooks.beforeOpen).toBe(undefined);
71
- });
72
-
73
- describe("isSupported hook", function() {
74
- it("should return true", function() {
75
- expect(Transports.ws.hooks.isSupported({})).toBe(true);
76
- });
77
- });
78
-
79
- describe("getSocket hook", function() {
80
- it("should return a new WebSocket object, if the class is present", function() {
81
- var FakeWebSocket = function(url) {
82
- this.url = url;
83
- }
84
- spyOn(Runtime, 'getWebSocketAPI').and.returnValue(FakeWebSocket);
85
- var socket = Transports.ws.hooks.getSocket("testurl");
86
- expect(Runtime.getWebSocketAPI.calls.count()).toEqual(1);
87
- expect(socket).toEqual(jasmine.any(FakeWebSocket));
88
- expect(socket.url).toEqual("testurl");
89
- });
90
- });
91
- });
92
-
93
- var XHR_TRANSPORTS = ["xhr_streaming", "xhr_polling"];
94
- var STREAMING_TRANSPORTS = ["xhr_streaming"];
95
- var POLLING_TRANSPORTS = ["xhr_polling"];
96
-
97
- Collections.apply(XHR_TRANSPORTS, function(transport) {
98
- describe(transport, function() {
99
- it("should generate correct non TLS URLs with default path prefix", function() {
100
- var url = Transports[transport].hooks.urls.getInitial("foobar", {
101
- useTLS: false,
102
- hostNonTLS: "example.com:8080"
103
- });
104
- expect(url).toEqual(
105
- "http://example.com:8080/pusher/app/foobar?protocol=7&client=js&version=" + VERSION
106
- );
107
- });
108
-
109
- it("should generate correct non TLS URLs with custom path prefix", function() {
110
- var url = Transports[transport].hooks.urls.getInitial("foobar", {
111
- useTLS: false,
112
- hostNonTLS: "example.com:8080",
113
- httpPath: "/a/b/c"
114
- });
115
- expect(url).toEqual(
116
- "http://example.com:8080/a/b/c/app/foobar?protocol=7&client=js&version=" + VERSION
117
- );
118
- });
119
-
120
- it("should generate correct TLS URLs with default path prefix", function() {
121
- var url = Transports[transport].hooks.urls.getInitial("foobar", {
122
- useTLS: true,
123
- hostTLS: "example.org:4443"
124
- });
125
- expect(url).toEqual(
126
- "https://example.org:4443/pusher/app/foobar?protocol=7&client=js&version=" + VERSION
127
- );
128
- });
129
-
130
- it("should generate correct TLS URLs with custom path prefix", function() {
131
- var url = Transports[transport].hooks.urls.getInitial("foobar", {
132
- useTLS: true,
133
- hostTLS: "example.org:4443",
134
- httpPath: "/c/b/a"
135
- });
136
- expect(url).toEqual(
137
- "https://example.org:4443/c/b/a/app/foobar?protocol=7&client=js&version=" + VERSION
138
- );
139
- });
140
-
141
- it("should not expose the URL path generator", function() {
142
- expect(Transports[transport].hooks.urls.getPath).toBe(undefined);
143
- });
144
-
145
- it("should not handle activity checks", function() {
146
- expect(Transports[transport].hooks.handlesActivityChecks).toBe(false);
147
- });
148
-
149
- it("should support ping", function() {
150
- expect(Transports[transport].hooks.supportsPing).toBe(true);
151
- });
152
-
153
- it("should not have a beforeOpen hook", function() {
154
- expect(Transports[transport].hooks.beforeOpen).toBe(undefined);
155
- });
156
- });
157
- });
158
-
159
- Collections.apply(XHR_TRANSPORTS, function(transport) {
160
- describe(transport, function() {
161
- describe("isSupported hook", function() {
162
- it("should return true", function(){
163
- expect(Transports[transport].hooks.isSupported({})).toBe(true);
164
- });
165
- });
166
- });
167
- });
168
-
169
- Collections.apply(STREAMING_TRANSPORTS, function(transport) {
170
- describe(transport, function() {
171
- describe("getSocket hook", function() {
172
- it("should return a new streaming HTTPSocket object", function() {
173
- spyOn(HTTP, "createStreamingSocket").and.callFake(function(url) {
174
- return "streaming socket mock";
175
- });
176
-
177
- var socket = Transports[transport].hooks.getSocket("streamurl");
178
- expect(HTTP.createStreamingSocket.calls.count()).toEqual(1);
179
- expect(HTTP.createStreamingSocket).toHaveBeenCalledWith("streamurl");
180
- expect(socket).toEqual("streaming socket mock");
181
- });
182
- });
183
- });
184
- });
185
-
186
- Collections.apply(POLLING_TRANSPORTS, function(transport) {
187
- describe(transport, function() {
188
- describe("getSocket hook", function() {
189
- it("should return a new polling HTTPSocket object", function() {
190
- spyOn(HTTP, "createPollingSocket").and.callFake(function(url) {
191
- return "polling socket mock";
192
- });
193
-
194
- var socket = Transports[transport].hooks.getSocket("streamurl");
195
- expect(HTTP.createPollingSocket.calls.count()).toEqual(1);
196
- expect(HTTP.createPollingSocket).toHaveBeenCalledWith("streamurl");
197
- expect(socket).toEqual("polling socket mock");
198
- });
199
- });
200
- });
201
- });
202
- });