Skip to content

fix: load needed information only during interface inferring #1041

fix: load needed information only during interface inferring

fix: load needed information only during interface inferring #1041

Triggered via pull request March 30, 2024 17:24
Status Success
Total duration 33s
Artifacts

mutation.yml

on: pull_request
Mutation tests
24s
Mutation tests
Fit to window
Zoom out
Zoom in

Annotations

5 warnings
Mutation tests
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v3, actions/cache@v3, actions/cache@v3.2.5. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
Mutation tests: src/Mapper/Tree/Builder/ObjectImplementations.php#L50
Escaped Mutant for Mutator "AssignCoalesce": --- Original +++ New @@ @@ */ public function implementation(string $name, array $arguments) : ClassType { - $this->implementations[$name] ??= $this->implementations($name); + $this->implementations[$name] = $this->implementations($name); $class = $this->call($name, $arguments); return $this->implementations[$name][$class] ?? throw new ObjectImplementationNotRegistered($class, $name, $this->implementations[$name]); }
Mutation tests: src/Mapper/Tree/Builder/ObjectImplementations.php#L85
Escaped Mutant for Mutator "InstanceOf_": --- Original +++ New @@ @@ { $function = $this->functions->get($name)->definition; $type = $this->typeParser->parse($name); - assert($type instanceof InterfaceType || $type instanceof ClassType); + assert(true || $type instanceof ClassType); $classes = $this->implementationsByReturnSignature($name, $function); if ($classes === []) { throw new MissingObjectImplementationRegistration($name, $function);
Mutation tests: src/Mapper/Tree/Builder/ObjectImplementations.php#L85
Escaped Mutant for Mutator "InstanceOf_": --- Original +++ New @@ @@ { $function = $this->functions->get($name)->definition; $type = $this->typeParser->parse($name); - assert($type instanceof InterfaceType || $type instanceof ClassType); + assert($type instanceof InterfaceType || true); $classes = $this->implementationsByReturnSignature($name, $function); if ($classes === []) { throw new MissingObjectImplementationRegistration($name, $function);
Mutation tests: src/Mapper/Tree/Builder/ObjectImplementations.php#L85
Escaped Mutant for Mutator "LogicalOrAllSubExprNegation": --- Original +++ New @@ @@ { $function = $this->functions->get($name)->definition; $type = $this->typeParser->parse($name); - assert($type instanceof InterfaceType || $type instanceof ClassType); + assert(!$type instanceof InterfaceType || !$type instanceof ClassType); $classes = $this->implementationsByReturnSignature($name, $function); if ($classes === []) { throw new MissingObjectImplementationRegistration($name, $function);