public function defer_complete()
{
$invoked = 0;
$xs = null;
$results = $this->scheduler->startWithCreate(function () use(&$invoked, &$xs) {
return Observable::defer(function () use(&$invoked, &$xs) {
$invoked++;
$xs = $this->createColdObservable([onNext(100, $this->scheduler->getClock()), onCompleted(200)]);
return $xs;
});
});
$this->assertMessages([onNext(300, 200), onCompleted(400)], $results->getMessages());
$this->assertEquals(1, $invoked);
$this->assertSubscriptions([subscribe(200, 400)], $xs->getSubscriptions());
}