diff --git a/src/Utils/IdentitiesGenerator.php b/src/Utils/IdentitiesGenerator.php index f81b54e..2d5f240 100644 --- a/src/Utils/IdentitiesGenerator.php +++ b/src/Utils/IdentitiesGenerator.php @@ -37,6 +37,6 @@ public static function generateIdentitiesCacheKey(string $identifier, ?object $t { $hashedTraits = $traits !== null ? '.'.sha1(serialize($traits)) : ''; $hashedIdentifier = sha1($identifier); - return 'Identity.'.$transient ? 'Transient' : ''.$hashedIdentifier.$hashedTraits; + return 'Identity.'.($transient ? 'Transient' : '').$hashedIdentifier.$hashedTraits; } } diff --git a/tests/Engine/Unit/Utils/IdentitiesGeneratorTest.php b/tests/Engine/Unit/Utils/IdentitiesGeneratorTest.php new file mode 100644 index 0000000..a650fa3 --- /dev/null +++ b/tests/Engine/Unit/Utils/IdentitiesGeneratorTest.php @@ -0,0 +1,31 @@ + 'value']; + $cacheKey = IdentitiesGenerator::generateIdentitiesCacheKey($identityId, $traits, null); + + $this->assertStringContainsString('Identity.', $cacheKey); + $this->assertStringContainsString(sha1($identityId), $cacheKey); + } + + public function testGenerateIdentitiesTransientCacheKey(): void + { + $identityId = 'test-identity-id'; + $traits = (object) ['key' => 'value']; + $cacheKey = IdentitiesGenerator::generateIdentitiesCacheKey($identityId, $traits, true); + + $this->assertStringContainsString('Identity.Transient', $cacheKey); + $this->assertStringContainsString(sha1($identityId), $cacheKey); + } +}