Source.php
Same filename in this branch
Namespace
PHPUnit\TextUI\ConfigurationFile
-
vendor/
phpunit/ phpunit/ src/ TextUI/ Configuration/ Value/ Source.php
View source
<?php
declare (strict_types=1);
/*
* This file is part of PHPUnit.
*
* (c) Sebastian Bergmann <sebastian@phpunit.de>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace PHPUnit\TextUI\Configuration;
/**
* @no-named-arguments Parameter names are not covered by the backward compatibility promise for PHPUnit
*
* @psalm-immutable
*/
final class Source {
/**
* @psalm-var non-empty-string
*/
private readonly ?string $baseline;
private readonly bool $ignoreBaseline;
private readonly FilterDirectoryCollection $includeDirectories;
private readonly FileCollection $includeFiles;
private readonly FilterDirectoryCollection $excludeDirectories;
private readonly FileCollection $excludeFiles;
private readonly bool $restrictDeprecations;
private readonly bool $restrictNotices;
private readonly bool $restrictWarnings;
private readonly bool $ignoreSuppressionOfDeprecations;
private readonly bool $ignoreSuppressionOfPhpDeprecations;
private readonly bool $ignoreSuppressionOfErrors;
private readonly bool $ignoreSuppressionOfNotices;
private readonly bool $ignoreSuppressionOfPhpNotices;
private readonly bool $ignoreSuppressionOfWarnings;
private readonly bool $ignoreSuppressionOfPhpWarnings;
/**
* @psalm-param non-empty-string $baseline
*/
public function __construct(?string $baseline, bool $ignoreBaseline, FilterDirectoryCollection $includeDirectories, FileCollection $includeFiles, FilterDirectoryCollection $excludeDirectories, FileCollection $excludeFiles, bool $restrictDeprecations, bool $restrictNotices, bool $restrictWarnings, bool $ignoreSuppressionOfDeprecations, bool $ignoreSuppressionOfPhpDeprecations, bool $ignoreSuppressionOfErrors, bool $ignoreSuppressionOfNotices, bool $ignoreSuppressionOfPhpNotices, bool $ignoreSuppressionOfWarnings, bool $ignoreSuppressionOfPhpWarnings) {
$this->baseline = $baseline;
$this->ignoreBaseline = $ignoreBaseline;
$this->includeDirectories = $includeDirectories;
$this->includeFiles = $includeFiles;
$this->excludeDirectories = $excludeDirectories;
$this->excludeFiles = $excludeFiles;
$this->restrictDeprecations = $restrictDeprecations;
$this->restrictNotices = $restrictNotices;
$this->restrictWarnings = $restrictWarnings;
$this->ignoreSuppressionOfDeprecations = $ignoreSuppressionOfDeprecations;
$this->ignoreSuppressionOfPhpDeprecations = $ignoreSuppressionOfPhpDeprecations;
$this->ignoreSuppressionOfErrors = $ignoreSuppressionOfErrors;
$this->ignoreSuppressionOfNotices = $ignoreSuppressionOfNotices;
$this->ignoreSuppressionOfPhpNotices = $ignoreSuppressionOfPhpNotices;
$this->ignoreSuppressionOfWarnings = $ignoreSuppressionOfWarnings;
$this->ignoreSuppressionOfPhpWarnings = $ignoreSuppressionOfPhpWarnings;
}
/**
* @psalm-assert-if-true !null $this->baseline
*/
public function useBaseline() : bool {
return $this->hasBaseline() && !$this->ignoreBaseline;
}
/**
* @psalm-assert-if-true !null $this->baseline
*/
public function hasBaseline() : bool {
return $this->baseline !== null;
}
/**
* @psalm-return non-empty-string
*
* @throws NoBaselineException
*/
public function baseline() : string {
if (!$this->hasBaseline()) {
throw new NoBaselineException();
}
return $this->baseline;
}
public function includeDirectories() : FilterDirectoryCollection {
return $this->includeDirectories;
}
public function includeFiles() : FileCollection {
return $this->includeFiles;
}
public function excludeDirectories() : FilterDirectoryCollection {
return $this->excludeDirectories;
}
public function excludeFiles() : FileCollection {
return $this->excludeFiles;
}
public function notEmpty() : bool {
return $this->includeDirectories
->notEmpty() || $this->includeFiles
->notEmpty();
}
public function restrictDeprecations() : bool {
return $this->restrictDeprecations;
}
public function restrictNotices() : bool {
return $this->restrictNotices;
}
public function restrictWarnings() : bool {
return $this->restrictWarnings;
}
public function ignoreSuppressionOfDeprecations() : bool {
return $this->ignoreSuppressionOfDeprecations;
}
public function ignoreSuppressionOfPhpDeprecations() : bool {
return $this->ignoreSuppressionOfPhpDeprecations;
}
public function ignoreSuppressionOfErrors() : bool {
return $this->ignoreSuppressionOfErrors;
}
public function ignoreSuppressionOfNotices() : bool {
return $this->ignoreSuppressionOfNotices;
}
public function ignoreSuppressionOfPhpNotices() : bool {
return $this->ignoreSuppressionOfPhpNotices;
}
public function ignoreSuppressionOfWarnings() : bool {
return $this->ignoreSuppressionOfWarnings;
}
public function ignoreSuppressionOfPhpWarnings() : bool {
return $this->ignoreSuppressionOfPhpWarnings;
}
}
Classes
Title | Deprecated | Summary |
---|---|---|
Source | @no-named-arguments Parameter names are not covered by the backward compatibility promise for PHPUnit |