X-Git-Url: https://juplo.de/gitweb/?a=blobdiff_plain;f=src%2Ftest%2Fjava%2Fde%2Fjuplo%2Fkafka%2Fchat%2Fbackend%2Fpersistence%2Finmemory%2FShardedChatHomeTest.java;h=8d9036f0b6ec1ab689050e866bc55d5563e2a7d5;hb=e8d8cb2aba9988608ee98b0a7dfc1053b6429040;hp=2370cbe1958a80b8664392aed6fab120f3fe20a1;hpb=90e65932f3f3cb4a1c312e37016dee8fdd8092c7;p=demos%2Fkafka%2Fchat diff --git a/src/test/java/de/juplo/kafka/chat/backend/persistence/inmemory/ShardedChatHomeTest.java b/src/test/java/de/juplo/kafka/chat/backend/persistence/inmemory/ShardedChatHomeTest.java index 2370cbe1..8d9036f0 100644 --- a/src/test/java/de/juplo/kafka/chat/backend/persistence/inmemory/ShardedChatHomeTest.java +++ b/src/test/java/de/juplo/kafka/chat/backend/persistence/inmemory/ShardedChatHomeTest.java @@ -2,6 +2,7 @@ package de.juplo.kafka.chat.backend.persistence.inmemory; import com.fasterxml.jackson.databind.ObjectMapper; import de.juplo.kafka.chat.backend.domain.ChatHomeWithShardsTest; +import de.juplo.kafka.chat.backend.persistence.ShardingStrategy; import de.juplo.kafka.chat.backend.persistence.StorageStrategy; import de.juplo.kafka.chat.backend.persistence.storage.files.FilesStorageStrategy; import org.springframework.boot.test.context.TestConfiguration; @@ -18,13 +19,18 @@ public class ShardedChatHomeTest extends ChatHomeWithShardsTest { @Bean ShardedChatHome chatHome( - InMemoryChatHomeService chatHomeService) + StorageStrategy storageStrategy, + Clock clock) { SimpleChatHome[] chatHomes = new SimpleChatHome[NUM_SHARDS]; IntStream .of(ownedShards()) - .forEach(shard -> chatHomes[shard] = new SimpleChatHome(chatHomeService, shard)); + .forEach(shard -> chatHomes[shard] = new SimpleChatHome( + shard, + storageStrategy, + clock, + bufferSize())); ShardingStrategy strategy = new KafkaLikeShardingStrategy(NUM_SHARDS); @@ -32,30 +38,28 @@ public class ShardedChatHomeTest extends ChatHomeWithShardsTest } @Bean - InMemoryChatHomeService chatHomeService( - StorageStrategy storageStrategy) - { - return new InMemoryChatHomeService( - NUM_SHARDS, - ownedShards(), - storageStrategy.read()); - } - - @Bean - public FilesStorageStrategy storageStrategy() + public FilesStorageStrategy storageStrategy(Clock clock) { return new FilesStorageStrategy( Paths.get("target", "test-classes", "data", "files"), - Clock.systemDefaultZone(), - 8, new KafkaLikeShardingStrategy(NUM_SHARDS), - messageFlux -> new InMemoryChatRoomService(messageFlux), new ObjectMapper()); } + @Bean + Clock clock() + { + return Clock.systemDefaultZone(); + } + int[] ownedShards() { return new int[] { OWNED_SHARD }; } + + int bufferSize() + { + return 8; + } } }