Sha256: a26691b5d42b39b8b9ebbf12b53182683e8e4e703c67d470dd283418fe942320
Contents?: true
Size: 1.13 KB
Versions: 1
Compression:
Stored size: 1.13 KB
Contents
require 'spec_helper' module Draper describe HelperProxy do describe "#initialize" do it "sets the view context" do view_context = double helper_proxy = HelperProxy.new(view_context) expect(helper_proxy.send(:view_context)).to be view_context end end describe "#method_missing" do protect_class HelperProxy it "proxies methods to the view context" do view_context = double helper_proxy = HelperProxy.new(view_context) view_context.stub(:foo).and_return{|arg| arg} expect(helper_proxy.foo(:passed)).to be :passed end it "passes blocks" do view_context = double helper_proxy = HelperProxy.new(view_context) view_context.stub(:foo).and_return{|&block| block.call} expect(helper_proxy.foo{:yielded}).to be :yielded end it "defines the method for better performance" do helper_proxy = HelperProxy.new(double(foo: "bar")) expect(HelperProxy.instance_methods).not_to include :foo helper_proxy.foo expect(HelperProxy.instance_methods).to include :foo end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
draper-1.1.0 | spec/draper/helper_proxy_spec.rb |