summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/Configuration.php112
-rw-r--r--test/ConfigurationTest.php25
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',
],
],
];