Sha256: 7cc3c24d04c4844da9e951fcf112bea71f9e28a3e0b9d5a394177f2422148436
Contents?: true
Size: 1.16 KB
Versions: 1
Compression:
Stored size: 1.16 KB
Contents
require 'rspec_ext' require "#{__FILE__.dirname}/helper" require "crystal/support/callbacks" require "crystal/support/filters" describe "Filters" do module ARemote inherit Crystal::Filters end class FiltersBasic inherit ARemote before :set_user def action 'result' end attr_reader :user def set_user @user = 'some user' end end class FilterInheritance < FiltersBasic before :set_model attr_reader :model def set_model @model = 'some model' end end class FilterOverrideAction < FiltersBasic def action 'overriden result' end end it 'basic' do r = FiltersBasic.new r.run_callbacks(:action){r.send :action}.should == 'result' r.user.should == 'some user' end it 'inheritance' do r = FilterInheritance.new r.run_callbacks(:action){r.send :action}.should == 'result' r.user.should == 'some user' r.model.should == 'some model' end it "overriding action" do r = FilterOverrideAction.new r.run_callbacks(:action){r.send :action}.should == 'overriden result' r.user.should == 'some user' end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
crystal-0.0.12 | spec/support/filters_spec.rb |