Sha256: 347fc315d75451f3b380f6b682fa1f5969ec7c5a10c31e8f469d9f4770fdf9e4
Contents?: true
Size: 1.18 KB
Versions: 3
Compression:
Stored size: 1.18 KB
Contents
require 'spec_helper' require 'tailor/composite_observable' class Tester include Tailor::CompositeObservable end describe Tailor::CompositeObservable do subject { Tester.new } describe '.define_observer' do context "observer = 'pants'" do before { Tailor::CompositeObservable.define_observer 'pants' } context 'observer responds to #pants_update' do it "defines an instance method 'add_pants_observer' that takes 1 arg" do observer = double 'Observer', respond_to?: true subject.add_pants_observer(observer) end end context 'observer does not respond to #pants_update' do it "defines an instance method 'add_pants_observer' that takes 1 arg" do observer = double 'Observer', respond_to?: false expect { subject.add_pants_observer(observer) }. to raise_error NoMethodError end end it 'defines an instance method #notify_pants_observers' do expect { subject.notify_pants_observers }. to_not raise_error end it 'defines an instance method #pants_changed' do expect { subject.pants_changed }.to_not raise_error end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
tailor-1.4.0 | spec/unit/tailor/composite_observable_spec.rb |
tailor-1.3.1 | spec/unit/tailor/composite_observable_spec.rb |
tailor-1.3.0 | spec/unit/tailor/composite_observable_spec.rb |