/** * {@inheritdoc} * * @throws OptionException */ public function setOption($option, $value = '', $quiet = false) { if (!$option instanceof OptionInterface) { try { $option = OptionFactory::build($option, $value); } catch (OptionException $exception) { if ($quiet !== true) { throw $exception; } } } $this->removeOption($option->getOption()); $this->options[] = $option; }
/** * @expectedException \Jgut\Spiral\Exception\OptionException */ public function testGetterSetter() { $transport = new Curl(); static::assertFalse($transport->hasOption('fake_option')); $options = [CURLOPT_VERBOSE => false]; $transport->setOptions($options); static::assertCount(1, $transport->getOptions()); static::assertTrue($transport->hasOption(CURLOPT_VERBOSE)); static::assertTrue($transport->hasOption(OptionFactory::build(CURLOPT_VERBOSE, false))); static::assertEquals($options, [$transport->getOptions()[0]->getOption() => $transport->getOptions()[0]->getValue()]); $transport->removeOption('fake_option'); $transport->removeOption(CURLOPT_VERBOSE); $transport->removeOption(OptionFactory::build(CURLOPT_VERBOSE, false)); static::assertFalse($transport->hasOption(CURLOPT_VERBOSE)); $transport->setOption('fake_option'); }
public function testCreation() { $option = OptionFactory::build(CURLOPT_REFERER, 'referer'); static::assertEquals(CURLOPT_REFERER, $option->getOption()); }