Sha256: f95203927359298a09e6a4bd551ce479891698c94c32e01841ab1a6a0625bcf0

Contents?: true

Size: 793 Bytes

Versions: 2

Compression:

Stored size: 793 Bytes

Contents

require File.expand_path('../fixtures/classes', __FILE__)

describe "Observer#add_observer" do

  before(:each) do
    @observable = ObservableSpecs.new
    @observer = ObserverCallbackSpecs.new
    @custom_observer = ObserverCustomCallbackSpecs.new
  end

  it "adds the observer" do
    @observer.value.should == nil
    @observable.changed
    @observable.notify_observers("test")
    @observer.value.should == nil

    @observable.add_observer(@observer)
    @observable.changed
    @observable.notify_observers("test2")
    @observer.value.should == "test2"
  end

  it "supports custom method on observer" do
    @observable.add_observer(@custom_observer, :custom)
    @observable.changed
    @observable.notify_observers("test2")
    @custom_observer.value.should == "test2"
  end

end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
rubysl-observer-1.0.0 spec/add_observer_spec.rb
rubysl-observer-2.0.0 spec/add_observer_spec.rb