LazyOptionTest::testFoldLeftRight()


Source

File: vendor/phpoption/phpoption/tests/PhpOption/Tests/LazyOptionTest.php

    public function testFoldLeftRight()
    {
        $callback = function() { };

        $option = $this->getMockForAbstractClass('PhpOption\Option');
        $option->expects($this->once())
            ->method('foldLeft')
            ->with(5, $callback)
            ->will($this->returnValue(6));
        $lazyOption = new LazyOption(function() use ($option) { return $option; });
        $this->assertSame(6, $lazyOption->foldLeft(5, $callback));

        $option->expects($this->once())
            ->method('foldRight')
            ->with(5, $callback)
            ->will($this->returnValue(6));
        $lazyOption = new LazyOption(function() use ($option) { return $option; });
        $this->assertSame(6, $lazyOption->foldRight(5, $callback));
    }