@@ -10,7 +10,6 @@ jest.mock("@phantom/openapi-wallet-service", () => ({
1010 GetOrCreatePhantomOrganizationMethodEnum : {
1111 getOrCreatePhantomOrganization : "getOrCreatePhantomOrganization" ,
1212 } ,
13- GetOrganizationWalletsMethodEnum : { getOrganizationWallets : "getOrganizationWallets" } ,
1413 GetOrCreateWalletWithTagMethodEnum : { getOrCreateWalletWithTag : "getOrCreateWalletWithTag" } ,
1514 DerivationInfoCurveEnum : { ed25519 : "ed25519" , secp256k1 : "secp256k1" } ,
1615 DerivationInfoAddressFormatEnum : {
@@ -277,116 +276,6 @@ describe("Auth2KmsRpcClient", () => {
277276 } ) ;
278277 } ) ;
279278
280- describe ( "getOrganizationWallets" , ( ) => {
281- it ( "returns the OrganizationWallets result" , async ( ) => {
282- mockPostKmsRpc . mockResolvedValueOnce ( {
283- data : { result : { wallets : [ { walletId : "w-1" , tags : [ "vault" ] } ] } } ,
284- } ) ;
285- const client = makeClient ( ) ;
286-
287- const result = await client . getOrganizationWallets ( "org-abc" ) ;
288- expect ( result . wallets ) . toHaveLength ( 1 ) ;
289- expect ( result . wallets [ 0 ] . walletId ) . toBe ( "w-1" ) ;
290- } ) ;
291-
292- it ( "passes organizationId, limit=20, and offset=0 in the RPC params" , async ( ) => {
293- mockPostKmsRpc . mockResolvedValueOnce ( { data : { result : { wallets : [ ] } } } ) ;
294- const client = makeClient ( ) ;
295-
296- await client . getOrganizationWallets ( "org-abc" ) ;
297-
298- const request = mockPostKmsRpc . mock . calls [ 0 ] [ 0 ] as {
299- method : string ;
300- params : { organizationId : string ; limit : number ; offset : number } ;
301- } ;
302- expect ( request . method ) . toBe ( "getOrganizationWallets" ) ;
303- expect ( request . params . organizationId ) . toBe ( "org-abc" ) ;
304- expect ( request . params . limit ) . toBe ( 20 ) ;
305- expect ( request . params . offset ) . toBe ( 0 ) ;
306- } ) ;
307-
308- it ( "returns an empty wallets array when none exist" , async ( ) => {
309- mockPostKmsRpc . mockResolvedValueOnce ( { data : { result : { wallets : [ ] } } } ) ;
310- const client = makeClient ( ) ;
311-
312- const result = await client . getOrganizationWallets ( "org-abc" ) ;
313- expect ( result . wallets ) . toEqual ( [ ] ) ;
314- } ) ;
315-
316- it ( "makes a second request when the first page is full (length === limit)" , async ( ) => {
317- const fullPage = Array . from ( { length : 20 } , ( _ , i ) => ( { walletId : `w-${ i } ` , tags : [ ] } ) ) ;
318- const partialPage = [ { walletId : "w-20" , tags : [ ] } ] ;
319- mockPostKmsRpc
320- . mockResolvedValueOnce ( { data : { result : { wallets : fullPage } } } )
321- . mockResolvedValueOnce ( { data : { result : { wallets : partialPage } } } ) ;
322- const client = makeClient ( ) ;
323-
324- const result = await client . getOrganizationWallets ( "org-abc" ) ;
325-
326- expect ( mockPostKmsRpc ) . toHaveBeenCalledTimes ( 2 ) ;
327- expect ( result . wallets ) . toHaveLength ( 21 ) ;
328- } ) ;
329-
330- it ( "uses offset=0 for the first page and offset=20 for the second" , async ( ) => {
331- const fullPage = Array . from ( { length : 20 } , ( _ , i ) => ( { walletId : `w-${ i } ` , tags : [ ] } ) ) ;
332- mockPostKmsRpc
333- . mockResolvedValueOnce ( { data : { result : { wallets : fullPage } } } )
334- . mockResolvedValueOnce ( { data : { result : { wallets : [ ] } } } ) ;
335- const client = makeClient ( ) ;
336-
337- await client . getOrganizationWallets ( "org-abc" ) ;
338-
339- const firstCall = mockPostKmsRpc . mock . calls [ 0 ] [ 0 ] as { params : { offset : number } } ;
340- const secondCall = mockPostKmsRpc . mock . calls [ 1 ] [ 0 ] as { params : { offset : number } } ;
341- expect ( firstCall . params . offset ) . toBe ( 0 ) ;
342- expect ( secondCall . params . offset ) . toBe ( 20 ) ;
343- } ) ;
344-
345- it ( "accumulates wallets across multiple full pages" , async ( ) => {
346- const page1 = Array . from ( { length : 20 } , ( _ , i ) => ( { walletId : `w-${ i } ` , tags : [ ] } ) ) ;
347- const page2 = Array . from ( { length : 20 } , ( _ , i ) => ( { walletId : `w-${ i + 20 } ` , tags : [ ] } ) ) ;
348- const page3 = [ { walletId : "w-40" , tags : [ "my-app" ] } ] ;
349- mockPostKmsRpc
350- . mockResolvedValueOnce ( { data : { result : { wallets : page1 } } } )
351- . mockResolvedValueOnce ( { data : { result : { wallets : page2 } } } )
352- . mockResolvedValueOnce ( { data : { result : { wallets : page3 } } } ) ;
353- const client = makeClient ( ) ;
354-
355- const result = await client . getOrganizationWallets ( "org-abc" ) ;
356-
357- expect ( mockPostKmsRpc ) . toHaveBeenCalledTimes ( 3 ) ;
358- expect ( result . wallets ) . toHaveLength ( 41 ) ;
359- expect ( result . wallets [ 40 ] . walletId ) . toBe ( "w-40" ) ;
360- } ) ;
361-
362- it ( "stops after a page with exactly one fewer wallet than the limit" , async ( ) => {
363- const almostFull = Array . from ( { length : 19 } , ( _ , i ) => ( { walletId : `w-${ i } ` , tags : [ ] } ) ) ;
364- mockPostKmsRpc . mockResolvedValueOnce ( { data : { result : { wallets : almostFull } } } ) ;
365- const client = makeClient ( ) ;
366-
367- await client . getOrganizationWallets ( "org-abc" ) ;
368-
369- expect ( mockPostKmsRpc ) . toHaveBeenCalledTimes ( 1 ) ;
370- } ) ;
371-
372- it ( "throws on KMS-level RPC error" , async ( ) => {
373- mockPostKmsRpc . mockResolvedValueOnce ( { data : { error : { code : - 32001 , message : "Forbidden" } } } ) ;
374- const client = makeClient ( ) ;
375-
376- await expect ( client . getOrganizationWallets ( "org-abc" ) ) . rejects . toThrow ( "KMS RPC error" ) ;
377- } ) ;
378-
379- it ( "throws on KMS-level RPC error during a subsequent page fetch" , async ( ) => {
380- const fullPage = Array . from ( { length : 20 } , ( _ , i ) => ( { walletId : `w-${ i } ` , tags : [ ] } ) ) ;
381- mockPostKmsRpc
382- . mockResolvedValueOnce ( { data : { result : { wallets : fullPage } } } )
383- . mockResolvedValueOnce ( { data : { error : { code : - 32001 , message : "Forbidden" } } } ) ;
384- const client = makeClient ( ) ;
385-
386- await expect ( client . getOrganizationWallets ( "org-abc" ) ) . rejects . toThrow ( "KMS RPC error" ) ;
387- } ) ;
388- } ) ;
389-
390279 describe ( "getOrCreateWalletWithTag" , ( ) => {
391280 const walletArgs = {
392281 organizationId : "org-abc" ,
0 commit comments