Sha256: bd9b327ba43ca8bd4cf3a12bcc318eba33200d9c73b4fd2119ec6fd4924c1e3f
Contents?: true
Size: 1.49 KB
Versions: 1
Compression:
Stored size: 1.49 KB
Contents
require 'spec_helper' require 'rails' require 'concerned' require 'active_support/dependencies' # The same procedure as one that needed for common #require - It should know path. $:.unshift File.dirname __FILE__ class FixtureUser include Concerned concerned_with :scopes, :validations shared_concerns :associations include_shared_concerns :caching include_concerns :validations end class FixtureUserNoMeta concerned_with :scopes, :validations shared_concerns :associations include_shared_concerns :caching include_concerns :validations end describe "Concerned" do describe "no meta" do it 'should not have meta info' do FixtureUserNoMeta.should_not respond_to(:my_concerns) FixtureUserNoMeta.should_not respond_to(:my_shared_concerns) FixtureUserNoMeta.should_not respond_to(:all_my_concerns) end end end describe "Concerned" do describe "#concerned_with" do it 'should require files from #{name.underscore}/#{concern}' do [:scopes, :validations].each do |concern| FixtureUser.new.should respond_to("method_from_#{concern}_concern") end FixtureUser.my_concerns.should include(:validations) FixtureUser.my_shared_concerns.should include(:caching) FixtureUser.all_my_concerns.should include(:caching, :validations) end end describe "#include_shared_concerns" do it 'should require and include from shared/#{concern}' do FixtureUser.new.should respond_to("method_from_shared_concern") end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
concerned-0.1.3 | spec/concerned_spec.rb |