Sha256: 67fe079076ea1baa75d74bd5582949718e6c6030e648d0cf4a62f036af0d3875

Contents?: true

Size: 809 Bytes

Versions: 10

Compression:

Stored size: 809 Bytes

Contents

module Turbo
  module TestAssertions
    extend ActiveSupport::Concern

    included do
      # FIXME: Should happen in Rails at a different level
      delegate :dom_id, :dom_class, to: ActionView::RecordIdentifier
    end

    def assert_turbo_stream(action:, target: nil, &block)
      assert_response :ok
      assert_equal Mime[:turbo_stream], response.media_type
      assert_select %(turbo-stream[action="#{action}"][target="#{target.respond_to?(:to_key) ? dom_id(target) : target}"]), count: 1, &block
    end

    def assert_no_turbo_stream(action:, target: nil)
      assert_response :ok
      assert_equal Mime[:turbo_stream], response.media_type
      assert_select %(turbo-stream[action="#{action}"][target="#{target.respond_to?(:to_key) ? dom_id(target) : target}"]), count: 0
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
turbo-rails-0.5.9 lib/turbo/test_assertions.rb
turbo-rails-0.5.8 lib/turbo/test_assertions.rb
turbo-rails-0.5.7 lib/turbo/test_assertions.rb
turbo-rails-0.5.6 lib/turbo/test_assertions.rb
turbo-rails-0.5.5 lib/turbo/test_assertions.rb
turbo-rails-0.5.4 lib/turbo/test_assertions.rb
turbo-rails-0.5.3 lib/turbo/test_assertions.rb
turbo-rails-0.5.2 lib/turbo/test_assertions.rb
turbo-rails-0.5.1 lib/turbo/test_assertions.rb
turbo-rails-0.5.0 lib/turbo/test_assertions.rb