From f46a9eb7430482179e04236aa82133b3792e52ca Mon Sep 17 00:00:00 2001 From: Mike Date: Thu, 27 Jul 2023 12:30:11 -0400 Subject: [PATCH] remove screeningStageVotingPower; rename fundingStage votingPower attributes --- schema.graphql | 5 ++--- src/grant-fund.ts | 29 ++++------------------------- src/utils/grants/voter.ts | 5 ++--- tests/grant-fund.test.ts | 30 ++++++++++++++++++------------ 4 files changed, 26 insertions(+), 43 deletions(-) diff --git a/schema.graphql b/schema.graphql index 1cf9225..b7fa6df 100644 --- a/schema.graphql +++ b/schema.graphql @@ -828,9 +828,8 @@ type DistributionPeriodVote @entity { id: Bytes! # $accountId + '|'' + $distributionId voter: Account! distribution: DistributionPeriod! # uint256 - screeningStageVotingPower: BigDecimal! # uint256 - initialFundingStageVotingPower: BigDecimal! # uint256 - remainingFundingStageVotingPower: BigDecimal! # uint256 + estimatedInitialFundingStageVotingPowerForCalculatingRewards: BigDecimal! # uint256 + estimatedRemainingFundingStageVotingPowerForCalculatingRewards: BigDecimal! # uint256 screeningVotes: [ScreeningVote!]! # ScreeningVote[] fundingVotes: [FundingVote!]! # FundingVote[] } diff --git a/src/grant-fund.ts b/src/grant-fund.ts index 4106dd1..e1fb791 100644 --- a/src/grant-fund.ts +++ b/src/grant-fund.ts @@ -261,22 +261,6 @@ export function handleDistributionPeriodStarted( distributionPeriod.startBlock = distributionStarted.startBlock distributionPeriod.endBlock = distributionStarted.endBlock - // loop through DistributionPeriodVotes of the previous period, create new entities, and set their screening stage voting power - if (event.params.distributionId != ONE_BI) { - const prevDistributionPeriod = loadOrCreateDistributionPeriod(distributionId) - const votes = prevDistributionPeriod.votes - for (var i=0; i=0.5.0) // https://thegraph.com/docs/en/developer/matchstick/#tests-structure-0-5-0 @@ -395,20 +395,23 @@ describe("Grant Fund assertions", () => { assert.entityCount("ScreeningVote", 1); const distributionPeriodVoteId = getDistributionPeriodVoteId(bigIntToBytes(distributionId), addressToBytes(voter)); + const screeningVoteId = getScreeningVoteId(bigIntToBytes(proposalId), addressToBytes(voter), BigInt.fromI32(1)); assert.fieldEquals( "DistributionPeriodVote", `${distributionPeriodVoteId.toHexString()}`, - "screeningStageVotingPower", - `${wadToDecimal(votesCast)}` + "distribution", + `${bigIntToBytes(distributionId).toHexString()}` ); - }); - - test("getFundingVotingPowerUsed", () => { + assert.fieldEquals( + "ScreeningVote", + `${screeningVoteId.toHexString()}`, + "votesCast", + `${wadToDecimal(votesCast)}` + ); }); - test("FundingVote", () => { /***********************/ /*** Submit Proposal ***/ @@ -511,6 +514,7 @@ describe("Grant Fund assertions", () => { const distributionPeriodVoteId = getDistributionPeriodVoteId(bigIntToBytes(distributionId), addressToBytes(voter)); const fundingVoteId = getFundingVoteId(bigIntToBytes(proposalId), addressToBytes(voter), BigInt.fromI32(2)); + const screeningVoteId = getScreeningVoteId(bigIntToBytes(proposalId), addressToBytes(voter), BigInt.fromI32(1)); const expectedDistributionId = bigIntToBytes(distributionId).toHexString(); const expectedVotingPowerUsed = wadToDecimal(votesCast.times(votesCast)); @@ -521,24 +525,26 @@ describe("Grant Fund assertions", () => { `${expectedDistributionId}` ); + // access ScreeningVote entity and attributes assert.fieldEquals( - "DistributionPeriodVote", - `${distributionPeriodVoteId.toHexString()}`, - "screeningStageVotingPower", + "ScreeningVote", + `${screeningVoteId.toHexString()}`, + "votesCast", `${wadToDecimal(votesCast.times(BigInt.fromI32(-1)))}` ); + // check DistributionPeriodVote attributes assert.fieldEquals( "DistributionPeriodVote", `${distributionPeriodVoteId.toHexString()}`, - "initialFundingStageVotingPower", + "estimatedInitialFundingStageVotingPowerForCalculatingRewards", `${expectedVotingPowerUsed}` ); assert.fieldEquals( "DistributionPeriodVote", `${distributionPeriodVoteId.toHexString()}`, - "remainingFundingStageVotingPower", + "estimatedRemainingFundingStageVotingPowerForCalculatingRewards", `${0}` );