Sha256: bcb28f5d58115d32724fc766944495937533c2f68badffc40ad7bb3ec191e976

Contents?: true

Size: 880 Bytes

Versions: 9

Compression:

Stored size: 880 Bytes

Contents

# Basic class method specs

require 'lib/maintain'

describe Maintain do
  before :each do
    class ::MaintainSubclassTest
      attr_accessor :existant_attribute
      extend Maintain
    end

    class ::MaintainSubclassTestSubclass < ::MaintainSubclassTest; end
  end

  it "should inherit maintainers from parent classes" do
    MaintainSubclassTest.maintain :status do
      state :new
      state :old
    end
    MaintainSubclassTestSubclass.maintainers[:status].should_not be_nil
  end

  it "should not propagate maintainers up the class system" do
    MaintainSubclassTest.maintain :status do
      state :new
      state :old
    end
    MaintainSubclassTestSubclass.maintain :foo do
      state :bar
      state :baz
    end
    MaintainSubclassTest.maintainers[:foo].should be_nil
    MaintainSubclassTestSubclass.maintainers[:status].should_not be_nil
  end

  
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
maintain-0.2.17 spec/subclass_spec.rb
maintain-0.2.16 spec/subclass_spec.rb
maintain-0.2.15 spec/subclass_spec.rb
maintain-0.2.14 spec/subclass_spec.rb
maintain-0.2.13 spec/subclass_spec.rb
maintain-0.2.12 spec/subclass_spec.rb
maintain-0.2.11 spec/subclass_spec.rb
maintain-0.2.10 spec/subclass_spec.rb
maintain-0.2.9 spec/subclass_spec.rb