Skip to content

fix issue #230 (#231) #25

fix issue #230 (#231)

fix issue #230 (#231) #25

Triggered via push August 9, 2024 16:34
Status Success
Total duration 2m 14s
Artifacts

infection.yml

on: push
0️⃣ Mutation Testing
2m 6s
0️⃣ Mutation Testing
Fit to window
Zoom out
Zoom in

Annotations

10 warnings
0️⃣ Mutation Testing: src/CachingStrategy/AssetCache.php#L46
Escaped Mutant for Mutator "TrueValue": --- Original +++ New @@ @@ $this->workbox = $serviceWorker->workbox; $this->assetPublicPrefix = rtrim($publicAssetsPathResolver->resolvePublicPath(''), '/'); $options = JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE | JSON_THROW_ON_ERROR; - if ($debug === true) { + if ($debug === false) { $options |= JSON_PRETTY_PRINT; } $this->jsonOptions = $options;
0️⃣ Mutation Testing: src/CachingStrategy/GoogleFontCache.php#L59
Escaped Mutant for Mutator "ArrayItemRemoval": --- Original +++ New @@ @@ $prefix .= '-'; } $strategies = [WorkboxCacheStrategy::create($this->workbox->enabled && $this->workbox->googleFontCache->enabled, true, CacheStrategyInterface::STRATEGY_STALE_WHILE_REVALIDATE, "({url}) => url.origin === 'https://fonts.googleapis.com'")->withName($prefix . 'google-fonts-stylesheets'), WorkboxCacheStrategy::create($this->workbox->enabled && $this->workbox->googleFontCache->enabled, true, CacheStrategyInterface::STRATEGY_CACHE_FIRST, "({url}) => url.origin === 'https://fonts.gstatic.com'")->withName($prefix . 'google-fonts-webfonts')->withPlugin(CacheableResponsePlugin::create(), ExpirationPlugin::create($this->workbox->googleFontCache->maxEntries ?? 30, $this->workbox->googleFontCache->maxAgeInSeconds() ?? 60 * 60 * 24 * 365))]; - $this->logger->debug('Google Fonts cache strategies', ['strategies' => $strategies]); + $this->logger->debug('Google Fonts cache strategies', []); return $strategies; } public function setLogger(LoggerInterface $logger): void
0️⃣ Mutation Testing: src/CachingStrategy/GoogleFontCache.php#L59
Escaped Mutant for Mutator "MethodCallRemoval": --- Original +++ New @@ @@ $prefix .= '-'; } $strategies = [WorkboxCacheStrategy::create($this->workbox->enabled && $this->workbox->googleFontCache->enabled, true, CacheStrategyInterface::STRATEGY_STALE_WHILE_REVALIDATE, "({url}) => url.origin === 'https://fonts.googleapis.com'")->withName($prefix . 'google-fonts-stylesheets'), WorkboxCacheStrategy::create($this->workbox->enabled && $this->workbox->googleFontCache->enabled, true, CacheStrategyInterface::STRATEGY_CACHE_FIRST, "({url}) => url.origin === 'https://fonts.gstatic.com'")->withName($prefix . 'google-fonts-webfonts')->withPlugin(CacheableResponsePlugin::create(), ExpirationPlugin::create($this->workbox->googleFontCache->maxEntries ?? 30, $this->workbox->googleFontCache->maxAgeInSeconds() ?? 60 * 60 * 24 * 365))]; - $this->logger->debug('Google Fonts cache strategies', ['strategies' => $strategies]); + return $strategies; } public function setLogger(LoggerInterface $logger): void
0️⃣ Mutation Testing: src/CachingStrategy/GoogleFontCache.php#L63
Escaped Mutant for Mutator "ArrayOneItem": --- Original +++ New @@ @@ } $strategies = [WorkboxCacheStrategy::create($this->workbox->enabled && $this->workbox->googleFontCache->enabled, true, CacheStrategyInterface::STRATEGY_STALE_WHILE_REVALIDATE, "({url}) => url.origin === 'https://fonts.googleapis.com'")->withName($prefix . 'google-fonts-stylesheets'), WorkboxCacheStrategy::create($this->workbox->enabled && $this->workbox->googleFontCache->enabled, true, CacheStrategyInterface::STRATEGY_CACHE_FIRST, "({url}) => url.origin === 'https://fonts.gstatic.com'")->withName($prefix . 'google-fonts-webfonts')->withPlugin(CacheableResponsePlugin::create(), ExpirationPlugin::create($this->workbox->googleFontCache->maxEntries ?? 30, $this->workbox->googleFontCache->maxAgeInSeconds() ?? 60 * 60 * 24 * 365))]; $this->logger->debug('Google Fonts cache strategies', ['strategies' => $strategies]); - return $strategies; + return count($strategies) > 1 ? array_slice($strategies, 0, 1, true) : $strategies; } public function setLogger(LoggerInterface $logger): void {
0️⃣ Mutation Testing: src/CachingStrategy/ImageCache.php#L37
Escaped Mutant for Mutator "LogicalAnd": --- Original +++ New @@ @@ } public function getCacheStrategies(): array { - $strategies = [WorkboxCacheStrategy::create($this->workbox->enabled && $this->workbox->imageCache->enabled, true, CacheStrategyInterface::STRATEGY_CACHE_FIRST, sprintf("({request, url}) => (request.destination === 'image' && !url.pathname.startsWith('%s'))", $this->assetPublicPrefix))->withName($this->workbox->imageCache->cacheName ?? 'images')]; + $strategies = [WorkboxCacheStrategy::create($this->workbox->enabled || $this->workbox->imageCache->enabled, true, CacheStrategyInterface::STRATEGY_CACHE_FIRST, sprintf("({request, url}) => (request.destination === 'image' && !url.pathname.startsWith('%s'))", $this->assetPublicPrefix))->withName($this->workbox->imageCache->cacheName ?? 'images')]; $this->logger->debug('Image cache strategies', ['strategies' => $strategies]); return $strategies; }
0️⃣ Mutation Testing: src/CachingStrategy/ImageCache.php#L37
Escaped Mutant for Mutator "LogicalAndNegation": --- Original +++ New @@ @@ } public function getCacheStrategies(): array { - $strategies = [WorkboxCacheStrategy::create($this->workbox->enabled && $this->workbox->imageCache->enabled, true, CacheStrategyInterface::STRATEGY_CACHE_FIRST, sprintf("({request, url}) => (request.destination === 'image' && !url.pathname.startsWith('%s'))", $this->assetPublicPrefix))->withName($this->workbox->imageCache->cacheName ?? 'images')]; + $strategies = [WorkboxCacheStrategy::create(!($this->workbox->enabled && $this->workbox->imageCache->enabled), true, CacheStrategyInterface::STRATEGY_CACHE_FIRST, sprintf("({request, url}) => (request.destination === 'image' && !url.pathname.startsWith('%s'))", $this->assetPublicPrefix))->withName($this->workbox->imageCache->cacheName ?? 'images')]; $this->logger->debug('Image cache strategies', ['strategies' => $strategies]); return $strategies; }
0️⃣ Mutation Testing: src/CachingStrategy/AssetCache.php#L46
Escaped Mutant for Mutator "Identical": --- Original +++ New @@ @@ $this->workbox = $serviceWorker->workbox; $this->assetPublicPrefix = rtrim($publicAssetsPathResolver->resolvePublicPath(''), '/'); $options = JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE | JSON_THROW_ON_ERROR; - if ($debug === true) { + if ($debug !== true) { $options |= JSON_PRETTY_PRINT; } $this->jsonOptions = $options;
0️⃣ Mutation Testing: src/CachingStrategy/AssetCache.php#L56
Escaped Mutant for Mutator "ArrayItemRemoval": --- Original +++ New @@ @@ public function getCacheStrategies(): array { $this->logger->debug('Getting cache strategies for assets'); - $urls = json_decode($this->serializer->serialize($this->getAssets(), 'json', [JsonEncode::OPTIONS => $this->jsonOptions]), true); + $urls = json_decode($this->serializer->serialize($this->getAssets(), 'json', []), true); $strategy = WorkboxCacheStrategy::create($this->workbox->enabled && $this->workbox->assetCache->enabled, true, CacheStrategyInterface::STRATEGY_CACHE_FIRST, sprintf("({url}) => url.pathname.startsWith('%s')", $this->assetPublicPrefix))->withName($this->workbox->assetCache->cacheName)->withPlugin(ExpirationPlugin::create(count($this->getAssets()) * 2, $this->workbox->assetCache->maxAgeInSeconds() ?? 60 * 60 * 24 * 365)); if (count($urls) > 0) { $strategy = $strategy->withPreloadUrl(...$urls);
0️⃣ Mutation Testing: src/CachingStrategy/AssetCache.php#L62
Escaped Mutant for Mutator "TrueValue": --- Original +++ New @@ @@ { $this->logger->debug('Getting cache strategies for assets'); $urls = json_decode($this->serializer->serialize($this->getAssets(), 'json', [JsonEncode::OPTIONS => $this->jsonOptions]), true); - $strategy = WorkboxCacheStrategy::create($this->workbox->enabled && $this->workbox->assetCache->enabled, true, CacheStrategyInterface::STRATEGY_CACHE_FIRST, sprintf("({url}) => url.pathname.startsWith('%s')", $this->assetPublicPrefix))->withName($this->workbox->assetCache->cacheName)->withPlugin(ExpirationPlugin::create(count($this->getAssets()) * 2, $this->workbox->assetCache->maxAgeInSeconds() ?? 60 * 60 * 24 * 365)); + $strategy = WorkboxCacheStrategy::create($this->workbox->enabled && $this->workbox->assetCache->enabled, false, CacheStrategyInterface::STRATEGY_CACHE_FIRST, sprintf("({url}) => url.pathname.startsWith('%s')", $this->assetPublicPrefix))->withName($this->workbox->assetCache->cacheName)->withPlugin(ExpirationPlugin::create(count($this->getAssets()) * 2, $this->workbox->assetCache->maxAgeInSeconds() ?? 60 * 60 * 24 * 365)); if (count($urls) > 0) { $strategy = $strategy->withPreloadUrl(...$urls); }
0️⃣ Mutation Testing: src/CachingStrategy/AssetCache.php#L69
Escaped Mutant for Mutator "DecrementInteger": --- Original +++ New @@ @@ { $this->logger->debug('Getting cache strategies for assets'); $urls = json_decode($this->serializer->serialize($this->getAssets(), 'json', [JsonEncode::OPTIONS => $this->jsonOptions]), true); - $strategy = WorkboxCacheStrategy::create($this->workbox->enabled && $this->workbox->assetCache->enabled, true, CacheStrategyInterface::STRATEGY_CACHE_FIRST, sprintf("({url}) => url.pathname.startsWith('%s')", $this->assetPublicPrefix))->withName($this->workbox->assetCache->cacheName)->withPlugin(ExpirationPlugin::create(count($this->getAssets()) * 2, $this->workbox->assetCache->maxAgeInSeconds() ?? 60 * 60 * 24 * 365)); + $strategy = WorkboxCacheStrategy::create($this->workbox->enabled && $this->workbox->assetCache->enabled, true, CacheStrategyInterface::STRATEGY_CACHE_FIRST, sprintf("({url}) => url.pathname.startsWith('%s')", $this->assetPublicPrefix))->withName($this->workbox->assetCache->cacheName)->withPlugin(ExpirationPlugin::create(count($this->getAssets()) * 1, $this->workbox->assetCache->maxAgeInSeconds() ?? 60 * 60 * 24 * 365)); if (count($urls) > 0) { $strategy = $strategy->withPreloadUrl(...$urls); }