Added eventIndex for NFT Update events.
This commit is contained in:
parent
7b49cf8e4b
commit
b7b42440c4
|
@ -385,6 +385,7 @@ type NftUpdate @entity {
|
|||
block: Int!
|
||||
timestamp: Int!
|
||||
tx: String!
|
||||
eventIndex: Int!
|
||||
}
|
||||
|
||||
type Template @entity{
|
||||
|
@ -588,6 +589,7 @@ type NftTransferHistory @entity {
|
|||
oldOwner: User!
|
||||
newOwner: User!
|
||||
txId: String
|
||||
eventIndex: Int!
|
||||
timestamp: Int!
|
||||
block: Int!
|
||||
}
|
||||
|
|
|
@ -47,6 +47,7 @@ export function handleMetadataCreated(event: MetadataCreated): void {
|
|||
|
||||
nftUpdate.timestamp = event.block.timestamp.toI32()
|
||||
nftUpdate.tx = event.transaction.hash.toHex()
|
||||
nftUpdate.eventIndex = event.logIndex.toI32()
|
||||
nftUpdate.block = event.block.number.toI32()
|
||||
|
||||
nftUpdate.save()
|
||||
|
@ -71,6 +72,7 @@ export function handleMetadataUpdated(event: MetadataUpdated): void {
|
|||
|
||||
nftUpdate.timestamp = event.block.timestamp.toI32()
|
||||
nftUpdate.tx = event.transaction.hash.toHex()
|
||||
nftUpdate.eventIndex = event.logIndex.toI32()
|
||||
nftUpdate.block = event.block.number.toI32()
|
||||
|
||||
nftUpdate.save()
|
||||
|
@ -95,6 +97,7 @@ export function handleMetadataState(event: MetadataState): void {
|
|||
|
||||
nftUpdate.timestamp = event.block.timestamp.toI32()
|
||||
nftUpdate.tx = event.transaction.hash.toHex()
|
||||
nftUpdate.eventIndex = event.logIndex.toI32()
|
||||
nftUpdate.block = event.block.number.toI32()
|
||||
|
||||
nftUpdate.save()
|
||||
|
@ -118,6 +121,7 @@ export function handleTokenUriUpdate(event: TokenURIUpdate): void {
|
|||
nftUpdate.tokenUri = nft.tokenUri
|
||||
nftUpdate.timestamp = event.block.timestamp.toI32()
|
||||
nftUpdate.tx = event.transaction.hash.toHex()
|
||||
nftUpdate.eventIndex = event.logIndex.toI32()
|
||||
nftUpdate.block = event.block.number.toI32()
|
||||
nftUpdate.assetState = nft.assetState
|
||||
nftUpdate.save()
|
||||
|
@ -133,6 +137,7 @@ export function handleAddedManager(event: AddedManager): void {
|
|||
if (!existingRoles.includes(event.params.user.toHexString()))
|
||||
existingRoles.push(event.params.user.toHexString())
|
||||
nft.managerRole = existingRoles
|
||||
nft.eventIndex = event.logIndex.toI32()
|
||||
nft.save()
|
||||
}
|
||||
export function handleRemovedManager(event: RemovedManager): void {
|
||||
|
@ -148,6 +153,7 @@ export function handleRemovedManager(event: RemovedManager): void {
|
|||
if (role !== event.params.user.toHexString()) newList.push(role)
|
||||
}
|
||||
nft.managerRole = newList
|
||||
nft.eventIndex = event.logIndex.toI32()
|
||||
nft.save()
|
||||
}
|
||||
|
||||
|
@ -160,6 +166,7 @@ export function handleAddedTo725StoreList(event: AddedTo725StoreList): void {
|
|||
if (!existingRoles.includes(event.params.user.toHexString()))
|
||||
existingRoles.push(event.params.user.toHexString())
|
||||
nft.storeUpdateRole = existingRoles
|
||||
nft.eventIndex = event.logIndex.toI32()
|
||||
nft.save()
|
||||
}
|
||||
|
||||
|
@ -178,6 +185,7 @@ export function handleRemovedFrom725StoreList(
|
|||
if (role !== event.params.user.toHexString()) newList.push(role)
|
||||
}
|
||||
nft.storeUpdateRole = newList
|
||||
nft.eventIndex = event.logIndex.toI32()
|
||||
nft.save()
|
||||
}
|
||||
|
||||
|
@ -192,6 +200,7 @@ export function handleAddedToCreateERC20List(
|
|||
if (!existingRoles.includes(event.params.user.toHexString()))
|
||||
existingRoles.push(event.params.user.toHexString())
|
||||
nft.erc20DeployerRole = existingRoles
|
||||
nft.eventIndex = event.logIndex.toI32()
|
||||
nft.save()
|
||||
}
|
||||
|
||||
|
@ -210,6 +219,7 @@ export function handleRemovedFromCreateERC20List(
|
|||
if (role !== event.params.user.toHexString()) newList.push(role)
|
||||
}
|
||||
nft.erc20DeployerRole = newList
|
||||
nft.eventIndex = event.logIndex.toI32()
|
||||
nft.save()
|
||||
}
|
||||
|
||||
|
@ -222,6 +232,7 @@ export function handleAddedToMetadataList(event: AddedToMetadataList): void {
|
|||
if (!existingRoles.includes(event.params.user.toHexString()))
|
||||
existingRoles.push(event.params.user.toHexString())
|
||||
nft.metadataRole = existingRoles
|
||||
nft.eventIndex = event.logIndex.toI32()
|
||||
nft.save()
|
||||
}
|
||||
|
||||
|
@ -240,6 +251,7 @@ export function handleRemovedFromMetadataList(
|
|||
if (role !== event.params.user.toHexString()) newList.push(role)
|
||||
}
|
||||
nft.metadataRole = newList
|
||||
nft.eventIndex = event.logIndex.toI32()
|
||||
nft.save()
|
||||
}
|
||||
|
||||
|
@ -250,6 +262,7 @@ export function handleCleanedPermissions(event: CleanedPermissions): void {
|
|||
nft.erc20DeployerRole = newList
|
||||
nft.storeUpdateRole = newList
|
||||
nft.managerRole = newList
|
||||
nft.eventIndex = event.logIndex.toI32()
|
||||
nft.save()
|
||||
}
|
||||
|
||||
|
@ -269,6 +282,7 @@ export function handleNftTransferred(event: Transfer): void {
|
|||
newTransfer.nft = nft.id
|
||||
newTransfer.newOwner = newOwner.id
|
||||
newTransfer.txId = event.transaction.hash.toHex()
|
||||
newTransfer.eventIndex = event.logIndex.toI32()
|
||||
newTransfer.timestamp = event.block.timestamp.toI32()
|
||||
newTransfer.block = event.block.number.toI32()
|
||||
newTransfer.save()
|
||||
|
|
|
@ -216,7 +216,7 @@ describe('NFT tests', async () => {
|
|||
)
|
||||
|
||||
// graph tests here
|
||||
await sleep(2000)
|
||||
await sleep(3000)
|
||||
const query = {
|
||||
query: `query {
|
||||
nft(id:"${nftAddress}"){
|
||||
|
@ -237,6 +237,7 @@ describe('NFT tests', async () => {
|
|||
transferable,
|
||||
createdTimestamp,
|
||||
tx,
|
||||
eventIndex,
|
||||
block,
|
||||
orderCount}}`
|
||||
}
|
||||
|
@ -244,6 +245,7 @@ describe('NFT tests', async () => {
|
|||
method: 'POST',
|
||||
body: JSON.stringify(query)
|
||||
})
|
||||
await sleep(3000)
|
||||
const updatedNft = (await response.json()).data.nft
|
||||
const tx: TransactionReceipt = await web3.eth.getTransactionReceipt(
|
||||
updatedNft.tx
|
||||
|
@ -289,6 +291,10 @@ describe('NFT tests', async () => {
|
|||
assert(updatedNft.block >= blockNumber, 'incorrect value for: block')
|
||||
assert(updatedNft.block < blockNumber + 50, 'incorrect value for: block')
|
||||
assert(updatedNft.orderCount === '0', 'incorrect value for: orderCount')
|
||||
assert(
|
||||
updatedNft.eventIndex !== null && updatedNft.eventIndex > 0,
|
||||
'Invalid eventIndex for NFT update'
|
||||
)
|
||||
})
|
||||
|
||||
it('Set a key/value in erc725 store', async () => {
|
||||
|
@ -302,6 +308,7 @@ describe('NFT tests', async () => {
|
|||
key
|
||||
value
|
||||
}
|
||||
eventIndex
|
||||
}
|
||||
}`
|
||||
}
|
||||
|
@ -311,5 +318,9 @@ describe('NFT tests', async () => {
|
|||
})
|
||||
const updatedNft = (await response.json()).data.nft
|
||||
assert(updatedNft.nftData.key !== null, 'incorrect value for key')
|
||||
assert(
|
||||
updatedNft.eventIndex !== null && updatedNft.eventIndex > 0,
|
||||
'Invalid eventIndex for NFT update'
|
||||
)
|
||||
})
|
||||
})
|
||||
|
|
Loading…
Reference in New Issue