pingerchips-js 1.0.1-a → 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 (455) 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/pingerchips.js +0 -10870
  19. package/dist/node/pingerchips.js.map +0 -1
  20. package/dist/node/pusher.js +0 -10870
  21. package/dist/node/pusher.js.map +0 -1
  22. package/dist/react-native/pingerchips.js +0 -9
  23. package/dist/react-native/pingerchips.js.map +0 -1
  24. package/dist/react-native/pusher.js +0 -9
  25. package/dist/react-native/pusher.js.map +0 -1
  26. package/dist/web/json2.js +0 -486
  27. package/dist/web/json2.min.js +0 -1
  28. package/dist/web/pingerchips-with-encryption.js +0 -7009
  29. package/dist/web/pingerchips-with-encryption.js.map +0 -1
  30. package/dist/web/pingerchips-with-encryption.min.js +0 -9
  31. package/dist/web/pingerchips-with-encryption.min.js.map +0 -1
  32. package/dist/web/pingerchips.js +0 -4587
  33. package/dist/web/pingerchips.js.map +0 -1
  34. package/dist/web/pingerchips.min.js +0 -9
  35. package/dist/web/pingerchips.min.js.map +0 -1
  36. package/dist/web/pusher-with-encryption.js +0 -7009
  37. package/dist/web/pusher-with-encryption.js.map +0 -1
  38. package/dist/web/pusher-with-encryption.min.js +0 -9
  39. package/dist/web/pusher-with-encryption.min.js.map +0 -1
  40. package/dist/web/pusher.js +0 -4587
  41. package/dist/web/pusher.js.map +0 -1
  42. package/dist/web/pusher.min.js +0 -9
  43. package/dist/web/pusher.min.js.map +0 -1
  44. package/dist/web/sockjs.js +0 -2435
  45. package/dist/web/sockjs.min.js +0 -89
  46. package/dist/worker/pingerchips-with-encryption.worker.js +0 -6622
  47. package/dist/worker/pingerchips-with-encryption.worker.js.map +0 -1
  48. package/dist/worker/pingerchips-with-encryption.worker.min.js +0 -9
  49. package/dist/worker/pingerchips-with-encryption.worker.min.js.map +0 -1
  50. package/dist/worker/pingerchips.worker.js +0 -4200
  51. package/dist/worker/pingerchips.worker.js.map +0 -1
  52. package/dist/worker/pingerchips.worker.min.js +0 -9
  53. package/dist/worker/pingerchips.worker.min.js.map +0 -1
  54. package/dist/worker/pusher-with-encryption.worker.js +0 -6622
  55. package/dist/worker/pusher-with-encryption.worker.js.map +0 -1
  56. package/dist/worker/pusher-with-encryption.worker.min.js +0 -9
  57. package/dist/worker/pusher-with-encryption.worker.min.js.map +0 -1
  58. package/dist/worker/pusher.worker.js +0 -4200
  59. package/dist/worker/pusher.worker.js.map +0 -1
  60. package/dist/worker/pusher.worker.min.js +0 -9
  61. package/dist/worker/pusher.worker.min.js.map +0 -1
  62. package/index.d.ts +0 -29
  63. package/integration_tests_server/index.js +0 -176
  64. package/integration_tests_server/package-lock.json +0 -1177
  65. package/integration_tests_server/package.json +0 -15
  66. package/node.js +0 -1
  67. package/pusher-with-encryption/index.js +0 -1
  68. package/react-native/index.d.ts +0 -29
  69. package/react-native/index.js +0 -1
  70. package/spec/config/jasmine/helpers/reporter.js +0 -14
  71. package/spec/config/jasmine/integration.json +0 -13
  72. package/spec/config/jasmine/unit.json +0 -13
  73. package/spec/config/jasmine/webpack.integration.js +0 -33
  74. package/spec/config/jasmine/webpack.unit.js +0 -30
  75. package/spec/config/karma/available_browsers.json +0 -4957
  76. package/spec/config/karma/config.ci.js +0 -25
  77. package/spec/config/karma/config.common.js +0 -50
  78. package/spec/config/karma/config.integration.js +0 -26
  79. package/spec/config/karma/config.unit.js +0 -10
  80. package/spec/config/karma/config.worker.js +0 -34
  81. package/spec/config/karma/integration.js +0 -24
  82. package/spec/config/karma/unit.js +0 -20
  83. package/spec/javascripts/helpers/mocks.js +0 -274
  84. package/spec/javascripts/helpers/node/integration.js +0 -33
  85. package/spec/javascripts/helpers/node/mock-dom-dependencies.ts +0 -1
  86. package/spec/javascripts/helpers/pusher_integration.js +0 -1
  87. package/spec/javascripts/helpers/pusher_integration_class.ts +0 -11
  88. package/spec/javascripts/helpers/timers/promises.js +0 -9
  89. package/spec/javascripts/helpers/waitsFor.js +0 -37
  90. package/spec/javascripts/helpers/web/integration.js +0 -44
  91. package/spec/javascripts/helpers/worker/mock-dom-dependencies.js +0 -1
  92. package/spec/javascripts/integration/core/cluster_config_spec.js +0 -153
  93. package/spec/javascripts/integration/core/falling_back_spec.js +0 -195
  94. package/spec/javascripts/integration/core/pusher_spec/index.js +0 -68
  95. package/spec/javascripts/integration/core/pusher_spec/test_builder.js +0 -715
  96. package/spec/javascripts/integration/core/timeout_configuration_spec.js +0 -200
  97. package/spec/javascripts/integration/core/transport_lists_spec.js +0 -103
  98. package/spec/javascripts/integration/index.node.js +0 -12
  99. package/spec/javascripts/integration/index.web.js +0 -63
  100. package/spec/javascripts/integration/index.worker.js +0 -13
  101. package/spec/javascripts/integration/web/dom/jsonp_spec.js +0 -97
  102. package/spec/javascripts/integration/web/dom/script_request_spec.js +0 -90
  103. package/spec/javascripts/polyfills/index.js +0 -105
  104. package/spec/javascripts/unit/core/channels/channel_spec.js +0 -355
  105. package/spec/javascripts/unit/core/channels/channels_spec.js +0 -94
  106. package/spec/javascripts/unit/core/channels/encrypted_channel_spec.js +0 -343
  107. package/spec/javascripts/unit/core/channels/presence_channel_spec.js +0 -553
  108. package/spec/javascripts/unit/core/channels/private_channel_spec.js +0 -182
  109. package/spec/javascripts/unit/core/config_spec.js +0 -507
  110. package/spec/javascripts/unit/core/connection/connection_manager_spec.js +0 -656
  111. package/spec/javascripts/unit/core/connection/connection_spec.js +0 -286
  112. package/spec/javascripts/unit/core/connection/handshake_spec.js +0 -160
  113. package/spec/javascripts/unit/core/connection/protocol_spec.js +0 -420
  114. package/spec/javascripts/unit/core/defaults_spec.js +0 -26
  115. package/spec/javascripts/unit/core/events_dispatcher_spec.js +0 -385
  116. package/spec/javascripts/unit/core/http/http_polling_socket_spec.js +0 -60
  117. package/spec/javascripts/unit/core/http/http_request_spec.js +0 -185
  118. package/spec/javascripts/unit/core/http/http_socket_spec.js +0 -370
  119. package/spec/javascripts/unit/core/http/http_streaming_socket_spec.js +0 -56
  120. package/spec/javascripts/unit/core/http/http_xhr_request_spec.js +0 -164
  121. package/spec/javascripts/unit/core/logger_spec.js +0 -133
  122. package/spec/javascripts/unit/core/pusher_spec.js +0 -613
  123. package/spec/javascripts/unit/core/pusher_with_encryption_spec.js +0 -18
  124. package/spec/javascripts/unit/core/strategies/best_connected_ever_strategy_spec.js +0 -104
  125. package/spec/javascripts/unit/core/strategies/delayed_strategy_spec.js +0 -95
  126. package/spec/javascripts/unit/core/strategies/first_connected_strategy_spec.js +0 -68
  127. package/spec/javascripts/unit/core/strategies/if_strategy_spec.js +0 -165
  128. package/spec/javascripts/unit/core/strategies/sequential_strategy_spec.js +0 -213
  129. package/spec/javascripts/unit/core/strategies/transport_strategy_spec.js +0 -250
  130. package/spec/javascripts/unit/core/strategies/websocket_prioritized_cached_strategy_spec.js +0 -400
  131. package/spec/javascripts/unit/core/timeline/timeline_spec.js +0 -153
  132. package/spec/javascripts/unit/core/transports/assistant_to_the_transport_manager_spec.js +0 -223
  133. package/spec/javascripts/unit/core/transports/hosts_and_ports_spec.js +0 -85
  134. package/spec/javascripts/unit/core/transports/transport_connection_spec.js +0 -585
  135. package/spec/javascripts/unit/core/transports/transport_manager_spec.js +0 -64
  136. package/spec/javascripts/unit/core/user_spec.js +0 -303
  137. package/spec/javascripts/unit/core/utils/periodic_timer_spec.js +0 -74
  138. package/spec/javascripts/unit/core/utils/timers_spec.js +0 -157
  139. package/spec/javascripts/unit/core/utils/url_store_spec.js +0 -14
  140. package/spec/javascripts/unit/core/watchlist_spec.js +0 -48
  141. package/spec/javascripts/unit/core_with_runtime/auth/channel_authorizer_spec.js +0 -137
  142. package/spec/javascripts/unit/core_with_runtime/auth/deprecated_channel_authorizer_spec.js +0 -48
  143. package/spec/javascripts/unit/core_with_runtime/auth/user_authorizer_spec.js +0 -128
  144. package/spec/javascripts/unit/core_with_runtime/readme.md +0 -5
  145. package/spec/javascripts/unit/index.node.js +0 -11
  146. package/spec/javascripts/unit/index.web.js +0 -12
  147. package/spec/javascripts/unit/index.worker.js +0 -11
  148. package/spec/javascripts/unit/isomorphic/transports/hosts_and_ports_spec.js +0 -82
  149. package/spec/javascripts/unit/isomorphic/transports/transports_spec.js +0 -202
  150. package/spec/javascripts/unit/node/timeline_sender_spec.js +0 -83
  151. package/spec/javascripts/unit/web/dom/dependency_loader_spec.js +0 -249
  152. package/spec/javascripts/unit/web/dom/jsonp_request_spec.js +0 -130
  153. package/spec/javascripts/unit/web/dom/script_receiver_factory_spec.js +0 -68
  154. package/spec/javascripts/unit/web/http/http_xdomain_request_spec.js +0 -222
  155. package/spec/javascripts/unit/web/pusher_authorizer_spec.js +0 -64
  156. package/spec/javascripts/unit/web/timeline/timeline_sender_spec.js +0 -131
  157. package/spec/javascripts/unit/web/transports/hosts_and_ports_spec.js +0 -127
  158. package/spec/javascripts/unit/web/transports/transports_spec.js +0 -444
  159. package/spec/javascripts/unit/worker/channel_authorizer_spec.js +0 -156
  160. package/spec/javascripts/unit/worker/timeline_sender_spec.js +0 -76
  161. package/src/core/auth/auth_transports.ts +0 -18
  162. package/src/core/auth/channel_authorizer.ts +0 -64
  163. package/src/core/auth/deprecated_channel_authorizer.ts +0 -58
  164. package/src/core/auth/options.ts +0 -78
  165. package/src/core/auth/user_authenticator.ts +0 -62
  166. package/src/core/base64.ts +0 -49
  167. package/src/core/channels/channel.ts +0 -163
  168. package/src/core/channels/channel_table.ts +0 -7
  169. package/src/core/channels/channels.ts +0 -85
  170. package/src/core/channels/encrypted_channel.ts +0 -149
  171. package/src/core/channels/members.ts +0 -80
  172. package/src/core/channels/metadata.ts +0 -5
  173. package/src/core/channels/presence_channel.ts +0 -113
  174. package/src/core/channels/private_channel.ts +0 -25
  175. package/src/core/config.ts +0 -189
  176. package/src/core/connection/callbacks.ts +0 -21
  177. package/src/core/connection/connection.ts +0 -160
  178. package/src/core/connection/connection_manager.ts +0 -371
  179. package/src/core/connection/connection_manager_options.ts +0 -14
  180. package/src/core/connection/handshake/handshake_payload.ts +0 -10
  181. package/src/core/connection/handshake/index.ts +0 -90
  182. package/src/core/connection/protocol/action.ts +0 -8
  183. package/src/core/connection/protocol/message-types.ts +0 -8
  184. package/src/core/connection/protocol/protocol.ts +0 -154
  185. package/src/core/defaults.ts +0 -66
  186. package/src/core/errors.ts +0 -69
  187. package/src/core/events/callback.ts +0 -6
  188. package/src/core/events/callback_registry.ts +0 -75
  189. package/src/core/events/callback_table.ts +0 -7
  190. package/src/core/events/dispatcher.ts +0 -84
  191. package/src/core/http/ajax.ts +0 -24
  192. package/src/core/http/http_factory.ts +0 -16
  193. package/src/core/http/http_polling_socket.ts +0 -24
  194. package/src/core/http/http_request.ts +0 -81
  195. package/src/core/http/http_socket.ts +0 -220
  196. package/src/core/http/http_streaming_socket.ts +0 -19
  197. package/src/core/http/request_hooks.ts +0 -9
  198. package/src/core/http/socket_hooks.ts +0 -11
  199. package/src/core/http/state.ts +0 -7
  200. package/src/core/http/url_location.ts +0 -6
  201. package/src/core/logger.ts +0 -53
  202. package/src/core/options.ts +0 -59
  203. package/src/core/pingerchips-licence.js +0 -7
  204. package/src/core/pingerchips-with-encryption.js +0 -1
  205. package/src/core/pingerchips-with-encryption.ts +0 -14
  206. package/src/core/pingerchips.js +0 -2
  207. package/src/core/pingerchips.ts +0 -249
  208. package/src/core/reachability.ts +0 -7
  209. package/src/core/socket.ts +0 -14
  210. package/src/core/strategies/best_connected_ever_strategy.ts +0 -81
  211. package/src/core/strategies/delayed_strategy.ts +0 -48
  212. package/src/core/strategies/first_connected_strategy.ts +0 -28
  213. package/src/core/strategies/if_strategy.ts +0 -34
  214. package/src/core/strategies/sequential_strategy.ts +0 -129
  215. package/src/core/strategies/strategy.ts +0 -8
  216. package/src/core/strategies/strategy_builder.ts +0 -67
  217. package/src/core/strategies/strategy_options.ts +0 -18
  218. package/src/core/strategies/strategy_runner.ts +0 -6
  219. package/src/core/strategies/transport_strategy.ts +0 -144
  220. package/src/core/strategies/websocket_prioritized_cached_strategy.ts +0 -157
  221. package/src/core/timeline/level.ts +0 -7
  222. package/src/core/timeline/timeline.ts +0 -90
  223. package/src/core/timeline/timeline_sender.ts +0 -33
  224. package/src/core/timeline/timeline_transport.ts +0 -11
  225. package/src/core/transports/assistant_to_the_transport_manager.ts +0 -104
  226. package/src/core/transports/ping_delay_options.ts +0 -7
  227. package/src/core/transports/transport.ts +0 -54
  228. package/src/core/transports/transport_connection.ts +0 -241
  229. package/src/core/transports/transport_connection_options.ts +0 -8
  230. package/src/core/transports/transport_hooks.ts +0 -16
  231. package/src/core/transports/transport_manager.ts +0 -52
  232. package/src/core/transports/transports_table.ts +0 -12
  233. package/src/core/transports/url_scheme.ts +0 -13
  234. package/src/core/transports/url_schemes.ts +0 -47
  235. package/src/core/user.ts +0 -186
  236. package/src/core/util.ts +0 -34
  237. package/src/core/utils/collections.ts +0 -353
  238. package/src/core/utils/factory.ts +0 -75
  239. package/src/core/utils/flat_promise.ts +0 -10
  240. package/src/core/utils/timers/abstract_timer.ts +0 -39
  241. package/src/core/utils/timers/index.ts +0 -39
  242. package/src/core/utils/timers/scheduling.ts +0 -11
  243. package/src/core/utils/timers/timed_callback.ts +0 -5
  244. package/src/core/utils/url_store.ts +0 -48
  245. package/src/core/watchlist.ts +0 -31
  246. package/src/d.ts/constants/index.d.ts +0 -5
  247. package/src/d.ts/faye-websocket/faye-websocket.d.ts +0 -21
  248. package/src/d.ts/global/global.d.ts +0 -1
  249. package/src/d.ts/module/module.d.ts +0 -12
  250. package/src/d.ts/tweetnacl-util/index.d.ts +0 -6
  251. package/src/d.ts/window/events.d.ts +0 -4
  252. package/src/d.ts/window/sockjs.d.ts +0 -3
  253. package/src/d.ts/window/websocket.d.ts +0 -4
  254. package/src/d.ts/window/xmlhttprequest.d.ts +0 -3
  255. package/src/runtimes/interface.ts +0 -59
  256. package/src/runtimes/isomorphic/auth/xhr_auth.ts +0 -90
  257. package/src/runtimes/isomorphic/default_strategy.ts +0 -155
  258. package/src/runtimes/isomorphic/http/http.ts +0 -32
  259. package/src/runtimes/isomorphic/http/http_xhr_request.ts +0 -35
  260. package/src/runtimes/isomorphic/runtime.ts +0 -62
  261. package/src/runtimes/isomorphic/timeline/xhr_timeline.ts +0 -50
  262. package/src/runtimes/isomorphic/transports/transport_connection_initializer.ts +0 -19
  263. package/src/runtimes/isomorphic/transports/transports.ts +0 -81
  264. package/src/runtimes/node/net_info.ts +0 -10
  265. package/src/runtimes/node/runtime.ts +0 -68
  266. package/src/runtimes/react-native/net_info.ts +0 -42
  267. package/src/runtimes/react-native/runtime.ts +0 -65
  268. package/src/runtimes/web/auth/jsonp_auth.ts +0 -51
  269. package/src/runtimes/web/browser.ts +0 -24
  270. package/src/runtimes/web/default_strategy.ts +0 -201
  271. package/src/runtimes/web/dom/dependencies.ts +0 -16
  272. package/src/runtimes/web/dom/dependency_loader.ts +0 -93
  273. package/src/runtimes/web/dom/json2.js +0 -486
  274. package/src/runtimes/web/dom/jsonp_request.ts +0 -52
  275. package/src/runtimes/web/dom/script_receiver.ts +0 -8
  276. package/src/runtimes/web/dom/script_receiver_factory.ts +0 -57
  277. package/src/runtimes/web/dom/script_request.ts +0 -85
  278. package/src/runtimes/web/dom/sockjs/COPYING +0 -11
  279. package/src/runtimes/web/dom/sockjs/Changelog +0 -147
  280. package/src/runtimes/web/dom/sockjs/LICENSE-MIT-SockJS +0 -19
  281. package/src/runtimes/web/dom/sockjs/Makefile +0 -109
  282. package/src/runtimes/web/dom/sockjs/README.md +0 -388
  283. package/src/runtimes/web/dom/sockjs/VERSION-GEN +0 -17
  284. package/src/runtimes/web/dom/sockjs/bin/render.coffee +0 -111
  285. package/src/runtimes/web/dom/sockjs/bin/run_testling.sh +0 -135
  286. package/src/runtimes/web/dom/sockjs/lib/all.js +0 -9
  287. package/src/runtimes/web/dom/sockjs/lib/dom.js +0 -185
  288. package/src/runtimes/web/dom/sockjs/lib/dom2.js +0 -280
  289. package/src/runtimes/web/dom/sockjs/lib/eventemitter.js +0 -57
  290. package/src/runtimes/web/dom/sockjs/lib/heartbeater.js +0 -70
  291. package/src/runtimes/web/dom/sockjs/lib/index.js +0 -41
  292. package/src/runtimes/web/dom/sockjs/lib/info.js +0 -117
  293. package/src/runtimes/web/dom/sockjs/lib/json2.min.js +0 -1
  294. package/src/runtimes/web/dom/sockjs/lib/reventtarget.js +0 -55
  295. package/src/runtimes/web/dom/sockjs/lib/simpleevent.js +0 -28
  296. package/src/runtimes/web/dom/sockjs/lib/sockjs.js +0 -288
  297. package/src/runtimes/web/dom/sockjs/lib/test-hooks.js +0 -16
  298. package/src/runtimes/web/dom/sockjs/lib/trans-iframe-eventsource.js +0 -29
  299. package/src/runtimes/web/dom/sockjs/lib/trans-iframe-htmlfile.js +0 -35
  300. package/src/runtimes/web/dom/sockjs/lib/trans-iframe-within.js +0 -100
  301. package/src/runtimes/web/dom/sockjs/lib/trans-iframe-xhr-polling.js +0 -30
  302. package/src/runtimes/web/dom/sockjs/lib/trans-iframe.js +0 -103
  303. package/src/runtimes/web/dom/sockjs/lib/trans-jsonp-polling.js +0 -106
  304. package/src/runtimes/web/dom/sockjs/lib/trans-jsonp-receiver.js +0 -116
  305. package/src/runtimes/web/dom/sockjs/lib/trans-polling.js +0 -44
  306. package/src/runtimes/web/dom/sockjs/lib/trans-receiver-eventsource.js +0 -41
  307. package/src/runtimes/web/dom/sockjs/lib/trans-receiver-htmlfile.js +0 -65
  308. package/src/runtimes/web/dom/sockjs/lib/trans-receiver-xhr.js +0 -42
  309. package/src/runtimes/web/dom/sockjs/lib/trans-sender.js +0 -138
  310. package/src/runtimes/web/dom/sockjs/lib/trans-xhr.js +0 -29
  311. package/src/runtimes/web/dom/sockjs/lib/utils.js +0 -297
  312. package/src/runtimes/web/dom/sockjs/package.json +0 -18
  313. package/src/runtimes/web/dom/sockjs/version +0 -1
  314. package/src/runtimes/web/http/http.ts +0 -8
  315. package/src/runtimes/web/http/http_xdomain_request.ts +0 -37
  316. package/src/runtimes/web/net_info.ts +0 -50
  317. package/src/runtimes/web/runtime.ts +0 -174
  318. package/src/runtimes/web/timeline/jsonp_timeline.ts +0 -34
  319. package/src/runtimes/web/transports/transport_connection_initializer.ts +0 -39
  320. package/src/runtimes/web/transports/transports.ts +0 -65
  321. package/src/runtimes/worker/auth/fetch_auth.ts +0 -69
  322. package/src/runtimes/worker/net_info.ts +0 -10
  323. package/src/runtimes/worker/runtime.ts +0 -75
  324. package/src/runtimes/worker/timeline/fetch_timeline.ts +0 -39
  325. package/tsconfig.json +0 -26
  326. package/types/spec/javascripts/helpers/node/mock-dom-dependencies.d.ts +0 -1
  327. package/types/spec/javascripts/helpers/pusher_integration_class.d.ts +0 -4
  328. package/types/src/core/auth/auth_transports.d.ts +0 -9
  329. package/types/src/core/auth/channel_authorizer.d.ts +0 -3
  330. package/types/src/core/auth/deprecated_channel_authorizer.d.ts +0 -18
  331. package/types/src/core/auth/options.d.ts +0 -48
  332. package/types/src/core/auth/user_authenticator.d.ts +0 -3
  333. package/types/src/core/base64.d.ts +0 -1
  334. package/types/src/core/channels/channel.d.ts +0 -23
  335. package/types/src/core/channels/channel_table.d.ts +0 -5
  336. package/types/src/core/channels/channels.d.ts +0 -12
  337. package/types/src/core/channels/encrypted_channel.d.ts +0 -15
  338. package/types/src/core/channels/members.d.ts +0 -14
  339. package/types/src/core/channels/metadata.d.ts +0 -4
  340. package/types/src/core/channels/presence_channel.d.ts +0 -13
  341. package/types/src/core/channels/private_channel.d.ts +0 -5
  342. package/types/src/core/config.d.ts +0 -31
  343. package/types/src/core/connection/callbacks.d.ts +0 -18
  344. package/types/src/core/connection/connection.d.ts +0 -16
  345. package/types/src/core/connection/connection_manager.d.ts +0 -50
  346. package/types/src/core/connection/connection_manager_options.d.ts +0 -11
  347. package/types/src/core/connection/handshake/handshake_payload.d.ts +0 -8
  348. package/types/src/core/connection/handshake/index.d.ts +0 -12
  349. package/types/src/core/connection/protocol/action.d.ts +0 -7
  350. package/types/src/core/connection/protocol/message-types.d.ts +0 -7
  351. package/types/src/core/connection/protocol/protocol.d.ts +0 -10
  352. package/types/src/core/defaults.d.ts +0 -26
  353. package/types/src/core/errors.d.ts +0 -28
  354. package/types/src/core/events/callback.d.ts +0 -5
  355. package/types/src/core/events/callback_registry.d.ts +0 -11
  356. package/types/src/core/events/callback_table.d.ts +0 -5
  357. package/types/src/core/events/dispatcher.d.ts +0 -14
  358. package/types/src/core/http/ajax.d.ts +0 -16
  359. package/types/src/core/http/http_factory.d.ts +0 -13
  360. package/types/src/core/http/http_polling_socket.d.ts +0 -3
  361. package/types/src/core/http/http_request.d.ts +0 -17
  362. package/types/src/core/http/http_socket.d.ts +0 -32
  363. package/types/src/core/http/http_streaming_socket.d.ts +0 -3
  364. package/types/src/core/http/request_hooks.d.ts +0 -6
  365. package/types/src/core/http/socket_hooks.d.ts +0 -8
  366. package/types/src/core/http/state.d.ts +0 -6
  367. package/types/src/core/http/url_location.d.ts +0 -5
  368. package/types/src/core/logger.d.ts +0 -11
  369. package/types/src/core/options.d.ts +0 -34
  370. package/types/src/core/pingerchips-with-encryption.d.ts +0 -5
  371. package/types/src/core/pingerchips.d.ts +0 -49
  372. package/types/src/core/reachability.d.ts +0 -5
  373. package/types/src/core/socket.d.ts +0 -12
  374. package/types/src/core/strategies/best_connected_ever_strategy.d.ts +0 -10
  375. package/types/src/core/strategies/delayed_strategy.d.ts +0 -15
  376. package/types/src/core/strategies/first_connected_strategy.d.ts +0 -8
  377. package/types/src/core/strategies/if_strategy.d.ts +0 -10
  378. package/types/src/core/strategies/sequential_strategy.d.ts +0 -16
  379. package/types/src/core/strategies/strategy.d.ts +0 -6
  380. package/types/src/core/strategies/strategy_builder.d.ts +0 -5
  381. package/types/src/core/strategies/strategy_options.d.ts +0 -16
  382. package/types/src/core/strategies/strategy_runner.d.ts +0 -5
  383. package/types/src/core/strategies/transport_strategy.d.ts +0 -15
  384. package/types/src/core/strategies/websocket_prioritized_cached_strategy.d.ts +0 -20
  385. package/types/src/core/timeline/level.d.ts +0 -6
  386. package/types/src/core/timeline/timeline.d.ts +0 -25
  387. package/types/src/core/timeline/timeline_sender.d.ts +0 -13
  388. package/types/src/core/timeline/timeline_transport.d.ts +0 -6
  389. package/types/src/core/transports/assistant_to_the_transport_manager.d.ts +0 -14
  390. package/types/src/core/transports/ping_delay_options.d.ts +0 -6
  391. package/types/src/core/transports/transport.d.ts +0 -8
  392. package/types/src/core/transports/transport_connection.d.ts +0 -35
  393. package/types/src/core/transports/transport_connection_options.d.ts +0 -6
  394. package/types/src/core/transports/transport_hooks.d.ts +0 -13
  395. package/types/src/core/transports/transport_manager.d.ts +0 -14
  396. package/types/src/core/transports/transports_table.d.ts +0 -10
  397. package/types/src/core/transports/url_scheme.d.ts +0 -11
  398. package/types/src/core/transports/url_schemes.d.ts +0 -4
  399. package/types/src/core/user.d.ts +0 -21
  400. package/types/src/core/util.d.ts +0 -8
  401. package/types/src/core/utils/collections.d.ts +0 -18
  402. package/types/src/core/utils/factory.d.ts +0 -29
  403. package/types/src/core/utils/flat_promise.d.ts +0 -6
  404. package/types/src/core/utils/timers/abstract_timer.d.ts +0 -10
  405. package/types/src/core/utils/timers/index.d.ts +0 -9
  406. package/types/src/core/utils/timers/scheduling.d.ts +0 -8
  407. package/types/src/core/utils/timers/timed_callback.d.ts +0 -4
  408. package/types/src/core/utils/url_store.d.ts +0 -4
  409. package/types/src/core/watchlist.d.ts +0 -8
  410. package/types/src/runtimes/interface.d.ts +0 -43
  411. package/types/src/runtimes/isomorphic/auth/xhr_auth.d.ts +0 -3
  412. package/types/src/runtimes/isomorphic/default_strategy.d.ts +0 -5
  413. package/types/src/runtimes/isomorphic/http/http.d.ts +0 -3
  414. package/types/src/runtimes/isomorphic/http/http_xhr_request.d.ts +0 -3
  415. package/types/src/runtimes/isomorphic/runtime.d.ts +0 -2
  416. package/types/src/runtimes/isomorphic/timeline/xhr_timeline.d.ts +0 -6
  417. package/types/src/runtimes/isomorphic/transports/transport_connection_initializer.d.ts +0 -1
  418. package/types/src/runtimes/isomorphic/transports/transports.d.ts +0 -5
  419. package/types/src/runtimes/node/net_info.d.ts +0 -6
  420. package/types/src/runtimes/node/runtime.d.ts +0 -3
  421. package/types/src/runtimes/react-native/net_info.d.ts +0 -8
  422. package/types/src/runtimes/react-native/runtime.d.ts +0 -3
  423. package/types/src/runtimes/web/auth/jsonp_auth.d.ts +0 -3
  424. package/types/src/runtimes/web/browser.d.ts +0 -19
  425. package/types/src/runtimes/web/default_strategy.d.ts +0 -5
  426. package/types/src/runtimes/web/dom/dependencies.d.ts +0 -4
  427. package/types/src/runtimes/web/dom/dependency_loader.d.ts +0 -10
  428. package/types/src/runtimes/web/dom/jsonp_request.d.ts +0 -10
  429. package/types/src/runtimes/web/dom/script_receiver.d.ts +0 -7
  430. package/types/src/runtimes/web/dom/script_receiver_factory.d.ts +0 -10
  431. package/types/src/runtimes/web/dom/script_request.d.ts +0 -9
  432. package/types/src/runtimes/web/http/http.d.ts +0 -2
  433. package/types/src/runtimes/web/http/http_xdomain_request.d.ts +0 -3
  434. package/types/src/runtimes/web/net_info.d.ts +0 -7
  435. package/types/src/runtimes/web/runtime.d.ts +0 -3
  436. package/types/src/runtimes/web/timeline/jsonp_timeline.d.ts +0 -6
  437. package/types/src/runtimes/web/transports/transport_connection_initializer.d.ts +0 -1
  438. package/types/src/runtimes/web/transports/transports.d.ts +0 -2
  439. package/types/src/runtimes/worker/auth/fetch_auth.d.ts +0 -3
  440. package/types/src/runtimes/worker/net_info.d.ts +0 -6
  441. package/types/src/runtimes/worker/runtime.d.ts +0 -3
  442. package/types/src/runtimes/worker/timeline/fetch_timeline.d.ts +0 -6
  443. package/webpack/config.node.js +0 -26
  444. package/webpack/config.react-native.js +0 -35
  445. package/webpack/config.shared.js +0 -50
  446. package/webpack/config.web.js +0 -36
  447. package/webpack/config.worker.js +0 -42
  448. package/webpack/dev.server.js +0 -17
  449. package/webpack/hosting_config.js +0 -6
  450. package/with-encryption/index.d.ts +0 -29
  451. package/with-encryption/index.js +0 -4
  452. package/worker/index.d.ts +0 -29
  453. package/worker/index.js +0 -1
  454. package/worker/with-encryption/index.d.ts +0 -29
  455. package/worker/with-encryption/index.js +0 -1
