{module, test} = QUnit {testURL} = ActionCable.TestHelpers module "ActionCable", -> module "Adapters", -> module "WebSocket", -> test "default is window.WebSocket", (assert) -> assert.equal ActionCable.WebSocket, window.WebSocket test "configurable", (assert) -> ActionCable.WebSocket = "" assert.equal ActionCable.WebSocket, "" module "logger", -> test "default is window.console", (assert) -> assert.equal ActionCable.logger, window.console test "configurable", (assert) -> ActionCable.logger = "" assert.equal ActionCable.logger, "" module "#createConsumer", -> test "uses specified URL", (assert) -> consumer = ActionCable.createConsumer(testURL) assert.equal consumer.url, testURL test "uses default URL", (assert) -> pattern = ///#{ActionCable.INTERNAL.default_mount_path}$/// consumer = ActionCable.createConsumer() assert.ok pattern.test(consumer.url), "Expected #{consumer.url} to match #{pattern}" test "uses URL from meta tag", (assert) -> element = document.createElement("meta") element.setAttribute("name", "action-cable-url") element.setAttribute("content", testURL) document.head.appendChild(element) consumer = ActionCable.createConsumer() document.head.removeChild(element) assert.equal consumer.url, testURL