Sha256: 09a3f741ec22bc429aa06029487584a57b738b41fb67132312431a675079e8be

Contents?: true

Size: 1009 Bytes

Versions: 2

Compression:

Stored size: 1009 Bytes

Contents

module Woulda
  module EnumerationsMixin
    module Macros
      def should_act_as_enumerated(options = {})
        klass = described_type

        should_have_db_columns :name

        should "define Enumerated macro methods" do
          class_modules = (class << klass; included_modules; end)
          assert class_modules.include?(ActiveRecord::Acts::Enumerated::MacroMethods), "#{klass} doesn't define Enumerated macro methods"
        end

        should "define Enumerated class methods" do
          class_modules = (class << klass; included_modules; end)
          assert class_modules.include?(ActiveRecord::Acts::Enumerated::ClassMethods), "#{klass} doesn't define Enumerated class methods"
        end

        should "define Enumerated instance methods" do
          instance_modules = klass.included_modules
          assert instance_modules.include?(ActiveRecord::Acts::Enumerated::InstanceMethods), "#{klass} doesn't define Enumerated instance methods"
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
svenaas-woulda-0.3.1 lib/woulda/enumerations_mixin/macros.rb
svenaas-woulda-0.2.3 lib/woulda/enumerations_mixin/macros.rb