Skip to content

Commit 9fe3d99

Browse files
committed
Soothe phpstan
1 parent c2dd391 commit 9fe3d99

15 files changed

+50
-41
lines changed

dump.rdb

-92 Bytes
Binary file not shown.

src/CacheDependency.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,12 +23,12 @@ public function depends(ResourceObject $from, ResourceObject $to): void
2323
{
2424
assert(! isset($from->headers[Header::SURROGATE_KEY]));
2525

26-
$cacheDepedencyTags = ($this->uriTag)($to->uri);
26+
$cacheDependencyTags = ($this->uriTag)($to->uri);
2727
if (isset($to->headers[Header::SURROGATE_KEY])) {
28-
$cacheDepedencyTags .= sprintf(' %s', $to->headers[Header::SURROGATE_KEY]);
28+
$cacheDependencyTags .= sprintf(' %s', $to->headers[Header::SURROGATE_KEY]);
2929
unset($to->headers[Header::SURROGATE_KEY]);
3030
}
3131

32-
$from->headers[Header::SURROGATE_KEY] = $cacheDepedencyTags;
32+
$from->headers[Header::SURROGATE_KEY] = $cacheDependencyTags;
3333
}
3434
}

src/CliHttpCache.php

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -74,14 +74,19 @@ private function getServerKey(string $key): string
7474
*/
7575
private function getEtag(array $server): ?string
7676
{
77-
$hasRequestHeaderInCli = isset($server['argc']) && $server['argc'] === 4 && isset($server['argv'][3]);
77+
/** @psalm-suppress MixedAssignment */
78+
$arg3 = $server['argv'][3] ?? ''; // @phpstan-ignore-line
79+
assert(is_string($arg3));
80+
$hasRequestHeaderInCli = isset($server['argc']) && $server['argc'] === 4 && $arg3;
7881
if ($hasRequestHeaderInCli) {
7982
/** @psalm-suppress MixedArrayAccess */
80-
$server = $this->getServer((string) $server['argv'][3]);
83+
$server = $this->getServer($arg3);
8184
}
8285

83-
$hasValidEtag = isset($server[Header::HTTP_IF_NONE_MATCH]) && is_string($server[Header::HTTP_IF_NONE_MATCH]);
86+
if (isset($server[Header::HTTP_IF_NONE_MATCH]) && is_string($server[Header::HTTP_IF_NONE_MATCH])) {
87+
return $server[Header::HTTP_IF_NONE_MATCH];
88+
}
8489

85-
return $hasValidEtag ? $server[Header::HTTP_IF_NONE_MATCH] : null;
90+
return null;
8691
}
8792
}

src/QueryRepository.php

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@
1212
use Doctrine\Common\Annotations\Reader;
1313
use ReflectionClass;
1414

15-
use function assert;
1615
use function get_class;
1716
use function is_array;
1817
use function sprintf;
@@ -126,14 +125,14 @@ private function getExpiryTime(ResourceObject $ro, ?Cacheable $cacheable = null)
126125

127126
private function getExpiryAtSec(ResourceObject $ro, Cacheable $cacheable): int
128127
{
129-
if (! isset($ro->body[$cacheable->expiryAt])) {
128+
if (! is_array($ro->body) || ! isset($ro->body[$cacheable->expiryAt])) {
130129
$msg = sprintf('%s::%s', get_class($ro), $cacheable->expiryAt);
131130

132131
throw new ExpireAtKeyNotExists($msg);
133132
}
134133

135-
assert(is_array($ro->body));
136-
$expiryAt = (string) $ro->body[$cacheable->expiryAt];
134+
/** @var string $expiryAt */
135+
$expiryAt = $ro->body[$cacheable->expiryAt];
137136

138137
return strtotime($expiryAt) - time();
139138
}

src/RepositoryLogger.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ public function log(string $template, ...$values): void
2828
}
2929

3030
unset($value);
31-
/** @psalm-suppress MixedArgument */
31+
/** @var list<string> $values */
3232
$msg = sprintf($template, ...$values);
3333

3434
$this->logs[] = $msg;

src/ResourceDonut.php

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@
99
use BEAR\Resource\ResourceObject;
1010

1111
use function array_key_exists;
12+
use function assert;
13+
use function is_iterable;
1214
use function preg_replace_callback;
1315

1416
/**
@@ -72,6 +74,7 @@ public function render(ResourceObject $ro, DonutRenderer $storage): ResourceObje
7274

7375
public static function create(ResourceObject $ro, DonutRenderer $storage, SurrogateKeys $etags, ?int $ttl, bool $isCacheble): self
7476
{
77+
assert(is_iterable($ro->body));
7578
/** @var mixed $maybeRequest */
7679
foreach ($ro->body as &$maybeRequest) {
7780
if ($maybeRequest instanceof AbstractRequest) {

src/ResourceStorage.php

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -29,11 +29,6 @@
2929

3030
final class ResourceStorage implements ResourceStorageInterface
3131
{
32-
/**
33-
* ETag URI table prefix
34-
*/
35-
private const KEY_ETAG_TABLE = 'etag-t';
36-
3732
/**
3833
* Resource object cache prefix
3934
*/

src/SerializableTagAwareAdapter.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,6 @@ public function serialize()
4242
*/
4343
public function unserialize($data)
4444
{
45-
call_user_func_array([$this, '__construct'], unserialize($data));
45+
call_user_func_array([$this, '__construct'], unserialize($data)); // @phpstan-ignore-line
4646
}
4747
}

tests/CacheDependencyTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ class CacheDependencyTest extends TestCase
1818
/** @var ResourceInterface */
1919
private $resource;
2020

21-
/** @var QueryRepository */
21+
/** @var QueryRepositoryInterface */
2222
private $repository;
2323

2424
/** @var ResourceStorageInterface */

tests/CacheVersionModuleTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ public function testNew(): void
1515
$version = '1';
1616
$module = new CacheVersionModule($version);
1717
$injector = new Injector($module, $_ENV['TMP_DIR']);
18-
$ns = $injector->getInstance('', CacheNamespace::class);
18+
$ns = $injector->getInstance('', CacheNamespace::class); // @phpstan-ignore-line
1919
$this->assertSame($version, $ns);
2020
}
2121
}

0 commit comments

Comments
 (0)