Sha256: d22e1051744029f6a0232863cffdfde17b1faaf15898e1a3fa3f0ce4b7fcd418
Contents?: true
Size: 1.13 KB
Versions: 1
Compression:
Stored size: 1.13 KB
Contents
require 'spec_helper' describe Module::Mixins::Including do context 'a class including a module' do before do @m = Module.new do extend Module::Mixins::Including end @k = Class.new @k.send :include, @m Object.const_set "Class_#{SecureRandom.uuid.delete('-')}", @k end it 'classes_including' do expect(@m.classes_including).to eq [@k] expect(@m.classes_including.first.new).to be_a_kind_of @k end context 'inherited' do before do @child = Class.new(@k) Object.const_set "Class_#{SecureRandom.uuid.delete('-')}", @child end it 'classes_including includes children' do expect(@m.classes_including).to eq [@k, @child] @child.send :include, @m end end end context 'Enumerable' do before do Enumerable.extend Module::Mixins::Including end it 'classes_including' do expect(Enumerable.classes_including).to include Array end end context 'module classes_including' do it 'Enumerator' do expect(Module::Mixins::Including.classes_including(Comparable)).to include String end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
module-mixins-0.1.0 | spec/module/mixins/including_spec.rb |