Module: Woulda::EnumerationsMixin::Macros

Defined in:
lib/woulda/enumerations_mixin/macros.rb

Instance Method Summary collapse

Instance Method Details

#should_act_as_enumerated(options = {}) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/woulda/enumerations_mixin/macros.rb', line 4

def should_act_as_enumerated(options = {})
  klass = model_class

  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