Skip to content

Commit 821d5b4

Browse files
committed
Merge branch 'nats-backend' of github.com:/sonus21/rqueue into nats-backend
2 parents e699879 + b0fcf59 commit 821d5b4

6 files changed

Lines changed: 67 additions & 53 deletions

File tree

rqueue-redis/src/main/java/com/github/sonus21/rqueue/redis/repository/RedisMessageBrowsingRepository.java

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -71,13 +71,11 @@ public List<Long> getDataSizes(List<String> names, List<DataType> types) {
7171
return Collections.emptyList();
7272
}
7373
if (types == null || names.size() != types.size()) {
74-
throw new IllegalArgumentException(
75-
"names and types must be the same length; names=" + names.size()
76-
+ " types=" + (types == null ? "null" : types.size()));
74+
throw new IllegalArgumentException("names and types must be the same length; names="
75+
+ names.size() + " types=" + (types == null ? "null" : types.size()));
7776
}
7877
List<Object> raw = RedisUtils.executePipeLine(
79-
stringTemplate.getRedisTemplate(),
80-
(connection, keySerializer, valueSerializer) -> {
78+
stringTemplate.getRedisTemplate(), (connection, keySerializer, valueSerializer) -> {
8179
for (int i = 0; i < names.size(); i++) {
8280
byte[] key = keySerializer.serialize(names.get(i));
8381
switch (types.get(i)) {

rqueue-web/src/test/java/com/github/sonus21/rqueue/web/service/RqueueDashboardChartServiceTest.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,10 +37,8 @@
3737
import com.github.sonus21.rqueue.models.enums.ChartType;
3838
import com.github.sonus21.rqueue.models.request.ChartDataRequest;
3939
import com.github.sonus21.rqueue.models.response.ChartDataResponse;
40-
import com.github.sonus21.rqueue.web.service.impl.RqueueDashboardChartServiceImpl;
4140
import com.github.sonus21.rqueue.utils.DateTimeUtils;
42-
import com.github.sonus21.rqueue.web.service.RqueueDashboardChartService;
43-
import com.github.sonus21.rqueue.web.service.RqueueSystemManagerService;
41+
import com.github.sonus21.rqueue.web.service.impl.RqueueDashboardChartServiceImpl;
4442
import java.io.Serializable;
4543
import java.time.LocalDate;
4644
import java.time.LocalDateTime;

rqueue-web/src/test/java/com/github/sonus21/rqueue/web/service/RqueueQDetailServiceBrokerRoutingTest.java

Lines changed: 22 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@
2929

3030
import com.github.sonus21.TestBase;
3131
import com.github.sonus21.rqueue.CoreUnitTest;
32-
import com.github.sonus21.rqueue.repository.MessageBrowsingRepository;
3332
import com.github.sonus21.rqueue.config.RqueueConfig;
3433
import com.github.sonus21.rqueue.core.EndpointRegistry;
3534
import com.github.sonus21.rqueue.core.RqueueMessageTemplate;
@@ -41,10 +40,10 @@
4140
import com.github.sonus21.rqueue.models.enums.NavTab;
4241
import com.github.sonus21.rqueue.models.response.DataViewResponse;
4342
import com.github.sonus21.rqueue.models.response.RedisDataDetail;
44-
import com.github.sonus21.rqueue.web.service.impl.RqueueQDetailServiceImpl;
43+
import com.github.sonus21.rqueue.repository.MessageBrowsingRepository;
4544
import com.github.sonus21.rqueue.service.RqueueMessageMetadataService;
4645
import com.github.sonus21.rqueue.utils.TestUtils;
47-
import com.github.sonus21.rqueue.web.service.RqueueSystemManagerService;
46+
import com.github.sonus21.rqueue.web.service.impl.RqueueQDetailServiceImpl;
4847
import com.github.sonus21.rqueue.worker.RqueueWorkerRegistry;
4948
import java.util.Collections;
5049
import java.util.List;
@@ -107,9 +106,13 @@ void sizeUsesBrokerWhenSet() {
107106
service.setMessageBroker(messageBroker);
108107
when(messageBroker.capabilities()).thenReturn(Capabilities.REDIS_DEFAULTS);
109108
when(messageBroker.size(any(QueueDetail.class))).thenReturn(42L);
110-
when(messageBrowsingRepository.getDataSize(queueConfig.getProcessingQueueName(), com.github.sonus21.rqueue.models.enums.DataType.ZSET))
109+
when(messageBrowsingRepository.getDataSize(
110+
queueConfig.getProcessingQueueName(),
111+
com.github.sonus21.rqueue.models.enums.DataType.ZSET))
111112
.thenReturn(0L);
112-
when(messageBrowsingRepository.getDataSize(queueConfig.getScheduledQueueName(), com.github.sonus21.rqueue.models.enums.DataType.ZSET))
113+
when(messageBrowsingRepository.getDataSize(
114+
queueConfig.getScheduledQueueName(),
115+
com.github.sonus21.rqueue.models.enums.DataType.ZSET))
113116
.thenReturn(0L);
114117

115118
List<Entry<NavTab, RedisDataDetail>> details = service.getQueueDataStructureDetail(queueConfig);
@@ -122,15 +125,22 @@ void sizeUsesBrokerWhenSet() {
122125
assertEquals(42L, pending.getSize());
123126
verify(messageBroker, atLeastOnce()).size(any(QueueDetail.class));
124127
verify(messageBrowsingRepository, never())
125-
.getDataSize(queueConfig.getQueueName(), com.github.sonus21.rqueue.models.enums.DataType.LIST);
128+
.getDataSize(
129+
queueConfig.getQueueName(), com.github.sonus21.rqueue.models.enums.DataType.LIST);
126130
}
127131

128132
@Test
129133
void sizeFallsBackToRedisWhenNoBroker() {
130-
when(messageBrowsingRepository.getDataSize(queueConfig.getQueueName(), com.github.sonus21.rqueue.models.enums.DataType.LIST)).thenReturn(7L);
131-
when(messageBrowsingRepository.getDataSize(queueConfig.getProcessingQueueName(), com.github.sonus21.rqueue.models.enums.DataType.ZSET))
134+
when(messageBrowsingRepository.getDataSize(
135+
queueConfig.getQueueName(), com.github.sonus21.rqueue.models.enums.DataType.LIST))
136+
.thenReturn(7L);
137+
when(messageBrowsingRepository.getDataSize(
138+
queueConfig.getProcessingQueueName(),
139+
com.github.sonus21.rqueue.models.enums.DataType.ZSET))
132140
.thenReturn(0L);
133-
when(messageBrowsingRepository.getDataSize(queueConfig.getScheduledQueueName(), com.github.sonus21.rqueue.models.enums.DataType.ZSET))
141+
when(messageBrowsingRepository.getDataSize(
142+
queueConfig.getScheduledQueueName(),
143+
com.github.sonus21.rqueue.models.enums.DataType.ZSET))
134144
.thenReturn(0L);
135145

136146
List<Entry<NavTab, RedisDataDetail>> details = service.getQueueDataStructureDetail(queueConfig);
@@ -149,7 +159,9 @@ void scheduledTabHiddenAndEmptyWhenIntrospectionUnsupported() {
149159
service.setMessageBroker(messageBroker);
150160
when(messageBroker.capabilities()).thenReturn(natsCaps);
151161
when(messageBroker.size(any(QueueDetail.class))).thenReturn(0L);
152-
when(messageBrowsingRepository.getDataSize(queueConfig.getProcessingQueueName(), com.github.sonus21.rqueue.models.enums.DataType.ZSET))
162+
when(messageBrowsingRepository.getDataSize(
163+
queueConfig.getProcessingQueueName(),
164+
com.github.sonus21.rqueue.models.enums.DataType.ZSET))
153165
.thenReturn(0L);
154166

155167
List<Entry<NavTab, RedisDataDetail>> details = service.getQueueDataStructureDetail(queueConfig);

rqueue-web/src/test/java/com/github/sonus21/rqueue/web/service/RqueueQDetailServiceTest.java

Lines changed: 36 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -17,17 +17,14 @@
1717
package com.github.sonus21.rqueue.web.service;
1818

1919
import static com.github.sonus21.rqueue.utils.TestUtils.createQueueConfig;
20-
import static com.google.common.collect.Lists.newArrayList;
2120
import static org.junit.jupiter.api.Assertions.assertEquals;
2221
import static org.junit.jupiter.api.Assertions.assertNotEquals;
23-
import static org.mockito.ArgumentMatchers.any;
2422
import static org.mockito.ArgumentMatchers.anyCollection;
2523
import static org.mockito.ArgumentMatchers.anyList;
2624
import static org.mockito.Mockito.doReturn;
2725

2826
import com.github.sonus21.TestBase;
2927
import com.github.sonus21.rqueue.CoreUnitTest;
30-
import com.github.sonus21.rqueue.repository.MessageBrowsingRepository;
3128
import com.github.sonus21.rqueue.config.RqueueConfig;
3229
import com.github.sonus21.rqueue.converter.GenericMessageConverter;
3330
import com.github.sonus21.rqueue.core.RqueueMessage;
@@ -48,31 +45,26 @@
4845
import com.github.sonus21.rqueue.models.response.RowColumnMetaType;
4946
import com.github.sonus21.rqueue.models.response.TableColumn;
5047
import com.github.sonus21.rqueue.models.response.TableRow;
51-
import com.github.sonus21.rqueue.web.service.impl.RqueueQDetailServiceImpl;
48+
import com.github.sonus21.rqueue.repository.MessageBrowsingRepository;
5249
import com.github.sonus21.rqueue.service.RqueueMessageMetadataService;
5350
import com.github.sonus21.rqueue.utils.RqueueMessageTestUtils;
54-
import com.github.sonus21.rqueue.web.service.RqueueQDetailService;
55-
import com.github.sonus21.rqueue.web.service.RqueueSystemManagerService;
51+
import com.github.sonus21.rqueue.web.service.impl.RqueueQDetailServiceImpl;
5652
import com.github.sonus21.rqueue.worker.RqueueWorkerRegistry;
5753
import java.util.ArrayList;
5854
import java.util.Arrays;
5955
import java.util.Collection;
6056
import java.util.Collections;
6157
import java.util.HashMap;
62-
import java.util.HashSet;
6358
import java.util.List;
6459
import java.util.Map;
6560
import java.util.Map.Entry;
66-
import java.util.Set;
6761
import java.util.stream.Collectors;
6862
import org.junit.jupiter.api.BeforeEach;
6963
import org.junit.jupiter.api.Test;
7064
import org.mockito.Mock;
7165
import org.mockito.MockitoAnnotations;
7266
import org.springframework.data.redis.core.DefaultTypedTuple;
73-
import org.springframework.data.redis.core.RedisCallback;
7467
import org.springframework.data.redis.core.RedisTemplate;
75-
import org.springframework.data.redis.core.ZSetOperations.TypedTuple;
7668
import org.springframework.messaging.converter.MessageConverter;
7769

7870
@CoreUnitTest
@@ -124,10 +116,18 @@ public void init() {
124116
@Test
125117
void getQueueDataStructureDetail() {
126118
assertEquals(Collections.emptyList(), rqueueQDetailService.getQueueDataStructureDetail(null));
127-
doReturn(10L).when(messageBrowsingRepository).getDataSize("__rq::queue::test", com.github.sonus21.rqueue.models.enums.DataType.LIST);
128-
doReturn(11L).when(messageBrowsingRepository).getDataSize("test-dlq", com.github.sonus21.rqueue.models.enums.DataType.LIST);
129-
doReturn(12L).when(messageBrowsingRepository).getDataSize("__rq::d-queue::test", com.github.sonus21.rqueue.models.enums.DataType.ZSET);
130-
doReturn(5L).when(messageBrowsingRepository).getDataSize("__rq::p-queue::test", com.github.sonus21.rqueue.models.enums.DataType.ZSET);
119+
doReturn(10L)
120+
.when(messageBrowsingRepository)
121+
.getDataSize("__rq::queue::test", com.github.sonus21.rqueue.models.enums.DataType.LIST);
122+
doReturn(11L)
123+
.when(messageBrowsingRepository)
124+
.getDataSize("test-dlq", com.github.sonus21.rqueue.models.enums.DataType.LIST);
125+
doReturn(12L)
126+
.when(messageBrowsingRepository)
127+
.getDataSize("__rq::d-queue::test", com.github.sonus21.rqueue.models.enums.DataType.ZSET);
128+
doReturn(5L)
129+
.when(messageBrowsingRepository)
130+
.getDataSize("__rq::p-queue::test", com.github.sonus21.rqueue.models.enums.DataType.ZSET);
131131
List<Entry<NavTab, RedisDataDetail>> queueRedisDataDetails = new ArrayList<>();
132132
queueRedisDataDetails.add(new HashMap.SimpleEntry<>(
133133
NavTab.PENDING, new RedisDataDetail("__rq::queue::test", DataType.LIST, 10)));
@@ -147,10 +147,18 @@ void getQueueDataStructureDetail() {
147147

148148
@Test
149149
void getQueueDataStructureDetails() {
150-
doReturn(10L).when(messageBrowsingRepository).getDataSize("__rq::queue::test", com.github.sonus21.rqueue.models.enums.DataType.LIST);
151-
doReturn(11L).when(messageBrowsingRepository).getDataSize("test-dlq", com.github.sonus21.rqueue.models.enums.DataType.LIST);
152-
doReturn(12L).when(messageBrowsingRepository).getDataSize("__rq::d-queue::test", com.github.sonus21.rqueue.models.enums.DataType.ZSET);
153-
doReturn(5L).when(messageBrowsingRepository).getDataSize("__rq::p-queue::test", com.github.sonus21.rqueue.models.enums.DataType.ZSET);
150+
doReturn(10L)
151+
.when(messageBrowsingRepository)
152+
.getDataSize("__rq::queue::test", com.github.sonus21.rqueue.models.enums.DataType.LIST);
153+
doReturn(11L)
154+
.when(messageBrowsingRepository)
155+
.getDataSize("test-dlq", com.github.sonus21.rqueue.models.enums.DataType.LIST);
156+
doReturn(12L)
157+
.when(messageBrowsingRepository)
158+
.getDataSize("__rq::d-queue::test", com.github.sonus21.rqueue.models.enums.DataType.ZSET);
159+
doReturn(5L)
160+
.when(messageBrowsingRepository)
161+
.getDataSize("__rq::p-queue::test", com.github.sonus21.rqueue.models.enums.DataType.ZSET);
154162
List<Entry<NavTab, RedisDataDetail>> queueRedisDataDetails = new ArrayList<>();
155163
queueRedisDataDetails.add(new HashMap.SimpleEntry<>(
156164
NavTab.PENDING, new RedisDataDetail("__rq::queue::test", DataType.LIST, 10)));
@@ -165,9 +173,15 @@ void getQueueDataStructureDetails() {
165173
DataType.LIST,
166174
11)));
167175

168-
doReturn(5L).when(messageBrowsingRepository).getDataSize("__rq::queue::test2", com.github.sonus21.rqueue.models.enums.DataType.LIST);
169-
doReturn(2L).when(messageBrowsingRepository).getDataSize("__rq::p-queue::test2", com.github.sonus21.rqueue.models.enums.DataType.ZSET);
170-
doReturn(8L).when(messageBrowsingRepository).getDataSize("__rq::d-queue::test2", com.github.sonus21.rqueue.models.enums.DataType.ZSET);
176+
doReturn(5L)
177+
.when(messageBrowsingRepository)
178+
.getDataSize("__rq::queue::test2", com.github.sonus21.rqueue.models.enums.DataType.LIST);
179+
doReturn(2L)
180+
.when(messageBrowsingRepository)
181+
.getDataSize("__rq::p-queue::test2", com.github.sonus21.rqueue.models.enums.DataType.ZSET);
182+
doReturn(8L)
183+
.when(messageBrowsingRepository)
184+
.getDataSize("__rq::d-queue::test2", com.github.sonus21.rqueue.models.enums.DataType.ZSET);
171185

172186
List<Entry<NavTab, RedisDataDetail>> queueRedisDataDetails2 = new ArrayList<>();
173187
queueRedisDataDetails2.add(new HashMap.SimpleEntry<>(
@@ -412,9 +426,7 @@ void viewDataDelegatesToRepository() {
412426
DataViewResponse stub = new DataViewResponse();
413427
stub.setHeaders(Collections.singletonList("Item"));
414428
stub.setRows(Collections.singletonList(new TableRow(new TableColumn("hello"))));
415-
doReturn(stub)
416-
.when(messageBrowsingRepository)
417-
.viewData("jobs", DataType.LIST, null, 0, 10);
429+
doReturn(stub).when(messageBrowsingRepository).viewData("jobs", DataType.LIST, null, 0, 10);
418430
DataViewResponse response = rqueueQDetailService.viewData("jobs", DataType.LIST, null, 0, 10);
419431
assertEquals(stub, response);
420432
}

rqueue-web/src/test/java/com/github/sonus21/rqueue/web/service/RqueueSystemManagerServiceImplTest.java

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,9 @@
2020
import static org.junit.jupiter.api.Assertions.assertFalse;
2121
import static org.junit.jupiter.api.Assertions.assertNotNull;
2222
import static org.junit.jupiter.api.Assertions.assertNull;
23-
import static org.junit.jupiter.api.Assertions.fail;
24-
import static org.mockito.ArgumentMatchers.any;
2523
import static org.mockito.ArgumentMatchers.anyCollection;
2624
import static org.mockito.ArgumentMatchers.anyList;
2725
import static org.mockito.ArgumentMatchers.anyString;
28-
import static org.mockito.ArgumentMatchers.eq;
2926
import static org.mockito.Mockito.doAnswer;
3027
import static org.mockito.Mockito.doReturn;
3128
import static org.mockito.Mockito.verifyNoInteractions;
@@ -39,9 +36,9 @@
3936
import com.github.sonus21.rqueue.listener.QueueDetail;
4037
import com.github.sonus21.rqueue.models.db.QueueConfig;
4138
import com.github.sonus21.rqueue.models.event.RqueueBootstrapEvent;
42-
import com.github.sonus21.rqueue.web.service.impl.RqueueSystemManagerServiceImpl;
4339
import com.github.sonus21.rqueue.service.RqueueMessageMetadataService;
4440
import com.github.sonus21.rqueue.utils.TestUtils;
41+
import com.github.sonus21.rqueue.web.service.impl.RqueueSystemManagerServiceImpl;
4542
import java.util.Arrays;
4643
import java.util.List;
4744
import org.junit.jupiter.api.BeforeEach;

rqueue-web/src/test/java/com/github/sonus21/rqueue/web/service/RqueueSystemManagerServiceTest.java

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -33,11 +33,9 @@
3333
import com.github.sonus21.rqueue.listener.QueueDetail;
3434
import com.github.sonus21.rqueue.models.db.QueueConfig;
3535
import com.github.sonus21.rqueue.models.response.BaseResponse;
36-
import com.github.sonus21.rqueue.web.service.impl.RqueueSystemManagerServiceImpl;
3736
import com.github.sonus21.rqueue.service.RqueueMessageMetadataService;
3837
import com.github.sonus21.rqueue.utils.TestUtils;
39-
import com.github.sonus21.rqueue.web.service.RqueueSystemManagerService;
40-
import java.util.ArrayList;
38+
import com.github.sonus21.rqueue.web.service.impl.RqueueSystemManagerServiceImpl;
4139
import java.util.Arrays;
4240
import java.util.Collections;
4341
import java.util.HashSet;
@@ -122,10 +120,9 @@ void getQueueConfigs() {
122120
EndpointRegistry.register(fastQueueDetail);
123121
doReturn(Arrays.asList(slowQueueConfig, fastQueueConfig))
124122
.when(rqueueSystemConfigDao)
125-
.findAllQConfig(
126-
EndpointRegistry.getActiveQueues().stream()
127-
.map(TestUtils::getQueueConfigKey)
128-
.collect(Collectors.toList()));
123+
.findAllQConfig(EndpointRegistry.getActiveQueues().stream()
124+
.map(TestUtils::getQueueConfigKey)
125+
.collect(Collectors.toList()));
129126
assertEquals(
130127
Arrays.asList(slowQueueConfig, fastQueueConfig),
131128
rqueueSystemManagerService.getQueueConfigs());

0 commit comments

Comments
 (0)