draper/spec/support/shared_examples/view_helpers.rb

40 lines
1.2 KiB
Ruby

shared_examples_for "view helpers" do |subject|
describe "#helpers" do
it "returns the current view context" do
Draper::ViewContext.stub current: :current_view_context
expect(subject.helpers).to be :current_view_context
end
it "is aliased to #h" do
Draper::ViewContext.stub current: :current_view_context
expect(subject.h).to be :current_view_context
end
end
describe "#localize" do
it "delegates to #helpers" do
subject.stub helpers: double
subject.helpers.should_receive(:localize).with(:an_object, some: "parameter")
subject.localize(:an_object, some: "parameter")
end
it "is aliased to #l" do
subject.stub helpers: double
subject.helpers.should_receive(:localize).with(:an_object, some: "parameter")
subject.l(:an_object, some: "parameter")
end
end
describe ".helpers" do
it "returns the current view context" do
Draper::ViewContext.stub current: :current_view_context
expect(subject.class.helpers).to be :current_view_context
end
it "is aliased to .h" do
Draper::ViewContext.stub current: :current_view_context
expect(subject.class.h).to be :current_view_context
end
end
end