Package org.groovymud.engine.event.observer

Source Code of org.groovymud.engine.event.observer.ObservableTest

package org.groovymud.engine.event.observer;

import java.util.HashSet;
import java.util.Set;

import junit.framework.TestCase;

import org.easymock.MockControl;
import org.groovymud.engine.event.IScopedEvent;

public class ObservableTest extends TestCase {

  public void testNotifyObservers() {
    MockControl eventCtrl = MockControl.createControl(IScopedEvent.class);
    IScopedEvent event = (IScopedEvent) eventCtrl.getMock();
    eventCtrl.replay();
    final HashSet observers = new HashSet();

    Observable obj = new Observable() {

      @Override
      public Set getObservers() {
        // TODO Auto-generated method stub
        return observers;
      }

      @Override
      public void doEvent(IScopedEvent event) {
        // TODO Auto-generated method stub

      }

      @Override
      public void fireEvent(IScopedEvent event) {
        // TODO Auto-generated method stub

      }
    };
    MockControl control = MockControl.createControl(Observer.class);
    Observer observer = (Observer) control.getMock();
    observer.update(obj, event);
    control.setDefaultVoidCallable();
    control.replay();

    observers.add(observer);
    obj.setChanged();
    obj.notifyObservers(event);
    assertFalse(obj.hasChanged());
    eventCtrl.verify();
    control.verify();
  }

}
TOP

Related Classes of org.groovymud.engine.event.observer.ObservableTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.