Rx\Functional\Operator\TakeWhileTest::takeWhile_never PHP Method

takeWhile_never() public method

public takeWhile_never ( )
    public function takeWhile_never()
    {
        $xs = $this->createHotObservable([onNext(90, -1), onNext(110, -1), onNext(210, 2), onNext(260, 5), onNext(290, 13), onNext(320, 3), onCompleted(330), onNext(350, 7), onNext(390, 4), onNext(410, 17), onNext(450, 8), onNext(500, 23), onCompleted(600)]);
        $invoked = 0;
        $results = $this->scheduler->startWithCreate(function () use($xs, &$invoked) {
            return $xs->takeWhile(function ($x) use(&$invoked) {
                $invoked++;
                return $this->isPrime($x);
            });
        });
        $this->assertMessages([onNext(210, 2), onNext(260, 5), onNext(290, 13), onNext(320, 3), onCompleted(330)], $results->getMessages());
        $this->assertSubscriptions([subscribe(200, 330)], $xs->getSubscriptions());
        $this->assertEquals(4, $invoked);
    }