Sha256: db956d8722730715991b6d20e2e3ad681d751b33aa486ef09e1205ef12a367cb
Contents?: true
Size: 1.42 KB
Versions: 1
Compression:
Stored size: 1.42 KB
Contents
require "rails_helper" describe MagicLamp::RenderCatcher do subject { MagicLamp::RenderCatcher.new(MagicLamp::Configuration.new) } it { is_expected.to be_kind_of(MagicLamp::Callbacks) } context "attr_accessor" do it { is_expected.to respond_to :render_argument } it { is_expected.to respond_to :render_argument= } end describe "#render" do it "saves its first arguments as render argument" do subject.render :foo, :bar, :baz expect(subject.render_argument).to eq(:foo) end end describe "#first_render_argument" do let(:block) { proc { render :foo, :bar, :baz } } let(:result) { subject.first_render_argument(&block) } it "returns the first argument to render given a block" do expect(result).to eq(:foo) end it "executes callbacks around the evaluation of the block" do expect(subject).to receive(:execute_before_each_callback).ordered expect(subject).to receive(:instance_eval).ordered expect(subject).to receive(:execute_after_each_callback).ordered subject.first_render_argument { render :foo } end end describe "#method_missing" do it "does nothing when an unknown method is called" do expect do subject.foo subject.foo = "what" subject.bar(1, 2, 3) { |x| "never gonna happen" } end.to_not raise_error end it "returns itself" do expect(subject.foo.bar.baz).to eq(subject) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
magic_lamp-1.0.0 | spec/lib/render_catcher_spec.rb |