spec/sugar-high/rails/concerns_spec.rb in sugar-high-0.5.5 vs spec/sugar-high/rails/concerns_spec.rb in sugar-high-0.6.0

- old
+ new

@@ -1,10 +1,40 @@ require 'spec_helper' require 'rails' require 'sugar-high/rails/concerns' +require 'active_support/dependencies' +# The same procedure as one that needed for common #require - It should know path. +$:.unshift File.dirname __FILE__ + +class FixtureUser + concerned_with :scopes, :validations + shared_concerns :associations + include_shared_concerns :caching +end + describe "SugarHigh Rails" do describe "Concerns pack" do - pending 'TODO' + 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 + end + end + + describe "#shared_concerns" do + it 'should require files from shared/#{concern}' do + pending "How to be with namespaces? Is such raw implementation enough? Or just drop this kind of method?" + 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 end +