コード例 #1
0
ファイル: RunTest.php プロジェクト: php-fp/php-fp-reader
 public function testRun()
 {
     $this->assertEquals(Reader::of(2)->chain(function ($x) {
         return Reader::ask()->map(function ($y) use($x) {
             return $x + $y;
         });
     })->run(20), 22, 'Runs.');
 }
コード例 #2
0
ファイル: AskTest.php プロジェクト: php-fp/php-fp-reader
 public function testAsk()
 {
     $this->assertEquals(Reader::of(2)->chain(function ($x) {
         return Reader::ask()->map(function ($y) use($x) {
             return $x + $y;
         });
     })->run(4), 6, 'Accesses environment.');
 }
コード例 #3
0
ファイル: OfTest.php プロジェクト: php-fp/php-fp-reader
 public function testApplicativeConstructor()
 {
     $this->assertEquals(Reader::of(2)->run(4), 2, 'Constructs an applicative.');
 }
コード例 #4
0
ファイル: MapTest.php プロジェクト: php-fp/php-fp-reader
 public function testMap()
 {
     $this->assertEquals(Reader::of(2)->map(function ($x) {
         return $x * 5;
     })->run(20), 10, 'Maps.');
 }
コード例 #5
0
ファイル: ApTest.php プロジェクト: php-fp/php-fp-reader
 public function testAp()
 {
     $this->assertEquals(Reader::of(function ($x) {
         return $x + 2;
     })->ap(Reader::of(10))->run(50), 12, 'Applies.');
 }