diff options
-rw-r--r-- | src/Configuration.php | 112 | ||||
-rw-r--r-- | test/ConfigurationTest.php | 25 |
2 files changed, 76 insertions, 61 deletions
diff --git a/src/Configuration.php b/src/Configuration.php index ad429a3..50b19e2 100644 --- a/src/Configuration.php +++ b/src/Configuration.php @@ -12,64 +12,65 @@ use Psr\Log\NullLogger; class Configuration { use LoggerAwareTrait; - + /** * @var int */ protected $maxTopCandidates = 5; - + /** * @var int */ protected $wordThreshold = 500; - + /** * @var bool */ protected $articleByLine = false; - + /** * @var bool */ protected $stripUnlikelyCandidates = true; - + /** * @var bool */ protected $cleanConditionally = true; - + /** * @var bool */ protected $weightClasses = true; - + /** * @var bool */ protected $fixRelativeURLs = false; - + /** * @var bool */ protected $substituteEntities = false; - + /** * @var bool */ protected $normalizeEntities = false; - + /** * @var bool */ protected $summonCthulhu = false; - + /** * @var string */ protected $originalURL = 'http://fakehost'; - + /** * Configuration constructor. + * * @param array $params */ public function __construct(array $params = []) @@ -81,9 +82,10 @@ class Configuration } } } - + /** - * Returns an array-representation of configuration + * Returns an array-representation of configuration. + * * @return array */ public function toArray() @@ -91,13 +93,14 @@ class Configuration $out = []; foreach ($this as $key => $value) { $getter = "get{$key}"; - if (! is_object($value) && method_exists($this, $getter)) { + if (!is_object($value) && method_exists($this, $getter)) { $out[$key] = call_user_func([$this, $getter]); } } + return $out; } - + /** * @return LoggerInterface */ @@ -110,7 +113,7 @@ class Configuration return $this->logger; } } - + /** * @return int */ @@ -118,18 +121,19 @@ class Configuration { return $this->maxTopCandidates; } - + /** * @param int $maxTopCandidates + * * @return $this */ public function setMaxTopCandidates($maxTopCandidates) { $this->maxTopCandidates = $maxTopCandidates; - + return $this; } - + /** * @return int */ @@ -137,18 +141,19 @@ class Configuration { return $this->wordThreshold; } - + /** * @param int $wordThreshold + * * @return $this */ public function setWordThreshold($wordThreshold) { $this->wordThreshold = $wordThreshold; - + return $this; } - + /** * @return bool */ @@ -156,18 +161,19 @@ class Configuration { return $this->articleByLine; } - + /** * @param bool $articleByLine + * * @return $this */ public function setArticleByLine($articleByLine) { $this->articleByLine = $articleByLine; - + return $this; } - + /** * @return bool */ @@ -175,18 +181,19 @@ class Configuration { return $this->stripUnlikelyCandidates; } - + /** * @param bool $stripUnlikelyCandidates + * * @return $this */ public function setStripUnlikelyCandidates($stripUnlikelyCandidates) { $this->stripUnlikelyCandidates = $stripUnlikelyCandidates; - + return $this; } - + /** * @return bool */ @@ -194,18 +201,19 @@ class Configuration { return $this->cleanConditionally; } - + /** * @param bool $cleanConditionally + * * @return $this */ public function setCleanConditionally($cleanConditionally) { $this->cleanConditionally = $cleanConditionally; - + return $this; } - + /** * @return bool */ @@ -213,18 +221,19 @@ class Configuration { return $this->weightClasses; } - + /** * @param bool $weightClasses + * * @return $this */ public function setWeightClasses($weightClasses) { $this->weightClasses = $weightClasses; - + return $this; } - + /** * @return bool */ @@ -232,18 +241,19 @@ class Configuration { return $this->fixRelativeURLs; } - + /** * @param bool $fixRelativeURLs + * * @return $this */ public function setFixRelativeURLs($fixRelativeURLs) { $this->fixRelativeURLs = $fixRelativeURLs; - + return $this; } - + /** * @return bool */ @@ -251,18 +261,19 @@ class Configuration { return $this->substituteEntities; } - + /** * @param bool $substituteEntities + * * @return $this */ public function setSubstituteEntities($substituteEntities) { $this->substituteEntities = $substituteEntities; - + return $this; } - + /** * @return bool */ @@ -270,18 +281,19 @@ class Configuration { return $this->normalizeEntities; } - + /** * @param bool $normalizeEntities + * * @return $this */ public function setNormalizeEntities($normalizeEntities) { $this->normalizeEntities = $normalizeEntities; - + return $this; } - + /** * @return string */ @@ -289,18 +301,19 @@ class Configuration { return $this->originalURL; } - + /** * @param string $originalURL + * * @return $this */ public function setOriginalURL($originalURL) { $this->originalURL = $originalURL; - + return $this; } - + /** * @return bool */ @@ -308,15 +321,16 @@ class Configuration { return $this->summonCthulhu; } - + /** * @param bool $summonCthulhu + * * @return $this */ public function setSummonCthulhu($summonCthulhu) { $this->summonCthulhu = $summonCthulhu; - + return $this; } } diff --git a/test/ConfigurationTest.php b/test/ConfigurationTest.php index 7ee8ed2..0c839e6 100644 --- a/test/ConfigurationTest.php +++ b/test/ConfigurationTest.php @@ -3,7 +3,7 @@ * Created by PhpStorm. * User: topot * Date: 09.03.2018 - * Time: 16:26 + * Time: 16:26. */ namespace andreskrey\Readability\Test; @@ -11,13 +11,13 @@ namespace andreskrey\Readability\Test; use andreskrey\Readability\Configuration; /** - * Class ConfigurationTest - * @package andreskrey\Readability\Test + * Class ConfigurationTest. */ class ConfigurationTest extends \PHPUnit_Framework_TestCase { /** * @dataProvider getParams + * * @param array $params */ public function testConfigurationConstructorSetsParameters(array $params) @@ -25,9 +25,10 @@ class ConfigurationTest extends \PHPUnit_Framework_TestCase $config = new Configuration($params); $this->doEqualsAsserts($config, $params); } - + /** * @dataProvider getParams + * * @param array $params */ public function testInvalidParameterIsNotInConfig(array $params) @@ -35,7 +36,7 @@ class ConfigurationTest extends \PHPUnit_Framework_TestCase $config = new Configuration($params); $this->assertArrayNotHasKey('invalidParameter', $config->toArray(), 'Invalid param key is not present in config'); } - + /** * @param Configuration $config * @param array $options @@ -50,7 +51,7 @@ class ConfigurationTest extends \PHPUnit_Framework_TestCase $this->assertEquals($options['stripUnlikelyCandidates'], $config->getStripUnlikelyCandidates()); $this->assertEquals($options['substituteEntities'], $config->getSubstituteEntities()); } - + /** * @return array */ @@ -59,13 +60,13 @@ class ConfigurationTest extends \PHPUnit_Framework_TestCase return [ [ [ - 'originalURL' => 'my.original.url', - 'fixRelativeURLs' => true, - 'articleByLine' => true, - 'maxTopCandidates' => 3, + 'originalURL' => 'my.original.url', + 'fixRelativeURLs' => true, + 'articleByLine' => true, + 'maxTopCandidates' => 3, 'stripUnlikelyCandidates' => false, - 'substituteEntities' => true, - 'invalidParameter' => 'invalidParameterValue', + 'substituteEntities' => true, + 'invalidParameter' => 'invalidParameterValue', ], ], ]; |