Skip to content

Merge branch '11.4.x' into 11.5.x #87

Merge branch '11.4.x' into 11.5.x

Merge branch '11.4.x' into 11.5.x #87

Triggered via push May 31, 2026 12:49
Status Success
Total duration 4m 19s
Artifacts

ci.yml

on: push
0️⃣ Pre-checks
5s
0️⃣ Pre-checks
📦 Prepare Composer Dependencies
45s
📦 Prepare Composer Dependencies
1️⃣ Static Analysis (PHPStan)
50s
1️⃣ Static Analysis (PHPStan)
2️⃣ Coding Standards (ECS)
46s
2️⃣ Coding Standards (ECS)
3️⃣ Refactoring (Rector)
53s
3️⃣ Refactoring (Rector)
4️⃣ Validate composer.json
45s
4️⃣ Validate composer.json
5️⃣ Syntax Check
49s
5️⃣ Syntax Check
6️⃣ License Check
48s
6️⃣ License Check
7️⃣ Architecture Layer Check (Deptrac)
39s
7️⃣ Architecture Layer Check (Deptrac)
8️⃣ Exported Files Check
3s
8️⃣ Exported Files Check
Matrix: tests
🧬 Mutation Testing
1m 31s
🧬 Mutation Testing
Fit to window
Zoom out
Zoom in

Annotations

10 warnings
🧬 Mutation Testing: src/Factory.php#L70
Escaped Mutant for Mutator "DecrementInteger": @@ @@ private static function populateOTP(OTPInterface $otp, Url $data): void { self::populateParameters($otp, $data); - $result = explode(':', rawurldecode(substr($data->getPath(), 1))); + $result = explode(':', rawurldecode(substr($data->getPath(), 0))); if (count($result) < 2) { $otp->setIssuerIncludedAsParameter(false);
🧬 Mutation Testing: src/Factory.php#L34
Escaped Mutant for Mutator "Identical": @@ @@ $throwable ); } - if ($clock === null) { + if ($clock !== null) { trigger_deprecation( 'spomky-labs/otphp', '11.3.0',
🧬 Mutation Testing: src/Factory.php#L26
Escaped Mutant for Mutator "LogicalOrNegation": @@ @@ { try { $parsed_url = Url::fromString($uri); - $parsed_url->getScheme() === 'otpauth' || throw new InvalidProvisioningUriException('Invalid scheme.'); + !($parsed_url->getScheme() === 'otpauth' || throw new InvalidProvisioningUriException('Invalid scheme.')); } catch (Throwable $throwable) { throw new InvalidProvisioningUriException( 'Not a valid OTP provisioning URI',
🧬 Mutation Testing: src/Factory.php#L26
Escaped Mutant for Mutator "Throw_": @@ @@ { try { $parsed_url = Url::fromString($uri); - $parsed_url->getScheme() === 'otpauth' || throw new InvalidProvisioningUriException('Invalid scheme.'); + $parsed_url->getScheme() === 'otpauth' || new InvalidProvisioningUriException('Invalid scheme.'); } catch (Throwable $throwable) { throw new InvalidProvisioningUriException( 'Not a valid OTP provisioning URI',
🧬 Mutation Testing: src/Exception/ParameterNotFoundException.php#L18
Escaped Mutant for Mutator "IncrementInteger": @@ @@ public function __construct( string $message, public readonly string $parameterName = '', - int $code = 0, + int $code = 1, ?Throwable $previous = null ) { parent::__construct($message, $code, $previous);
🧬 Mutation Testing: src/Exception/ParameterNotFoundException.php#L18
Escaped Mutant for Mutator "DecrementInteger": @@ @@ public function __construct( string $message, public readonly string $parameterName = '', - int $code = 0, + int $code = -1, ?Throwable $previous = null ) { parent::__construct($message, $code, $previous);
🧬 Mutation Testing: src/Exception/InvalidParameterException.php#L20
Escaped Mutant for Mutator "IncrementInteger": @@ @@ string $message, public readonly string $parameterName = '', public readonly mixed $parameterValue = null, - int $code = 0, + int $code = 1, ?Throwable $previous = null ) { parent::__construct($message, $code, $previous);
🧬 Mutation Testing: src/Exception/InvalidParameterException.php#L20
Escaped Mutant for Mutator "DecrementInteger": @@ @@ string $message, public readonly string $parameterName = '', public readonly mixed $parameterValue = null, - int $code = 0, + int $code = -1, ?Throwable $previous = null ) { parent::__construct($message, $code, $previous);
🧬 Mutation Testing: src/Exception/InvalidLabelException.php#L20
Escaped Mutant for Mutator "DecrementInteger": @@ @@ string $message, public readonly string $labelName = '', public readonly mixed $labelValue = null, - int $code = 0, + int $code = -1, ?Throwable $previous = null ) { parent::__construct($message, $code, $previous);
🧬 Mutation Testing: src/Exception/InvalidLabelException.php#L20
Escaped Mutant for Mutator "IncrementInteger": @@ @@ string $message, public readonly string $labelName = '', public readonly mixed $labelValue = null, - int $code = 0, + int $code = 1, ?Throwable $previous = null ) { parent::__construct($message, $code, $previous);