@Override
    public List<String> getTenantIdList(int page, int pageSize) {
        PaginationHelper<Map<String, Object>> helper = createPaginationHelper();
        
        ConfigInfoMapper configInfoMapper = mapperManager.findMapper(dataSourceService.getDataSourceType(),
                TableConstant.CONFIG_INFO);
        int from = (page - 1) * pageSize;
        MapperResult mapperResult = configInfoMapper.getTenantIdList(new MapperContext(from, pageSize));
        
        Page<Map<String, Object>> pageList = helper.fetchPageLimit(mapperResult.getSql(),
                mapperResult.getParamList().toArray(), page, pageSize, MAP_ROW_MAPPER);
        return pageList.getPageItems().stream().map(map -> String.valueOf(map.get("TENANT_ID")))
                .collect(Collectors.toList());
    }
@Test
    void testGetTenantIdList() {
        
        //mock select config state
        List<String> tenantStrings = Arrays.asList("tenant1", "tenant2", "tenant3");
        Map<String, Object> g1 = new HashMap<>();
        g1.put("TENANT_ID", tenantStrings.get(0));
        Map<String, Object> g2 = new HashMap<>();
        g2.put("TENANT_ID", tenantStrings.get(1));
        Map<String, Object> g3 = new HashMap<>();
        g3.put("TENANT_ID", tenantStrings.get(2));
        List<Map<String, Object>> params = new ArrayList<>();
        params.addAll(Arrays.asList(g1, g2, g3));
        
        when(databaseOperate.queryMany(anyString(), eq(new Object[] {}), eq(MAP_ROW_MAPPER))).thenReturn(params);
        int page = 10;
        int pageSize = 100;
        //execute return mock obj
        List<String> returnTenants = embeddedConfigInfoPersistService.getTenantIdList(page, pageSize);
        //expect check
        assertEquals(tenantStrings, returnTenants);
    }