Skip to content

Commit

Permalink
Fix ipfs CID. (#1851)
Browse files Browse the repository at this point in the history
* Fix ipfs CID.

* fix lint

* tweaks.

* Upgrade Github actions.

* fix graphql asset url.

* Fix cov.

* remove duplicate test.

* Surround by it block.

* debug log.

* added docker logs only for ipfs

* increase timeout.

* debug log.

* Changed to ipfs cluster.

* roll back.

* put in the same test with arweave.

* debug.

* Log initialize url.

* logs.

* tweak condition.

* changed cid with the one from cluster.

* Rename test. Added back uploading in ipfs.

* Fix review.
  • Loading branch information
mariacarmina authored Oct 9, 2024
1 parent 9cb2ea0 commit 9c25342
Show file tree
Hide file tree
Showing 3 changed files with 48 additions and 27 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -224,7 +224,7 @@ jobs:
# needs: [test_unit, test_integration]
# steps:
# - uses: actions/checkout@v3
# - uses: actions/setup-node@v2
# - uses: actions/setup-node@v4
# with:
# node-version: '16'

Expand Down
2 changes: 1 addition & 1 deletion src/services/Provider.ts
Original file line number Diff line number Diff line change
Expand Up @@ -394,7 +394,7 @@ export class Provider {
LoggerInstance.error(e)
throw new Error(`Provider initialize failed url: ${initializeUrl} `)
}
if (response?.ok) {
if (response?.status === 200) {
const results: ProviderInitialize = await response.json()
return results
}
Expand Down
71 changes: 46 additions & 25 deletions test/integration/PublishEditConsume.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -72,17 +72,6 @@ const arweaveFile: Files = {
]
}

const ifpsFile: Files = {
datatokenAddress: '0x0',
nftAddress: '0x0',
files: [
{
type: 'ipfs',
hash: 'QmRhsp7eghZtW4PktPC2wAHdKoy2LiF1n6UXMKmAhqQJUA'
}
]
}

const onchainFile: Files = {
datatokenAddress: '0x0',
nftAddress: '0x0',
Expand Down Expand Up @@ -146,6 +135,29 @@ function delay(interval: number) {
}).timeout(interval + 100)
}

function uploadToIpfs(data: any): Promise<string> {
return new Promise((resolve, reject) => {
fetch('http://172.15.0.16:5001/api/v0/add', {
method: 'POST',
headers: {
'Content-Type':
'multipart/form-data; boundary=------------------------a28d68b1c872c96f'
},
body:
'--------------------------a28d68b1c872c96f\r\nContent-Disposition: form-data; name="file"; filename="ddo.json"\r\nContent-Type: application/octet-stream\r\n\r\n' +
data +
'\r\n--------------------------a28d68b1c872c96f--\r\n'
})
.then(function (response: any) {
const resp = response.json()
resolve(resp.Hash)
})
.catch(function (error: any) {
reject(error)
})
})
}

describe('Publish consume test', async () => {
before(async () => {
publisherAccount = (await provider.getSigner(0)) as Signer
Expand Down Expand Up @@ -210,33 +222,42 @@ describe('Publish consume test', async () => {
)
assert(urlAssetId, 'Failed to publish url DDO')
})

it('Should publish ipfs asset', async () => {
ipfsAssetId = await createAsset(
'IpfsDatatoken',
'IPFSDT',
it('Should publish arweave asset', async () => {
arweaveAssetId = await createAsset(
'ArwaveDatatoken',
'ARWAVEDT',
publisherAccount,
ifpsFile,
arweaveFile,
assetDdo,
providerUrl,
addresses.ERC721Factory,
aquarius
)
assert(ipfsAssetId, 'Failed to publish ipfs DDO')
assert(arweaveAssetId, 'Failed to arwave publish DDO')
})

it('Should publish arwave asset', async () => {
arweaveAssetId = await createAsset(
'ArweaveDatatoken',
'ARWEAVEDT',
it('Should publish ipfs asset', async () => {
const ipfsCID = await uploadToIpfs(JSON.stringify(assetDdo))
const ipfsFile: Files = {
datatokenAddress: '0x0',
nftAddress: '0x0',
files: [
{
type: 'ipfs',
hash: ipfsCID
}
]
}
ipfsAssetId = await createAsset(
'IpfsDatatoken',
'IPFSDT',
publisherAccount,
arweaveFile,
ipfsFile,
assetDdo,
providerUrl,
addresses.ERC721Factory,
aquarius
)
assert(arweaveAssetId, 'Failed to publish ipfs DDO')
assert(ipfsAssetId, 'Failed to publish ipfs DDO')
})

it('Should publish onchain asset', async () => {
Expand Down

0 comments on commit 9c25342

Please sign in to comment.