feat(cache): 缓存常量与 key 构造器(前缀 + 环境隔离 + 锁 key 派生)
This commit is contained in:
34
src/test/java/com/njcn/middle/cache/support/CacheKeyBuilderTest.java
vendored
Normal file
34
src/test/java/com/njcn/middle/cache/support/CacheKeyBuilderTest.java
vendored
Normal file
@@ -0,0 +1,34 @@
|
||||
package com.njcn.middle.cache.support;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
|
||||
class CacheKeyBuilderTest {
|
||||
|
||||
@Test
|
||||
void buildWithPrefixOnly() {
|
||||
CacheKeyBuilder kb = new CacheKeyBuilder("cache:", false, "");
|
||||
assertEquals("cache:user:1", kb.build("user:1"));
|
||||
}
|
||||
|
||||
@Test
|
||||
void buildWithEnvIsolation() {
|
||||
CacheKeyBuilder kb = new CacheKeyBuilder("cache:", true, "prod");
|
||||
assertEquals("cache:prod:user:1", kb.build("user:1"));
|
||||
}
|
||||
|
||||
@Test
|
||||
void envIsolationButBlankEnvFallsBack() {
|
||||
CacheKeyBuilder kb = new CacheKeyBuilder("cache:", true, "");
|
||||
assertEquals("cache:user:1", kb.build("user:1"));
|
||||
}
|
||||
|
||||
@Test
|
||||
void buildLockDerivesFromDataKey() {
|
||||
assertEquals("cache:user:1:__lock__",
|
||||
new CacheKeyBuilder("cache:", false, "").buildLock("user:1"));
|
||||
assertEquals("cache:prod:user:1:__lock__",
|
||||
new CacheKeyBuilder("cache:", true, "prod").buildLock("user:1"));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user