class TestScheduler extends Scheduler
Scheduler with artificial time, useful for testing.
For example, you could test the Observable.interval operation using a TestScheduler as follows:
@Test def testInterval() { import org.mockito.Matchers._ import org.mockito.Mockito._ import rx.lang.scala.JavaConversions._ val scheduler = TestScheduler() val observer = mock(classOf[rx.Observer[Long]]) val o = Observable.interval(1 second, scheduler) val sub = o.subscribe(toScalaObserver(new TestObserver(observer))) verify(observer, never).onNext(0L) verify(observer, never).onCompleted() verify(observer, never).onError(any(classOf[Throwable])) scheduler.advanceTimeTo(2 seconds) val inOrdr = inOrder(observer); inOrdr.verify(observer, times(1)).onNext(0L) inOrdr.verify(observer, times(1)).onNext(1L) inOrdr.verify(observer, never).onNext(2L) verify(observer, never).onCompleted() verify(observer, never).onError(any(classOf[Throwable])) sub.unsubscribe(); scheduler.advanceTimeTo(4 seconds) verify(observer, never).onNext(2L) verify(observer, times(1)).onCompleted() verify(observer, never).onError(any(classOf[Throwable])) }
- Alphabetic
- By Inheritance
- TestScheduler
- Scheduler
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def advanceTimeBy(time: Duration): Unit
- def advanceTimeTo(time: Duration): Unit
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
val
asJavaScheduler: schedulers.TestScheduler
- Definition Classes
- TestScheduler → Scheduler
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
def
createWorker: Worker
Retrieve or create a new rx.lang.scala.Worker that represents serial execution of actions.
Retrieve or create a new rx.lang.scala.Worker that represents serial execution of actions.
When work is completed it should be unsubscribed using unsubscribe.
Work on a rx.lang.scala.Worker is guaranteed to be sequential.
- returns
Inner representing a serial queue of actions to be executed
- Definition Classes
- Scheduler
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
def
now: Long
- returns
the scheduler's notion of current absolute time in milliseconds.
- Definition Classes
- Scheduler
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
- def triggerActions(): Unit
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()