1+ // TEST FOR MANY ENTITIES
2+
13import type { FetchData } from '../../../components/PaginatedTable' ;
24import type {
35 PreparedStorageNode ,
@@ -8,6 +10,10 @@ import type {NodesRequestParams} from '../../../types/api/nodes';
810import { prepareSortValue } from '../../../utils/filters' ;
911import { getUptimeParamValue , isSortableNodesProperty } from '../../../utils/nodes' ;
1012
13+ const getConcurrentId = ( limit ?: number , offset ?: number ) => {
14+ return `getStorageNodes|offset${ offset } |limit${ limit } ` ;
15+ } ;
16+
1117export const getStorageNodes : FetchData <
1218 PreparedStorageNode ,
1319 PreparedStorageNodeFilters ,
@@ -30,25 +36,42 @@ export const getStorageNodes: FetchData<
3036 ? prepareSortValue ( columnId , sortOrder )
3137 : undefined ;
3238
33- const response = await window . api . getNodes ( {
34- type,
35- storage,
36- limit,
37- offset,
38- sort,
39- filter : searchValue ,
40- uptime : getUptimeParamValue ( nodesUptimeFilter ) ,
41- with : visibleEntities ,
42- database,
43- node_id : nodeId ,
44- group_id : groupId ,
45- filter_group : filterGroup ,
46- filter_group_by : filterGroupBy ,
47- } ) ;
39+ const response = await window . api . getNodes (
40+ {
41+ type,
42+ storage,
43+ limit,
44+ offset : 0 ,
45+ sort,
46+ filter : searchValue ,
47+ uptime : getUptimeParamValue ( nodesUptimeFilter ) ,
48+ with : visibleEntities ,
49+ database,
50+ node_id : nodeId ,
51+ group_id : groupId ,
52+ filter_group : filterGroup ,
53+ filter_group_by : filterGroupBy ,
54+ } ,
55+ { concurrentId : getConcurrentId ( limit , offset ) , signal : params . signal } ,
56+ ) ;
4857 const preparedResponse = prepareStorageNodesResponse ( response ) ;
58+
59+ let mockedData = preparedResponse . nodes ?. slice ( ) ;
60+
61+ for ( let i = 0 ; i < 1000 ; i ++ ) {
62+ mockedData = mockedData ?. concat (
63+ preparedResponse . nodes ?. map ( ( data , j ) => ( {
64+ ...data ,
65+ NodeId : data . NodeId + i + j ,
66+ Host : data . Host || String ( i ) + j ,
67+ } ) ) || [ ] ,
68+ ) ;
69+ }
70+ const paginatedData = mockedData ?. slice ( offset , offset + limit ) ;
71+
4972 return {
50- data : preparedResponse . nodes || [ ] ,
51- found : preparedResponse . found || 0 ,
52- total : preparedResponse . total || 0 ,
73+ data : paginatedData || [ ] ,
74+ found : mockedData ?. length || 0 ,
75+ total : mockedData ?. length || 0 ,
5376 } ;
5477} ;
0 commit comments