fix claim contribution test
This commit is contained in:
parent
1305a29966
commit
268353287a
@ -10,14 +10,56 @@ const Token = artifacts.require("Token.sol");
|
||||
// eslint-disable-next-line no-undef
|
||||
const getContract = name => artifacts.require(name);
|
||||
const { assertRevert } = require('@aragon/test-helpers/assertThrow');
|
||||
// eslint-disable-next-line no-undef
|
||||
//const { timeTravel } = require('@aragon/test-helpers/timeTravel')(web3);
|
||||
|
||||
const ZERO_ADDR = '0x0000000000000000000000000000000000000000';
|
||||
|
||||
const timeTravel = function(time){
|
||||
return new Promise((resolve, reject) => {
|
||||
web3.currentProvider.sendAsync({
|
||||
jsonrpc: "2.0",
|
||||
method: "evm_increaseTime",
|
||||
params: [time], //86400 is num seconds in day
|
||||
id: new Date().getSeconds(),
|
||||
}, (err, result) => {
|
||||
if(err) {
|
||||
return reject(err);
|
||||
}
|
||||
return resolve(result);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
const mineBlock = function() {
|
||||
return new Promise((resolve, reject) => {
|
||||
web3.currentProvider.sendAsync({
|
||||
jsonrpc: "2.0",
|
||||
method: "evm_mine",
|
||||
params: [],
|
||||
id: new Date().getSeconds(),
|
||||
}, (err, result) => {
|
||||
if(err){ return reject(err); }
|
||||
return resolve(result);
|
||||
});
|
||||
})
|
||||
}
|
||||
|
||||
const getBlockNumber = function() {
|
||||
return new Promise((resolve, reject) => {
|
||||
web3.eth.getBlockNumber(async (err, res) => {
|
||||
if (err || !res) return reject(err);
|
||||
resolve(res);
|
||||
});
|
||||
});
|
||||
};
|
||||
|
||||
contract('Contribution app', (accounts) => {
|
||||
let kernelBase, aclBase, daoFactory, r, dao, acl, contribution, token, contributor;
|
||||
|
||||
const root = accounts[0];
|
||||
const member1 = accounts[1];
|
||||
const blocksToWait = 40320;
|
||||
|
||||
// eslint-disable-next-line no-undef
|
||||
before(async () => {
|
||||
@ -163,7 +205,7 @@ contract('Contribution app', (accounts) => {
|
||||
});
|
||||
});
|
||||
|
||||
it("add contribution", async () => {
|
||||
it("should add contribution", async () => {
|
||||
let contributionCountBefore = await contribution.contributionsCount();
|
||||
await contribution.add(amount, contributorId, hashDigest, hashFunction, hashSize, {from: root});
|
||||
let contributionCountAfter = await contribution.contributionsCount();
|
||||
@ -196,30 +238,6 @@ contract('Contribution app', (accounts) => {
|
||||
});
|
||||
});
|
||||
|
||||
it("should revert when claim contribution that does not exist", async () => {
|
||||
let contributionId = await contribution.contributionsCount();
|
||||
return assertRevert(async () => {
|
||||
await contribution.claim(contributionId.toNumber()+1, {from: root});
|
||||
'contribution not found';
|
||||
});
|
||||
});
|
||||
|
||||
it("claim contribution", async () => {
|
||||
let contributionId = await contribution.contributionsCount();
|
||||
await contribution.claim(contributionId);
|
||||
let contributionObject = await contribution.getContribution(contributionId.toNumber());
|
||||
// eslint-disable-next-line no-undef
|
||||
assert(contributionObject[3], true);
|
||||
});
|
||||
|
||||
it("should revert when claim already claimed contribution", async () => {
|
||||
let contributionId = await contribution.contributionsCount();
|
||||
return assertRevert(async () => {
|
||||
await contribution.claim(contributionId.toNumber(), {from: root});
|
||||
'contribution already claimed';
|
||||
});
|
||||
});
|
||||
|
||||
it("should revert when veto already claimed contribution", async () => {
|
||||
let contributionId = await contribution.contributionsCount();
|
||||
return assertRevert(async () => {
|
||||
@ -228,4 +246,49 @@ contract('Contribution app', (accounts) => {
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
describe("Claim contribution", async () => {
|
||||
it("should revert when claim contribution that does not exist", async () => {
|
||||
let contributionId = await contribution.contributionsCount();
|
||||
return assertRevert(async () => {
|
||||
await contribution.claim(contributionId.toNumber()+1, {from: root});
|
||||
'contribution not found';
|
||||
});
|
||||
});
|
||||
|
||||
it("should revert when claim contribution before confirmation block", async () => {
|
||||
let contributionId = await contribution.contributionsCount();
|
||||
return assertRevert(async () => {
|
||||
await contribution.claim(contributionId.toNumber(), {from: root});
|
||||
'contribution not confirmed yet';
|
||||
});
|
||||
});
|
||||
|
||||
it("claim contribution", async () => {
|
||||
let contributionId = await contribution.contributionsCount();
|
||||
|
||||
if(contributionId < 10) {
|
||||
await timeTravel(100);
|
||||
}
|
||||
else {
|
||||
await timeTravel(blocksToWait);
|
||||
}
|
||||
await mineBlock();
|
||||
|
||||
await contribution.claim(contributionId);
|
||||
let contributionObject = await contribution.getContribution(contributionId.toNumber());
|
||||
// eslint-disable-next-line no-undef
|
||||
assert(contributionObject[3], true);
|
||||
});
|
||||
});
|
||||
|
||||
describe("Veto claimed contribution", async () => {
|
||||
it("should revert when claim already claimed contribution", async () => {
|
||||
let contributionId = await contribution.contributionsCount();
|
||||
return assertRevert(async () => {
|
||||
await contribution.claim(contributionId.toNumber(), {from: root});
|
||||
'contribution already claimed';
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
|
Loading…
x
Reference in New Issue
Block a user