diff options
author | topot <[email protected]> | 2018-03-09 18:52:57 +0300 |
---|---|---|
committer | topot <[email protected]> | 2018-03-09 18:52:57 +0300 |
commit | e2ceb450e96b1a66af597ae0a09792815ecbd28f (patch) | |
tree | d5a50ebf70924855a4b48cfaaeb65ffa44713007 /test/ConfigurationTest.php | |
parent | a2db9880e856bcc6c2f49438c55d62749ed68a3b (diff) |
Added: Configuration parameters array constructor injection
Diffstat (limited to 'test/ConfigurationTest.php')
-rw-r--r-- | test/ConfigurationTest.php | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/test/ConfigurationTest.php b/test/ConfigurationTest.php new file mode 100644 index 0000000..7ee8ed2 --- /dev/null +++ b/test/ConfigurationTest.php @@ -0,0 +1,73 @@ +<?php +/** + * Created by PhpStorm. + * User: topot + * Date: 09.03.2018 + * Time: 16:26 + */ + +namespace andreskrey\Readability\Test; + +use andreskrey\Readability\Configuration; + +/** + * Class ConfigurationTest + * @package andreskrey\Readability\Test + */ +class ConfigurationTest extends \PHPUnit_Framework_TestCase +{ + /** + * @dataProvider getParams + * @param array $params + */ + public function testConfigurationConstructorSetsParameters(array $params) + { + $config = new Configuration($params); + $this->doEqualsAsserts($config, $params); + } + + /** + * @dataProvider getParams + * @param array $params + */ + public function testInvalidParameterIsNotInConfig(array $params) + { + $config = new Configuration($params); + $this->assertArrayNotHasKey('invalidParameter', $config->toArray(), 'Invalid param key is not present in config'); + } + + /** + * @param Configuration $config + * @param array $options + */ + private function doEqualsAsserts(Configuration $config, array $options) + { + // just part of params, it's enough + $this->assertEquals($options['originalURL'], $config->getOriginalURL()); + $this->assertEquals($options['fixRelativeURLs'], $config->getFixRelativeURLs()); + $this->assertEquals($options['articleByLine'], $config->getArticleByLine()); + $this->assertEquals($options['maxTopCandidates'], $config->getMaxTopCandidates()); + $this->assertEquals($options['stripUnlikelyCandidates'], $config->getStripUnlikelyCandidates()); + $this->assertEquals($options['substituteEntities'], $config->getSubstituteEntities()); + } + + /** + * @return array + */ + public function getParams() + { + return [ + [ + [ + 'originalURL' => 'my.original.url', + 'fixRelativeURLs' => true, + 'articleByLine' => true, + 'maxTopCandidates' => 3, + 'stripUnlikelyCandidates' => false, + 'substituteEntities' => true, + 'invalidParameter' => 'invalidParameterValue', + ], + ], + ]; + } +} |