From 09e66444e5daeec44d25602a74e7d0a1c0e6b08b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Manuel=20Mari=C3=B1as=20Bascoy?= Date: Fri, 1 Dec 2023 17:31:08 +0100 Subject: [PATCH] fix ipfs --- modules/client/src/internal/utils.ts | 4 +++- .../test/integration/client/methods.test.ts | 6 ++--- modules/client/test/unit/client/utils.test.ts | 22 +++++++++---------- 3 files changed, 17 insertions(+), 15 deletions(-) diff --git a/modules/client/src/internal/utils.ts b/modules/client/src/internal/utils.ts index 8cfc787fc..3a7adba9d 100644 --- a/modules/client/src/internal/utils.ts +++ b/modules/client/src/internal/utils.ts @@ -78,6 +78,7 @@ import { InvalidParameter, InvalidPermissionOperationType, MultiTargetPermission, + MultiUri, NotImplementedError, PermissionIds, PermissionOperationType, @@ -1230,9 +1231,10 @@ export async function validateApplyUpdateFunction( const build = release?.builds.find(( build: { build: number; metadata: string }, ) => build.build === decodedParams.versionTag.build); - const metadataCid = build?.metadata; + const metadataUri = build?.metadata; // fetch the metadata + const metadataCid = new MultiUri(metadataUri!).ipfsCid const metadata = await ipfs.fetchString(metadataCid!); const metadataJson = JSON.parse(metadata) as PluginRepoBuildMetadata; // get the update abi for the specified build diff --git a/modules/client/test/integration/client/methods.test.ts b/modules/client/test/integration/client/methods.test.ts index 0a68242bb..63999ae94 100644 --- a/modules/client/test/integration/client/methods.test.ts +++ b/modules/client/test/integration/client/methods.test.ts @@ -1950,7 +1950,7 @@ describe("Client", () => { id: ADDRESS_ONE, }], dao: subgraphDao, - pluginPreparation: subgraphPluginPreparation, + pluginPreparations: [subgraphPluginPreparation], pluginRepo: subgraphPluginRepo, }); mockedIPFSClient.cat.mockResolvedValueOnce(Buffer.from( @@ -1970,7 +1970,7 @@ describe("Client", () => { id: ADDRESS_ONE, }], dao: subgraphDao, - pluginPreparation: subgraphPluginPreparation, + pluginPreparations: [subgraphPluginPreparation], pluginRepo: subgraphPluginRepo, }); const res = await client.methods.isPluginUpdateProposalValid( @@ -1989,7 +1989,7 @@ describe("Client", () => { id: ADDRESS_ONE, }], dao: subgraphDao, - pluginPreparation: subgraphPluginPreparation, + pluginPreparations: [subgraphPluginPreparation], pluginRepo: subgraphPluginRepo, }); const res = await client.methods.isPluginUpdateProposalValid( diff --git a/modules/client/test/unit/client/utils.test.ts b/modules/client/test/unit/client/utils.test.ts index 1874561b7..ca961a1e9 100644 --- a/modules/client/test/unit/client/utils.test.ts +++ b/modules/client/test/unit/client/utils.test.ts @@ -705,7 +705,7 @@ describe("Test client utils", () => { pluginRepo: subgraphPluginRepo, }); mockedClient.request.mockResolvedValueOnce({ - pluginPreparation: subgraphPluginPreparation, + pluginPreparations: [subgraphPluginPreparation], }); mockedIPFSClient.cat.mockResolvedValueOnce(Buffer.from( JSON.stringify(TOKEN_VOTING_BUILD_METADATA), @@ -732,7 +732,7 @@ describe("Test client utils", () => { pluginRepo: subgraphPluginRepo, }); mockedClient.request.mockResolvedValueOnce({ - pluginPreparation: subgraphPluginPreparation, + pluginPreparations: [subgraphPluginPreparation], }); mockedIPFSClient.cat.mockResolvedValueOnce(Buffer.from( JSON.stringify(TOKEN_VOTING_BUILD_METADATA), @@ -767,7 +767,7 @@ describe("Test client utils", () => { pluginRepo: subgraphPluginRepo, }); mockedClient.request.mockResolvedValueOnce({ - pluginPreparation: subgraphPluginPreparation, + pluginPreparations: [subgraphPluginPreparation], }); mockedIPFSClient.cat.mockResolvedValueOnce(Buffer.from( JSON.stringify(TOKEN_VOTING_BUILD_METADATA), @@ -802,7 +802,7 @@ describe("Test client utils", () => { pluginRepo: subgraphPluginRepo, }); mockedClient.request.mockResolvedValueOnce({ - pluginPreparation: subgraphPluginPreparation, + pluginPreparations: [subgraphPluginPreparation], }); mockedIPFSClient.cat.mockResolvedValueOnce(Buffer.from( JSON.stringify(TOKEN_VOTING_BUILD_METADATA), @@ -857,7 +857,7 @@ describe("Test client utils", () => { pluginRepo: externalPluginRepo, }); mockedClient.request.mockResolvedValueOnce({ - pluginPreparation: subgraphPluginPreparation, + pluginPreparations: [subgraphPluginPreparation], }); mockedIPFSClient.cat.mockResolvedValueOnce(Buffer.from( JSON.stringify(TOKEN_VOTING_BUILD_METADATA), @@ -911,7 +911,7 @@ describe("Test client utils", () => { pluginRepo: subgraphPluginRepo, }); mockedClient.request.mockResolvedValueOnce({ - pluginPreparation: subgraphPluginPreparation, + pluginPreparations: [subgraphPluginPreparation], }); mockedIPFSClient.cat.mockResolvedValueOnce(Buffer.from( JSON.stringify(TOKEN_VOTING_BUILD_METADATA), @@ -939,7 +939,7 @@ describe("Test client utils", () => { pluginRepo: subgraphPluginRepo, }); mockedClient.request.mockResolvedValueOnce({ - pluginPreparation: subgraphPluginPreparation, + pluginPreparations: [subgraphPluginPreparation], }); mockedIPFSClient.cat.mockResolvedValueOnce(Buffer.from( JSON.stringify({}), @@ -967,7 +967,7 @@ describe("Test client utils", () => { pluginRepo: subgraphPluginRepo, }); mockedClient.request.mockResolvedValueOnce({ - pluginPreparation: null, + pluginPreparations: [], }); const result = await validateApplyUpdateFunction( action, @@ -1066,7 +1066,7 @@ describe("Test client utils", () => { pluginRepo: subgraphPluginRepo, }); mockedClient.request.mockResolvedValueOnce({ - pluginPreparation: subgraphPluginPreparation, + pluginPreparations: [subgraphPluginPreparation], }); mockedClient.request.mockResolvedValueOnce({ pluginInstallations: [{ @@ -1107,7 +1107,7 @@ describe("Test client utils", () => { pluginRepo: subgraphPluginRepo, }); mockedClient.request.mockResolvedValueOnce({ - pluginPreparation: subgraphPluginPreparation, + pluginPreparations: [subgraphPluginPreparation], }); mockedClient.request.mockResolvedValueOnce({ pluginInstallations: [{ @@ -1154,7 +1154,7 @@ describe("Test client utils", () => { pluginRepo: subgraphPluginRepo, }); mockedClient.request.mockResolvedValueOnce({ - pluginPreparation: subgraphPluginPreparation, + pluginPreparations: [subgraphPluginPreparation], }); mockedClient.request.mockResolvedValueOnce({ pluginInstallations: [{