1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00
rails--rails/actioncable/test
Jeremy Daer b168eb5819 Cable message encoding
* Introduce a connection coder responsible for encoding Cable messages
  as WebSocket messages, defaulting to `ActiveSupport::JSON` and duck-
  typing to any object responding to `#encode` and `#decode`.
* Consolidate encoding responsibility to the connection. No longer
  explicitly JSON-encode from channels or other sources. Pass Cable
  messages as Hashes to `#transmit` and rely on it to encode.
* Introduce stream encoders responsible for decoding pubsub messages.
  Preserve the currently raw encoding, but make it easy to use JSON.
  Same duck type as the connection encoder.
* Revert recent data normalization/quoting (#23649) which treated
  `identifier` and `data` values as nested JSON objects rather than as
  opaque JSON-encoded strings. That dealt us an awkward hand where we'd
  decode JSON strings… or not, but always encode as JSON. Embedding
  JSON object values directly is preferably, no extra JSON encoding,
  but that should be a purposeful protocol version change rather than
  ambiguously, inadvertently supporting multiple message formats.
2016-03-31 07:08:16 -07:00
..
channel Cable message encoding 2016-03-31 07:08:16 -07:00
client Fix unsubscribed server side behavior 2016-02-18 16:26:17 -05:00
connection Cable message encoding 2016-03-31 07:08:16 -07:00
server Ensure server broadcasts are to string queue names 2016-02-24 17:22:06 -06:00
stubs Cable message encoding 2016-03-31 07:08:16 -07:00
subscription_adapter Cable message encoding 2016-03-31 07:08:16 -07:00
client_test.rb Cable message encoding 2016-03-31 07:08:16 -07:00
test_helper.rb Cable message encoding 2016-03-31 07:08:16 -07:00
worker_test.rb Don't rely on the global server as a receiver. 2016-02-14 17:46:48 +01:00