public function testShouldCheckRuleWhenInputIsNotOptional() { $input = 'foo'; $validatable = $this->getMock('Respect\\Validation\\Validatable'); $validatable->expects($this->once())->method('check')->with($input)->will($this->returnValue(true)); $rule = new Optional($validatable); $this->assertTrue($rule->check($input)); }
public function run() { DB::table('optionals')->truncate(); $optional = new Optional(); $optional->name = "New"; $optional->save(); $optional = new Optional(); $optional->name = "Sale"; $optional->save(); }
/** * Create new Optional (aka "Maybe") monad. * * @param mixed $value a value * @return Optional an Optional monad */ function optional($value) : Optional { return Optional::create($value); }
public function reduce(BiFunc $accumulator) : Optional { $first = true; foreach ($this->execute() as $v) { if ($first) { $identity = $v; $first = false; } else { $identity = $accumulator->apply($identity, $v); } } if ($first) { return Optional::empty(); } else { return Optional::of($identity); } }
/** * Whether the contained value equals the value contained in another Optional * @param Optional $object * @return bool */ public function equals(Optional $object) { if ($object instanceof Some) { return $this->ref === $object->get(); } return false; }