@@ -1,444 +0,0 @@
1
- var Mocks = require("mocks");
2
- var Factory = require('core/utils/factory').default;
3
- var Transports = require('transports/transports').default;
4
- var Collections = require('core/utils/collections');
5
- var HTTP = require('runtime').default.HTTPFactory;
6
- var Runtime = require('runtime').default;
7
- var VERSION = require('core/defaults').default.VERSION;
8
- var Dependencies = require('dom/dependencies').Dependencies;
9
-
10
- // There seems to be some strange issues with some tests in safari 12.0. A few
11
- // tests fail in safari without any identifiable reason. Since we're fairly
12
- // confident the failures are false negatives we're deferring the investigation
13
- // and disabling the 3 failing tests in safari
14
- function isSafari() {
15
- return navigator.userAgent.indexOf("Version/12.0 Safari") !== -1
16
- }
17
-
18
- describe("Transports", function() {
19
- describe("ws", function() {
20
- var _WebSocket = window.WebSocket;
21
- var _MozWebSocket = window.MozWebSocket;
22
-
23
- afterEach(function() {
24
- window.WebSocket = _WebSocket;
25
- window.MozWebSocket = _MozWebSocket;
26
- });
27
-
28
- it("should generate correct TLS URLs", function() {
29
- var url = Transports.ws.hooks.urls.getInitial("foobar", {
30
- useTLS: false,
31
- hostNonTLS: "example.com:123"
32
- });
33
- expect(url).toEqual(
34
- "ws://example.com:123/app/foobar?protocol=7&client=js&version=" + VERSION + "&flash=false"
35
- );
36
- });
37
-
38
- it("should generate correct TLS URLs", function() {
39
- var url = Transports.ws.hooks.urls.getInitial("foobar", {
40
- useTLS: true,
41
- hostTLS: "example.org:321"
42
- });
43
- expect(url).toEqual(
44
- "wss://example.org:321/app/foobar?protocol=7&client=js&version=" + VERSION + "&flash=false"
45
- );
46
- });
47
-
48
- it("should generate correct non TLS URLs with custom path prefix", function() {
49
- var url = Transports.ws.hooks.urls.getInitial("foobar", {
50
- useTLS: false,
51
- hostNonTLS: "example.com:123",
52
- httpPath: "/path"
53
- });
54
- expect(url).toEqual(
55
- "ws://example.com:123/path/app/foobar?protocol=7&client=js&version=" + VERSION + "&flash=false"
56
- );
57
- });
58
-
59
- it("should generate correct TLS URLs with custom path prefix", function() {
60
- var url = Transports.ws.hooks.urls.getInitial("foobar", {
61
- useTLS: true,
62
- hostTLS: "example.org:321",
63
- httpPath: "/path"
64
- });
65
- expect(url).toEqual(
66
- "wss://example.org:321/path/app/foobar?protocol=7&client=js&version=" + VERSION + "&flash=false"
67
- );
68
- });
69
-
70
- it("should not have a resource file", function() {
71
- expect(Transports.ws.hooks.file).toBe(undefined);
72
- });
73
-
74
- it("should not expose the URL path generator", function() {
75
- expect(Transports.ws.hooks.urls.getPath).toBe(undefined);
76
- });
77
-
78
- it("should not handle activity checks", function() {
79
- expect(Transports.ws.hooks.handlesActivityChecks).toBe(false);
80
- });
81
-
82
- it("should not support ping", function() {
83
- expect(Transports.ws.hooks.supportsPing).toBe(false);
84
- });
85
-
86
- it("should not have a beforeOpen hook", function() {
87
- expect(Transports.ws.hooks.beforeOpen).toBe(undefined);
88
- });
89
-
90
- describe("isSupported hook", function() {
91
- it("should return true if the WebSocket class is present", function() {
92
- window.WebSocket = {};
93
- window.MozWebSocket = undefined;
94
-
95
- expect(Transports.ws.hooks.isSupported({})).toBe(true);
96
- });
97
-
98
- it("should return true if the MozWebSocket class is present and WebSocket class is absent", function() {
99
- window.WebSocket = undefined;
100
- window.MozWebSocket = {};
101
-
102
- expect(Transports.ws.hooks.isSupported({})).toBe(true);
103
- });
104
-
105
- it("should return false if WebSocket and MozWebSocket classes are absent", function() {
106
- if(!isSafari()) {
107
- window.WebSocket = undefined;
108
- window.MozWebSocket = undefined;
109
- expect(Transports.ws.hooks.isSupported({})).toBe(false);
110
- }
111
- });
112
- });
113
-
114
- describe("getSocket hook", function() {
115
- it("should return a new WebSocket object, if the class is present", function() {
116
- if(!isSafari()) {
117
- window.WebSocket = jasmine.createSpy().and.callFake(function(url) {
118
- this.url = url;
119
- });
120
- window.MozWebSocket = undefined;
121
-
122
- var socket = Transports.ws.hooks.getSocket("testurl");
123
- expect(window.WebSocket.calls.count()).toEqual(1);
124
- expect(window.WebSocket).toHaveBeenCalledWith("testurl");
125
- expect(socket.url).toEqual("testurl");
126
- }
127
- });
128
-
129
- it("should return a new MozWebSocket object, if the class is present and WebSocket class is absent", function() {
130
- if(!isSafari()) {
131
- window.WebSocket = undefined;
132
-
133
- window.MozWebSocket = jasmine.createSpy().and.callFake(function(url) {
134
- this.url = url;
135
- });
136
-
137
- var socket = Transports.ws.hooks.getSocket("moztesturl");
138
-
139
- expect(window.MozWebSocket.calls.count()).toEqual(1);
140
- expect(window.MozWebSocket).toHaveBeenCalledWith("moztesturl");
141
- expect(socket.url).toEqual("moztesturl");
142
- }
143
- });
144
- });
145
- });
146
-
147
- describe("SockJSTransport", function() {
148
- var _SockJS = window.SockJS;
149
-
150
- afterEach(function() {
151
- window.SockJS = _SockJS;
152
- });
153
-
154
- it("should have a 'sockjs' resource file", function() {
155
- expect(Transports.sockjs.hooks.file).toEqual("sockjs");
156
- });
157
-
158
- it("should generate correct non TLS URLs", function() {
159
- var url = Transports.sockjs.hooks.urls.getInitial("foobar", {
160
- useTLS: false,
161
- hostNonTLS: "example.com:111"
162
- });
163
- expect(url).toEqual("http://example.com:111/pusher");
164
- });
165
-
166
- it("should generate correct TLS URLs", function() {
167
- var url = Transports.sockjs.hooks.urls.getInitial("foobar", {
168
- useTLS: true,
169
- hostTLS: "example.com:222"
170
- });
171
- expect(url).toEqual("https://example.com:222/pusher");
172
- });
173
-
174
- it("should generate correct paths", function() {
175
- var path = Transports.sockjs.hooks.urls.getPath("asdf", {});
176
- expect(path).toEqual("/app/asdf?protocol=7&client=js&version="+VERSION);
177
- });
178
-
179
- it("should handle activity checks", function() {
180
- expect(Transports.sockjs.hooks.handlesActivityChecks).toBe(true);
181
- });
182
-
183
- it("should not support ping", function() {
184
- expect(Transports.sockjs.hooks.supportsPing).toBe(false);
185
- });
186
-
187
- describe("beforeOpen hook", function() {
188
- it("should send the path over the socket", function() {
189
- // SockJS objects have WebSocket-compatible interface
190
- var socket = Mocks.getWebSocket();
191
- Transports.sockjs.hooks.beforeOpen(socket, "test/path");
192
-
193
- expect(socket.send.calls.count()).toEqual(1);
194
- var pathMessage = JSON.parse(socket.send.calls.first().args[0]);
195
- expect(pathMessage).toEqual({ path: "test/path" });
196
- });
197
- });
198
-
199
- describe("isSupported hook", function() {
200
- it("should always return true", function() {
201
- expect(Transports.sockjs.hooks.isSupported({})).toBe(true);
202
- });
203
- });
204
-
205
- describe("getSocket hook", function() {
206
- beforeEach(function() {
207
- Dependencies.load = jasmine.createSpy("load");
208
- Dependencies.getRoot = jasmine.createSpy("getRoot");
209
- Dependencies.getPath = jasmine.createSpy("getPath");
210
- Dependencies.getPath.and.callFake(function(file, options) {
211
- return (options.useTLS ? "https" : "http") + "://host/" + file;
212
- });
213
- });
214
-
215
- it("should pass ignoreNullOrigin to the SockJS constructor", function() {
216
- window.SockJS = jasmine.createSpy();
217
-
218
- var socket = Transports.sockjs.hooks.getSocket(
219
- "url", { useTLS: false, ignoreNullOrigin: true }
220
- );
221
- expect(window.SockJS).toHaveBeenCalledWith(
222
- "url",
223
- null,
224
- { js_path: "http://host/sockjs", ignore_null_origin: true }
225
- );
226
- });
227
-
228
- it("should generate a correct JS path", function() {
229
- window.SockJS = jasmine.createSpy();
230
-
231
- var socket = Transports.sockjs.hooks.getSocket(
232
- "url", { useTLS: true }
233
- );
234
- expect(window.SockJS).toHaveBeenCalledWith('url', null, {
235
- js_path: 'https://host/sockjs',
236
- ignore_null_origin: undefined
237
- });
238
- });
239
-
240
- it("should return a new SockJS object", function() {
241
- window.SockJS = jasmine.createSpy().and.callFake(function(url) {
242
- this.url = url;
243
- });
244
-
245
- var socket = Transports.sockjs.hooks.getSocket(
246
- "sock_test", { useTLS: false }
247
- );
248
- expect(window.SockJS.calls.count()).toEqual(1);
249
- expect(socket.url).toEqual("sock_test");
250
- });
251
- });
252
- });
253
-
254
- var XHR_TRANSPORTS = ["xhr_streaming", "xhr_polling"];
255
- var XDR_TRANSPORTS = ["xdr_streaming", "xdr_polling"];
256
- var STREAMING_TRANSPORTS = ["xhr_streaming", "xdr_streaming"];
257
- var POLLING_TRANSPORTS = ["xhr_polling", "xdr_polling"];
258
- var HTTP_TRANSPORTS = [].concat(XHR_TRANSPORTS, XDR_TRANSPORTS);
259
-
260
- Collections.apply(HTTP_TRANSPORTS, function(transport) {
261
- describe(transport, function() {
262
- it("should generate correct non TLS URLs with default path prefix", function() {
263
- var url = Transports[transport].hooks.urls.getInitial("foobar", {
264
- useTLS: false,
265
- hostNonTLS: "example.com:8080"
266
- });
267
- expect(url).toEqual(
268
- "http://example.com:8080/pusher/app/foobar?protocol=7&client=js&version=" + VERSION
269
- );
270
- });
271
-
272
- it("should generate correct non TLS URLs with custom path prefix", function() {
273
- var url = Transports[transport].hooks.urls.getInitial("foobar", {
274
- useTLS: false,
275
- hostNonTLS: "example.com:8080",
276
- httpPath: "/a/b/c"
277
- });
278
- expect(url).toEqual(
279
- "http://example.com:8080/a/b/c/app/foobar?protocol=7&client=js&version=" + VERSION
280
- );
281
- });
282
-
283
- it("should generate correct TLS URLs with default path prefix", function() {
284
- var url = Transports[transport].hooks.urls.getInitial("foobar", {
285
- useTLS: true,
286
- hostTLS: "example.org:4443"
287
- });
288
- expect(url).toEqual(
289
- "https://example.org:4443/pusher/app/foobar?protocol=7&client=js&version=" + VERSION
290
- );
291
- });
292
-
293
- it("should generate correct TLS URLs with custom path prefix", function() {
294
- var url = Transports[transport].hooks.urls.getInitial("foobar", {
295
- useTLS: true,
296
- hostTLS: "example.org:4443",
297
- httpPath: "/c/b/a"
298
- });
299
- expect(url).toEqual(
300
- "https://example.org:4443/c/b/a/app/foobar?protocol=7&client=js&version=" + VERSION
301
- );
302
- });
303
-
304
- it("should not expose the URL path generator", function() {
305
- expect(Transports[transport].hooks.urls.getPath).toBe(undefined);
306
- });
307
-
308
- it("should not handle activity checks", function() {
309
- expect(Transports[transport].hooks.handlesActivityChecks).toBe(false);
310
- });
311
-
312
- it("should support ping", function() {
313
- expect(Transports[transport].hooks.supportsPing).toBe(true);
314
- });
315
-
316
- it("should not have a beforeOpen hook", function() {
317
- expect(Transports[transport].hooks.beforeOpen).toBe(undefined);
318
- });
319
- });
320
- });
321
-
322
- Collections.apply(XHR_TRANSPORTS, function(transport) {
323
- describe(transport, function() {
324
- var _XMLHttpRequest = window.XMLHttpRequest;
325
-
326
- afterEach(function() {
327
- window.XMLHttpRequest = _XMLHttpRequest;
328
- });
329
-
330
- describe("isSupported hook", function() {
331
- it("should return true if window.XMLHttpRequest exists and its instances have a withCredentials property", function() {
332
- window.XMLHttpRequest = jasmine.createSpy().and.callFake(function() {
333
- this.withCredentials = false;
334
- });
335
- expect(Transports[transport].hooks.isSupported({})).toBe(true);
336
- });
337
-
338
- it("should return false if window.XMLHttpRequest exists, but its instances don't have a withCredentials property", function() {
339
- window.XMLHttpRequest = jasmine.createSpy().and.callFake(function() {
340
- this.withCredentials = undefined;
341
- });
342
- expect(Transports[transport].hooks.isSupported({})).toBe(false);
343
- });
344
-
345
- it("should return false if window.XMLHttpRequest does not exist", function() {
346
- window.XMLHttpRequest = undefined;
347
- expect(Transports[transport].hooks.isSupported({})).toBe(false);
348
- });
349
- });
350
- });
351
- });
352
-
353
- Collections.apply(XDR_TRANSPORTS, function(transport) {
354
- describe(transport, function() {
355
- var _XDomainRequest = window.XDomainRequest;
356
-
357
- afterEach(function() {
358
- window.XDomainRequest = _XDomainRequest;
359
- });
360
-
361
- describe("isSupported hook", function() {
362
- it("should return true if window.XDomainRequest exists, document protocol is http: and connection is not using TLS", function() {
363
- window.XDomainRequest = function() {};
364
- spyOn(Runtime, "getDocument").and.returnValue({
365
- location: {
366
- protocol: "http:"
367
- }
368
- });
369
- expect(Transports[transport].hooks.isSupported({ useTLS: false })).toBe(true);
370
- });
371
-
372
- it("should return true if window.XDomainRequest exists, document protocol is https: and connection is using TLS", function() {
373
- window.XDomainRequest = function() {};
374
- spyOn(Runtime, "getDocument").and.returnValue({
375
- location: {
376
- protocol: "https:"
377
- }
378
- });
379
- expect(Transports[transport].hooks.isSupported({ useTLS: true })).toBe(true);
380
- });
381
-
382
- it("should return false if window.XDomainRequest exists, document protocol is http: and connection is using TLS", function() {
383
- window.XDomainRequest = function() {};
384
- spyOn(Runtime, "getDocument").and.returnValue({
385
- location: {
386
- protocol: "http:"
387
- }
388
- });
389
- expect(Transports[transport].hooks.isSupported({ useTLS: true })).toBe(false);
390
- });
391
-
392
- it("should return false if window.XDomainRequest exists, document protocol is https: and connection is not using TLS", function() {
393
- window.XDomainRequest = function() {};
394
- spyOn(Runtime, "getDocument").and.returnValue({
395
- location: {
396
- protocol: "https:"
397
- }
398
- });
399
- expect(Transports[transport].hooks.isSupported({ useTLS: false })).toBe(false);
400
- });
401
-
402
- it("should return false if window.XDomainRequest does not exist", function() {
403
- window.XDomainRequest = undefined;
404
- expect(Transports[transport].hooks.isSupported({ useTLS: false })).toBe(false);
405
- expect(Transports[transport].hooks.isSupported({ useTLS: true })).toBe(false);
406
- });
407
- });
408
- });
409
- });
410
-
411
- Collections.apply(STREAMING_TRANSPORTS, function(transport) {
412
- describe(transport, function() {
413
- describe("getSocket hook", function() {
414
- it("should return a new streaming HTTPSocket object", function() {
415
- spyOn(HTTP, "createStreamingSocket").and.callFake(function(url) {
416
- return "streaming socket mock";
417
- });
418
-
419
- var socket = Transports[transport].hooks.getSocket("streamurl");
420
- expect(HTTP.createStreamingSocket.calls.count()).toEqual(1);
421
- expect(HTTP.createStreamingSocket).toHaveBeenCalledWith("streamurl");
422
- expect(socket).toEqual("streaming socket mock");
423
- });
424
- });
425
- });
426
- });
427
-
428
- Collections.apply(POLLING_TRANSPORTS, function(transport) {
429
- describe(transport, function() {
430
- describe("getSocket hook", function() {
431
- it("should return a new polling HTTPSocket object", function() {
432
- spyOn(HTTP, "createPollingSocket").and.callFake(function(url) {
433
- return "polling socket mock";
434
- });
435
-
436
- var socket = Transports[transport].hooks.getSocket("streamurl");
437
- expect(HTTP.createPollingSocket.calls.count()).toEqual(1);
438
- expect(HTTP.createPollingSocket).toHaveBeenCalledWith("streamurl");
439
- expect(socket).toEqual("polling socket mock");
440
- });
441
- });
442
- });
443
- });
444
- });
@@ -1,156 +0,0 @@
1
- var fetchAuth = require('worker/auth/fetch_auth').default;
2
- var Runtime = require('runtime').default;
3
- var fetchMock = require('fetch-mock');
4
- var ChannelAuthorizer = require('core/auth/channel_authorizer').default;
5
-
6
- var endpoint = 'http://example.org/pusher/auth';
7
-
8
- describe('Fetch Authorizer', function() {
9
-
10
- afterEach(function() {
11
- fetchMock.restore();
12
- });
13
-
14
- it('should pass headers in the request', function() {
15
- fetchMock.mock(endpoint, { body: { hello: 'world' } });
16
-
17
- var headers = { foo: 'bar', n: 42 };
18
- var channelAuthorizer = ChannelAuthorizer({
19
- transport: 'ajax',
20
- endpoint: endpoint,
21
- headers: headers
22
- });
23
-
24
- channelAuthorizer({
25
- socketId: '1.23',
26
- channelName: 'chan'
27
- }, function() {});
28
-
29
- var lastCall = fetchMock.lastCall(endpoint)[0];
30
- var sentHeaders = lastCall.headers;
31
- expect(sentHeaders.get('Content-Type')).toEqual(
32
- 'application/x-www-form-urlencoded'
33
- );
34
- expect(sentHeaders.get('foo')).toEqual('bar');
35
- expect(sentHeaders.get('n')).toEqual('42');
36
- });
37
-
38
- it('should pass headers from headersProvider in the request', function() {
39
- fetchMock.mock(endpoint, { body: { hello: 'world' } });
40
-
41
- var headers = { foo: 'bar', n: 42 };
42
- var channelAuthorizer = ChannelAuthorizer({
43
- transport: 'ajax',
44
- endpoint: endpoint,
45
- headersProvider: () => headers
46
- });
47
-
48
- channelAuthorizer({
49
- socketId: '1.23',
50
- channelName: 'chan'
51
- }, function() {});
52
-
53
- var lastCall = fetchMock.lastCall(endpoint)[0];
54
- var sentHeaders = lastCall.headers;
55
- expect(sentHeaders.get('Content-Type')).toEqual(
56
- 'application/x-www-form-urlencoded'
57
- );
58
- expect(sentHeaders.get('foo')).toEqual('bar');
59
- expect(sentHeaders.get('n')).toEqual('42');
60
- });
61
-
62
- it('should pass params in the query string', async function() {
63
- fetchMock.mock(endpoint, { body: { hello: 'world' } });
64
-
65
- var params = { a: 1, b: 2 };
66
- var channelAuthorizer = ChannelAuthorizer({
67
- transport: 'ajax',
68
- endpoint: endpoint,
69
- params: params
70
- });
71
-
72
- channelAuthorizer({
73
- socketId: '1.23',
74
- channelName: 'chan'
75
- }, function() {});
76
-
77
- await new Promise(resolve => setTimeout(resolve, 100));
78
- var lastRequest = fetchMock.lastCall(endpoint)[0];
79
- const body = await lastRequest.text()
80
- expect(body).toEqual("socket_id=1.23&channel_name=chan&a=1&b=2");
81
- });
82
-
83
- it('should pass params from paramsProvider in the query string', async function() {
84
- fetchMock.mock(endpoint, { body: { hello: 'world' } });
85
-
86
- var params = { a: 1, b: 2 };
87
- var channelAuthorizer = ChannelAuthorizer({
88
- transport: 'ajax',
89
- endpoint: endpoint,
90
- paramsProvider: () => params
91
- });
92
-
93
- channelAuthorizer({
94
- socketId: '1.23',
95
- channelName: 'chan'
96
- }, function() {});
97
-
98
- await new Promise(resolve => setTimeout(resolve, 100));
99
- var lastRequest = fetchMock.lastCall(endpoint)[0];
100
- const body = await lastRequest.text()
101
- expect(body).toEqual("socket_id=1.23&channel_name=chan&a=1&b=2");
102
- });
103
-
104
-
105
- it('should call back with the auth result on success', async function() {
106
- var data = { foo: 'bar', number: 1 };
107
- var dataJSON = JSON.stringify(data);
108
-
109
- fetchMock.mock(endpoint, {
110
- body: dataJSON
111
- });
112
-
113
- var channelAuthorizer = ChannelAuthorizer({
114
- transport: 'ajax',
115
- endpoint: endpoint,
116
- });
117
-
118
- var callback = jasmine.createSpy('callback123');
119
- channelAuthorizer({
120
- socketId: '1.23',
121
- channelName: 'chan'
122
- }, callback);
123
-
124
- await new Promise(resolve => setTimeout(resolve, 100));
125
- expect(callback.calls.count()).toEqual(1);
126
- expect(callback).toHaveBeenCalledWith(null, data);
127
- });
128
-
129
- it('should call back with an error if JSON is invalid', async function() {
130
- var channelAuthorizer = ChannelAuthorizer({
131
- transport: 'ajax',
132
- endpoint: endpoint,
133
- });
134
-
135
- var invalidJSON = 'INVALID { "something": "something"}';
136
- fetchMock.mock(endpoint, {
137
- body: invalidJSON
138
- });
139
-
140
- var callback = jasmine.createSpy('callback456');
141
- channelAuthorizer({
142
- socketId: '1.23',
143
- channelName: 'chan'
144
- }, callback);
145
-
146
- await new Promise(resolve => setTimeout(resolve, 200));
147
- expect(callback.calls.count()).toEqual(1);
148
- expect(callback).toHaveBeenCalledWith(
149
- new Error('JSON returned from auth endpoint was invalid, yet status code was 200. ' +
150
- 'Data was: ' +
151
- invalidJSON),
152
- null
153
- );
154
-
155
- });
156
- });
@@ -1,76 +0,0 @@
1
- var fetchMock = require('fetch-mock');
2
- var Mocks = require('mocks');
3
- var TimelineSender = require('core/timeline/timeline_sender').default;
4
- var Runtime = require('runtime').default;
5
- var fetchTimeline = require('worker/timeline/fetch_timeline').default;
6
-
7
- describe("fetch", function(){
8
- var encodedParams, timeline, onSend, sender;
9
-
10
- beforeEach(function(){
11
- timeline = Mocks.getTimeline();
12
- timeline.isEmpty.and.returnValue(false);
13
- timeline.send.and.callFake(function(sendXHR, callback) {
14
- sendXHR({ events: [1, 2, 3]}, callback);
15
- });
16
-
17
- onSend = jasmine.createSpy("onSend");
18
- sender = new TimelineSender(timeline, {
19
- host: "example.com",
20
- path: "/timeline"
21
- });
22
-
23
- Runtime.TimelineTransport = fetchTimeline;
24
- encodedParams = 'WzEsMiwzXQ%3D%3D';
25
- });
26
-
27
- afterEach(function(){
28
- fetchMock.restore();
29
- });
30
-
31
- describe("on send", function(){
32
- it ("should send a non-empty timeline", function(){
33
- var matcher = /example\.com/;
34
-
35
- fetchMock.mock(matcher, 200);
36
- sender.send(false, onSend);
37
-
38
- var lastCall = fetchMock.lastCall(matcher)[0];
39
- expect(lastCall).toEqual('http://example.com/timeline/2?events=' + encodedParams);
40
- });
41
- });
42
-
43
- it("should send secure requests when using TLS", function(){
44
- var matcher = /example\.com/;
45
-
46
- var sender = new TimelineSender(timeline, {
47
- useTLS: true,
48
- host: "example.com",
49
- path: "/timeline"
50
- });
51
-
52
- fetchMock.mock(matcher, 200);
53
- sender.send(true, onSend);
54
-
55
- var lastCall = fetchMock.lastCall(matcher)[0];
56
- expect(lastCall).toEqual('https://example.com/timeline/2?events=' + encodedParams);
57
- });
58
-
59
- it("should use returned hostname for subsequent requests", function(done) {
60
- var matcher = /example\.com/;
61
-
62
- fetchMock.mock(matcher, {
63
- status: 200,
64
- body: JSON.stringify({host: "returned.example.com"})
65
- });
66
-
67
- sender.send(false);
68
-
69
- setTimeout(function(){
70
- sender.send(false)
71
- var lastCall = fetchMock.lastCall(matcher)[0];
72
- expect(lastCall).toEqual('http://returned.example.com/timeline/2?events=' + encodedParams);
73
- done();
74
- }, 10);
75
- });
76
- });
@@ -1,18 +0,0 @@
1
- import AbstractRuntime from '../../runtimes/interface';
2
- import { AuthRequestType, InternalAuthOptions } from './options';
3
-
4
- interface AuthTransport {
5
- (
6
- context: AbstractRuntime,
7
- query: string,
8
- authOptions: InternalAuthOptions,
9
- authRequestType: AuthRequestType,
10
- callback: Function
11
- ): void;
12
- }
13
-
14
- interface AuthTransports {
15
- [index: string]: AuthTransport;
16
- }
17
-
18
- export { AuthTransport, AuthTransports };