Rx\Functional\Operator\ConcatMapTest::concatMap_UseFunction PHP Method

concatMap_UseFunction() public method

    public function concatMap_UseFunction()
    {
        $xs = $this->createHotObservable([onNext(210, 4), onNext(220, 3), onNext(250, 5), onNext(270, 1), onCompleted(290)]);
        $results = $this->scheduler->startWithCreate(function () use($xs) {
            return $xs->concatMap(function ($x) {
                return Observable::interval(10, $this->scheduler)->map(function () use($x) {
                    return $x;
                })->take($x);
            });
        });
        $this->assertMessages([onNext(220, 4), onNext(230, 4), onNext(240, 4), onNext(250, 4), onNext(260, 3), onNext(270, 3), onNext(280, 3), onNext(290, 5), onNext(300, 5), onNext(310, 5), onNext(320, 5), onNext(330, 5), onNext(340, 1), onCompleted(340)], $results->getMessages());
        $this->assertSubscriptions([subscribe(200, 290)], $xs->getSubscriptions());
    }