feat: add container compiler for production optimization #367
mutation-testing.yml
on: pull_request
Mutation Tests
1m 4s
Annotations
10 warnings
|
Mutation Tests:
src/Framework/Bootstrap/Setup/SetupMerger.php#L123
Escaped Mutant for Mutator "IfNegation":
@@ @@
}
private function mergeGacelaConfigsToExtend(SetupGacela $other): void
{
- if ($other->isPropertyChanged(SetupGacela::gacelaConfigsToExtend)) {
+ if (!$other->isPropertyChanged(SetupGacela::gacelaConfigsToExtend)) {
$this->original->mergeGacelaConfigsToExtend($other->getGacelaConfigsToExtend());
}
}
|
|
Mutation Tests:
src/Framework/Bootstrap/Setup/SetupMerger.php#L91
Escaped Mutant for Mutator "CastArray":
@@ @@
$eventDispatcher = new ConfigurableEventDispatcher();
}
/** @var ConfigurableEventDispatcher $eventDispatcher */
- $eventDispatcher->registerGenericListeners((array) $other->getGenericListeners());
+ $eventDispatcher->registerGenericListeners($other->getGenericListeners());
foreach ($other->getSpecificListeners() ?? [] as $event => $listeners) {
foreach ($listeners as $callable) {
$eventDispatcher->registerSpecificListener($event, $callable);
|
|
Mutation Tests:
src/Framework/Bootstrap/Setup/SetupMerger.php#L37
Escaped Mutant for Mutator "MethodCallRemoval":
@@ @@
$this->mergeAliases($other);
$this->mergeContextualBindings($other);
$this->mergePlugins($other);
- $this->mergeGacelaConfigsToExtend($other);
+
return $this->original;
}
private function overrideResetInMemoryCache(SetupGacela $other): void
|
|
Mutation Tests:
src/Framework/Bootstrap/Setup/PropertyMerger.php#L58
Escaped Mutant for Mutator "MethodCallRemoval":
@@ @@
$current = $this->setup->getGacelaConfigsToExtend();
/** @var list<class-string> $merged */
$merged = array_values(array_unique(array_merge($current, $list)));
- $this->setup->setGacelaConfigsToExtend($merged);
+
}
/**
* @param list<class-string|callable> $list
|
|
Mutation Tests:
src/Framework/Bootstrap/Setup/PropertyMerger.php#L57
Escaped Mutant for Mutator "UnwrapArrayValues":
@@ @@
{
$current = $this->setup->getGacelaConfigsToExtend();
/** @var list<class-string> $merged */
- $merged = array_values(array_unique(array_merge($current, $list)));
+ $merged = array_unique(array_merge($current, $list));
$this->setup->setGacelaConfigsToExtend($merged);
}
/**
|
|
Mutation Tests:
src/Framework/Bootstrap/Setup/PropertyMerger.php#L57
Escaped Mutant for Mutator "UnwrapArrayMerge":
@@ @@
{
$current = $this->setup->getGacelaConfigsToExtend();
/** @var list<class-string> $merged */
- $merged = array_values(array_unique(array_merge($current, $list)));
+ $merged = array_values(array_unique($list));
$this->setup->setGacelaConfigsToExtend($merged);
}
/**
|
|
Mutation Tests:
src/Framework/Bootstrap/Setup/PropertyMerger.php#L57
Escaped Mutant for Mutator "UnwrapArrayMerge":
@@ @@
{
$current = $this->setup->getGacelaConfigsToExtend();
/** @var list<class-string> $merged */
- $merged = array_values(array_unique(array_merge($current, $list)));
+ $merged = array_values(array_unique($current));
$this->setup->setGacelaConfigsToExtend($merged);
}
/**
|
|
Mutation Tests:
src/Framework/Bootstrap/Setup/PropertyChangeTracker.php#L24
Escaped Mutant for Mutator "FalseValue":
@@ @@
}
public function isChanged(string $propertyName): bool
{
- return $this->changedProperties[$propertyName] ?? false;
+ return $this->changedProperties[$propertyName] ?? true;
}
/**
* @return array<string,bool>
|
|
Mutation Tests:
src/Framework/Bootstrap/Setup/BuilderExecutor.php#L40
Escaped Mutant for Mutator "UnwrapArrayMerge":
@@ @@
public function buildBindings(BindingsBuilder $parentBuilder, array $externalServices): BindingsBuilder
{
$builder = $this->properties->bindingsBuilder ?? $parentBuilder;
- ($this->properties->bindingsFn)($builder, array_merge($this->properties->externalServices ?? [], $externalServices));
+ ($this->properties->bindingsFn)($builder, $this->properties->externalServices ?? []);
return $builder;
}
public function buildSuffixTypes(SuffixTypesBuilder $parentBuilder): SuffixTypesBuilder
|
|
Mutation Tests:
src/Framework/AbstractFactory.php#L68
Escaped Mutant for Mutator "InstanceOf_":
@@ @@
// Temporal solution to keep BC with the AbstractDependencyProvider
$dpResolver = (new DependencyProviderResolver())->resolve($this);
$dpResolver?->provideModuleDependencies($container);
- if (!$resolver instanceof AbstractProvider && !$dpResolver instanceof AbstractProvider) {
+ if (!false && !$dpResolver instanceof AbstractProvider) {
throw new ProviderNotFoundException(static::class);
}
}
|