diff options
author | rmacklin <1863540+rmacklin@users.noreply.github.com> | 2018-11-26 14:16:02 -0800 |
---|---|---|
committer | Javan Makhmali <javan@javan.us> | 2018-11-26 17:16:02 -0500 |
commit | 85b080365313437f646070ca214fef433c06db6a (patch) | |
tree | a2df565070129cef9f5064b565229a1a9ad96be5 /actioncable/test/javascript/src/unit/subscriptions_test.js | |
parent | 38b676181b7cce5191b1877ad6781c490d38436d (diff) | |
download | rails-85b080365313437f646070ca214fef433c06db6a.tar.gz rails-85b080365313437f646070ca214fef433c06db6a.tar.bz2 rails-85b080365313437f646070ca214fef433c06db6a.zip |
Convert ActionCable tests from CoffeeScript to ES2015 and replace Blade with Karma and Rollup (#34440)
* Rename .coffee files in ActionCable test suite in prep for decaffeination
* Decaffeinate ActionCable tests
* Replace Blade with Karma and Rollup to run ActionCable JS tests
- Add karma and qunit devDependencies
- Add test script to ActionCable package
- Use rollup to bundle ActionCable tests
- Use karma as the ActionCable JS test runner
* Replace vendored mock-socket with package devDependency in ActionCable
* Move ActionCable yarn install to TravisCI before_install config
* Clean up decaffeinated ActionCable tests to use consistent formatting
Diffstat (limited to 'actioncable/test/javascript/src/unit/subscriptions_test.js')
-rw-r--r-- | actioncable/test/javascript/src/unit/subscriptions_test.js | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/actioncable/test/javascript/src/unit/subscriptions_test.js b/actioncable/test/javascript/src/unit/subscriptions_test.js new file mode 100644 index 0000000000..33af5d4d82 --- /dev/null +++ b/actioncable/test/javascript/src/unit/subscriptions_test.js @@ -0,0 +1,31 @@ +import consumerTest from "../test_helpers/consumer_test_helper" + +const {module} = QUnit + +module("ActionCable.Subscriptions", () => { + consumerTest("create subscription with channel string", ({consumer, server, assert, done}) => { + const channel = "chat" + + server.on("message", (message) => { + const data = JSON.parse(message) + assert.equal(data.command, "subscribe") + assert.equal(data.identifier, JSON.stringify({channel})) + done() + }) + + consumer.subscriptions.create(channel) + }) + + consumerTest("create subscription with channel object", ({consumer, server, assert, done}) => { + const channel = {channel: "chat", room: "action"} + + server.on("message", (message) => { + const data = JSON.parse(message) + assert.equal(data.command, "subscribe") + assert.equal(data.identifier, JSON.stringify(channel)) + done() + }) + + consumer.subscriptions.create(channel) + }) +}) |