public function testExecutableCommandIncludesCharsetWhenSpecified()
 {
     $configuration = new Configuration();
     $configuration->setDocumentUri('file:/foo/example.html');
     $configuration->setDocumentCharacterSet('utf8');
     $this->assertEquals('/usr/local/validator/cgi-bin/check output=json charset=utf8 uri=file:/foo/example.html', $configuration->getExecutableCommand());
 }
 /**
  * 
  * @param array $configurationValues
  * @return \webignition\HtmlValidator\Wrapper\Wrapper
  * @throws \InvalidArgumentException
  */
 public function createConfiguration($configurationValues)
 {
     if (!is_array($configurationValues) || empty($configurationValues)) {
         throw new \InvalidArgumentException('A non-empty array of configuration values must be passed to create configuration', 2);
     }
     if (!isset($configurationValues['documentUri'])) {
         throw new \InvalidArgumentException('Configruation value "documentUri" not set', 3);
     }
     $configuration = new Configuration();
     $configuration->setDocumentUri($configurationValues['documentUri']);
     if (isset($configurationValues['validatorPath'])) {
         $configuration->setValidatorPath($configurationValues['validatorPath']);
     }
     if (isset($configurationValues['documentCharacterSet'])) {
         $configuration->setDocumentCharacterSet($configurationValues['documentCharacterSet']);
     }
     $this->setConfiguration($configuration);
     return $this;
 }
 public function testgetReturnsSetValue()
 {
     $charset = 'utf8';
     $configuration = new Configuration();
     $this->assertEquals($charset, $configuration->setDocumentCharacterSet($charset)->getDocumentCharacterSet());
 }