Example usage for org.eclipse.jface.databinding.conformance.util StaleEventTracker StaleEventTracker

List of usage examples for org.eclipse.jface.databinding.conformance.util StaleEventTracker StaleEventTracker

Introduction

In this page you can find the example usage for org.eclipse.jface.databinding.conformance.util StaleEventTracker StaleEventTracker.

Prototype

public StaleEventTracker() 

Source Link

Usage

From source file:org.eclipse.core.tests.databinding.observable.AbstractObservableTest.java

License:Open Source License

public void testStaleListener() throws Exception {
    assertFalse(observable.hasListeners());

    StaleEventTracker listener1 = new StaleEventTracker();

    assertFalse(observable.firstListenerAdded);
    observable.addStaleListener(listener1);
    assertTrue(observable.firstListenerAdded);
    observable.firstListenerAdded = false; // reset

    assertTrue(observable.hasListeners());
    assertEquals(0, listener1.count);/*from  w ww .  j  a v a2  s .c  o m*/

    observable.fireStale();

    assertEquals(1, listener1.count);
    assertSame(observable, listener1.event.getObservable());

    // Add a second stale listener as 1 vs. 2 listener code is different.
    StaleEventTracker listener2 = new StaleEventTracker();
    assertEquals(0, listener2.count);
    observable.addStaleListener(listener2);
    observable.fireStale();

    assertEquals(2, listener1.count);
    assertEquals(1, listener2.count);

    // Add a third stale listener as 2 vs. 3 or greater code is different.
    StaleEventTracker listener3 = new StaleEventTracker();
    observable.addStaleListener(listener3);
    assertEquals(0, listener3.count);

    observable.fireStale();

    assertEquals(3, listener1.count);
    assertEquals(2, listener2.count);
    assertEquals(1, listener3.count);

    assertFalse(observable.lastListenerRemoved);
    observable.removeStaleListener(listener1);
    observable.removeStaleListener(listener2);
    observable.removeStaleListener(listener3);
    assertTrue(observable.lastListenerRemoved);

    assertFalse(observable.hasListeners());
}

From source file:org.eclipse.core.tests.databinding.observable.AbstractObservableTest.java

License:Open Source License

public void testHasListenersWithChangeAndStaleListeners() throws Exception {
    ChangeEventTracker changeListener = new ChangeEventTracker();
    StaleEventTracker staleListener = new StaleEventTracker();

    assertFalse(observable.hasListeners());
    assertFalse(observable.firstListenerAdded);
    assertFalse(observable.lastListenerRemoved);

    observable.addChangeListener(changeListener);
    assertTrue(observable.hasListeners());
    assertTrue(observable.firstListenerAdded);
    assertFalse(observable.lastListenerRemoved);

    // reset/*  w w w .j  a  v  a 2  s  .  c  o  m*/
    observable.firstListenerAdded = false;
    observable.lastListenerRemoved = false;

    observable.addStaleListener(staleListener);
    assertTrue(observable.hasListeners());
    assertFalse(observable.firstListenerAdded);
    assertFalse(observable.lastListenerRemoved);

    observable.removeChangeListener(changeListener);
    assertTrue(observable.hasListeners());
    assertFalse(observable.firstListenerAdded);
    assertFalse(observable.lastListenerRemoved);

    observable.removeStaleListener(staleListener);
    assertFalse(observable.hasListeners());
    assertFalse(observable.firstListenerAdded);
    assertTrue(observable.lastListenerRemoved);
}

From source file:org.eclipse.core.tests.internal.databinding.observable.UnmodifiableObservableListTest.java

License:Open Source License

public void testFiresStaleEvents() throws Exception {
    StaleEventTracker mutableListener = new StaleEventTracker();
    StaleEventTracker unmodifiableListener = new StaleEventTracker();

    mutable.addStaleListener(mutableListener);
    unmodifiable.addStaleListener(unmodifiableListener);

    assertEquals(0, mutableListener.count);
    assertEquals(0, unmodifiableListener.count);
    mutable.setStale(true);/*  w  w  w . j  a va  2  s.c om*/
    assertEquals(1, mutableListener.count);
    assertEquals(mutable, mutableListener.event.getObservable());
    assertTrue(mutable.isStale());
    assertEquals(1, unmodifiableListener.count);
    assertEquals(unmodifiable, unmodifiableListener.event.getObservable());
    assertTrue(unmodifiable.isStale());
}

From source file:org.eclipse.core.tests.internal.databinding.observable.UnmodifiableObservableValueTest.java

License:Open Source License

public void testFiresStaleEvents() {
    StaleEventTracker wrappedListener = new StaleEventTracker();
    StaleEventTracker unmodifiableListener = new StaleEventTracker();

    unmodifiable.wrappedValue.addStaleListener(wrappedListener);
    unmodifiable.addStaleListener(unmodifiableListener);

    assertEquals(0, wrappedListener.count);
    assertEquals(0, unmodifiableListener.count);
    unmodifiable.wrappedValue.setStale(true);
    assertEquals(1, wrappedListener.count);
    assertEquals(unmodifiable.wrappedValue, wrappedListener.event.getObservable());
    assertTrue(unmodifiable.wrappedValue.isStale());
    assertEquals(1, unmodifiableListener.count);
    assertEquals(unmodifiable, unmodifiableListener.event.getObservable());
    assertTrue(unmodifiable.isStale());//from   ww  w.  j a va 2  s.  c o  m
}