Skip to content

Commit 18640bf

Browse files
committed
add junit for getList
1 parent 99e048a commit 18640bf

1 file changed

Lines changed: 24 additions & 0 deletions

File tree

cloudnative/src/test/java/com/highgo/platform/apiserver/service/impl/InstanceServiceImplTest.java

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,17 @@
2020
import static org.junit.Assert.assertEquals;
2121
import static org.junit.Assert.assertThrows;
2222
import static org.mockito.ArgumentMatchers.any;
23+
import static org.mockito.Mockito.mock;
2324
import static org.mockito.Mockito.when;
2425

26+
import java.math.BigInteger;
2527
import java.util.ArrayList;
28+
import java.util.Arrays;
2629
import java.util.List;
2730
import java.util.Optional;
2831

2932
import javax.persistence.EntityManager;
33+
import javax.persistence.Query;
3034

3135
import org.junit.jupiter.api.Test;
3236
import org.junit.jupiter.api.extension.ExtendWith;
@@ -41,6 +45,7 @@
4145
import org.springframework.data.domain.Sort;
4246
import org.springframework.data.jpa.domain.Specification;
4347

48+
import com.highgo.cloud.constant.InstanceAllowConstant;
4449
import com.highgo.cloud.enums.BackupStatus;
4550
import com.highgo.cloud.enums.InstanceStatus;
4651
import com.highgo.platform.apiserver.model.dto.InstanceDTO;
@@ -51,6 +56,7 @@
5156
import com.highgo.platform.apiserver.model.po.K8sClusterInfoPO;
5257
import com.highgo.platform.apiserver.model.vo.request.CreateInstanceVO;
5358
import com.highgo.platform.apiserver.model.vo.response.ActionResponse;
59+
import com.highgo.platform.apiserver.model.vo.response.InstanceCountVO;
5460
import com.highgo.platform.apiserver.model.vo.response.InstanceVO;
5561
import com.highgo.platform.apiserver.repository.BackupPolicyRepository;
5662
import com.highgo.platform.apiserver.repository.BackupRepository;
@@ -514,6 +520,24 @@ private Page<InstancePO> getInstancePOByPage() {
514520
@Test
515521
void testGetInstanceCount() {
516522

523+
Query query = mock(Query.class);
524+
525+
// 模拟查询结果
526+
Object[] row1 = {InstanceStatus.RUNNING.name(), BigInteger.valueOf(2)};
527+
Object[] row2 = {InstanceStatus.CREATING.name(), BigInteger.valueOf(3)};
528+
Object[] row3 = {InstanceStatus.ERROR.name(), BigInteger.valueOf(1)};
529+
List<Object> resultList = Arrays.asList(row1, row2, row3);
530+
531+
// 模拟EntityManager和Query行为
532+
when(entityManager.createNativeQuery(any(String.class))).thenReturn(query);
533+
when(query.getResultList()).thenReturn(resultList);
534+
535+
InstanceCountVO result = instanceServiceImpl.getInstanceCount();
536+
537+
// 验证结果是否符合预期
538+
assertEquals(2, result.getRunningCount());
539+
assertEquals(3, result.getStartingCount());
540+
assertEquals(1, result.getErrorCount());
517541
}
518542

519543
@Test

0 commit comments

Comments
 (0)