ヤミRoot VoidGate
User / IP
:
216.73.216.33
Host / Server
:
146.88.233.70 / dev.loger.cm
System
:
Linux hybrid1120.fr.ns.planethoster.net 3.10.0-957.21.2.el7.x86_64 #1 SMP Wed Jun 5 14:26:44 UTC 2019 x86_64
Command
|
Upload
|
Create
Mass Deface
|
Jumping
|
Symlink
|
Reverse Shell
Ping
|
Port Scan
|
DNS Lookup
|
Whois
|
Header
|
cURL
:
/
home
/
itrave
/
api
/
vendor
/
phpoption
/
phpoption
/
tests
/
PhpOption
/
Tests
/
Viewing: LazyOptionTest.php
<?php namespace PhpOption\Tests; use PhpOption\LazyOption; class LazyOptionTest extends \PHPUnit_Framework_TestCase { private $subject; public function setUp() { $this->subject = $this ->getMockBuilder('Subject') ->setMethods(array('execute')) ->getMock(); } public function testGetWithArgumentsAndConstructor() { $some = \PhpOption\LazyOption::create(array($this->subject, 'execute'), array('foo')); $this->subject ->expects($this->once()) ->method('execute') ->with('foo') ->will($this->returnValue(\PhpOption\Some::create('foo'))); $this->assertEquals('foo', $some->get()); $this->assertEquals('foo', $some->getOrElse(null)); $this->assertEquals('foo', $some->getOrCall('does_not_exist')); $this->assertEquals('foo', $some->getOrThrow(new \RuntimeException('does_not_exist'))); $this->assertFalse($some->isEmpty()); } public function testGetWithArgumentsAndCreate() { $some = new \PhpOption\LazyOption(array($this->subject, 'execute'), array('foo')); $this->subject ->expects($this->once()) ->method('execute') ->with('foo') ->will($this->returnValue(\PhpOption\Some::create('foo'))); $this->assertEquals('foo', $some->get()); $this->assertEquals('foo', $some->getOrElse(null)); $this->assertEquals('foo', $some->getOrCall('does_not_exist')); $this->assertEquals('foo', $some->getOrThrow(new \RuntimeException('does_not_exist'))); $this->assertFalse($some->isEmpty()); } public function testGetWithoutArgumentsAndConstructor() { $some = new \PhpOption\LazyOption(array($this->subject, 'execute')); $this->subject ->expects($this->once()) ->method('execute') ->will($this->returnValue(\PhpOption\Some::create('foo'))); $this->assertEquals('foo', $some->get()); $this->assertEquals('foo', $some->getOrElse(null)); $this->assertEquals('foo', $some->getOrCall('does_not_exist')); $this->assertEquals('foo', $some->getOrThrow(new \RuntimeException('does_not_exist'))); $this->assertFalse($some->isEmpty()); } public function testGetWithoutArgumentsAndCreate() { $option = \PhpOption\LazyOption::create(array($this->subject, 'execute')); $this->subject ->expects($this->once()) ->method('execute') ->will($this->returnValue(\PhpOption\Some::create('foo'))); $this->assertTrue($option->isDefined()); $this->assertFalse($option->isEmpty()); $this->assertEquals('foo', $option->get()); $this->assertEquals('foo', $option->getOrElse(null)); $this->assertEquals('foo', $option->getOrCall('does_not_exist')); $this->assertEquals('foo', $option->getOrThrow(new \RuntimeException('does_not_exist'))); } /** * @expectedException \RuntimeException * @expectedExceptionMessage None has no value */ public function testCallbackReturnsNull() { $option = \PhpOption\LazyOption::create(array($this->subject, 'execute')); $this->subject ->expects($this->once()) ->method('execute') ->will($this->returnValue(\PhpOption\None::create())); $this->assertFalse($option->isDefined()); $this->assertTrue($option->isEmpty()); $this->assertEquals('alt', $option->getOrElse('alt')); $this->assertEquals('alt', $option->getOrCall(function(){return 'alt';})); $option->get(); } /** * @expectedException \RuntimeException * @expectedExceptionMessage Expected instance of \PhpOption\Option */ public function testExceptionIsThrownIfCallbackReturnsNonOption() { $option = \PhpOption\LazyOption::create(array($this->subject, 'execute')); $this->subject ->expects($this->once()) ->method('execute') ->will($this->returnValue(null)); $this->assertFalse($option->isDefined()); } /** * @expectedException InvalidArgumentException * @expectedExceptionMessage Invalid callback given */ public function testInvalidCallbackAndConstructor() { new \PhpOption\LazyOption('invalidCallback'); } /** * @expectedException InvalidArgumentException * @expectedExceptionMessage Invalid callback given */ public function testInvalidCallbackAndCreate() { \PhpOption\LazyOption::create('invalidCallback'); } public function testifDefined() { $called = false; $self = $this; $this->assertNull(LazyOption::fromValue('foo')->ifDefined(function($v) use (&$called, $self) { $called = true; $self->assertEquals('foo', $v); })); $this->assertTrue($called); } public function testForAll() { $called = false; $self = $this; $this->assertInstanceOf('PhpOption\Some', LazyOption::fromValue('foo')->forAll(function($v) use (&$called, $self) { $called = true; $self->assertEquals('foo', $v); })); $this->assertTrue($called); } public function testOrElse() { $some = \PhpOption\Some::create('foo'); $lazy = \PhpOption\LazyOption::create(function() use ($some) {return $some;}); $this->assertSame($some, $lazy->orElse(\PhpOption\None::create())); $this->assertSame($some, $lazy->orElse(\PhpOption\Some::create('bar'))); } 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)); } }
Coded With 💗 by
0x6ick