Sha256: 995c527356997bcad929d8b8070eed4d283eb2d2b7208eecc35139afbc475e12

Contents?: true

Size: 740 Bytes

Versions: 2

Compression:

Stored size: 740 Bytes

Contents

RSpec::Matchers.define(:set_view_local) do |key, expected = nil|
  match do |block|
    block.call if block && block.is_a?(Proc)

    value = assigns("__view__").send(key.to_sym) rescue nil

    return !!value unless expected

    expect(expected).to(eq(value))
  end

  supports_block_expectations

  description do
    msg = "set view local"
    msg += " to equal #{expected.inspect}" if expected
    msg
  end

  failure_message do
    msg = "expected view locals to have key #{key.inspect}"
    msg += " to equal #{expected.inspect}" if expected
    msg
  end

  failure_message_when_negated do
    msg = "expected view locals to not have key #{key.inspect}"
    msg += " to not equal #{expected.inspect}" if expected
    msg
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
render_with_view-0.2.1 lib/render_with_view/rspec_matcher.rb
render_with_view-0.2.0 lib/render_with_view/rspec_matcher.rb