UNPKG

electusvoting

Version:

Standard implementation and interface for Voting

52 lines (50 loc) 2.19 kB
var TokenProportionalCappedTest = artifacts.require("./TokenProportionalCappedTest.sol"); var ElectusProtocol = artifacts.require("./Protocol.sol"); var TestToken = artifacts.require("./FreezableTestToken.sol"); contract("Token Proportional Capped Test", function(accounts) { let protocol1Contract; let protocol2Contract; let protocol3Contract; let pollContract; let token; beforeEach("setup", async () => { protocol1Contract = await ElectusProtocol.new("0x57616e636861696e", "0x57414e"); await protocol1Contract.addAttributeSet(web3.utils.fromAscii("hair"), [web3.utils.fromAscii("black")]); await protocol1Contract.assignTo(accounts[1], [0], { from: accounts[0] }); protocol2Contract = await ElectusProtocol.new("0x55532026204368696e61", "0x5543"); await protocol2Contract.addAttributeSet(web3.utils.fromAscii("hair"), [web3.utils.fromAscii("black")]); await protocol2Contract.assignTo(accounts[2], [0], { from: accounts[0] }); protocol3Contract = await ElectusProtocol.new("0x55532026204368696e61", "0x5543"); await protocol3Contract.addAttributeSet(web3.utils.fromAscii("hair"), [web3.utils.fromAscii("black")]); await protocol3Contract.assignTo(accounts[2], [0], { from: accounts[0] }); token = await TestToken.new(); await token.transfer(accounts[2], 50); await token.approve(accounts[2], 50); await token.transferFrom(accounts[0], accounts[1], 50, { from: accounts[2] }); var presentTime = (await web3.eth.getBlock(await web3.eth.getBlockNumber())).timestamp; const startTime = presentTime + 1000; pollContract = await TokenProportionalCappedTest.new( [protocol1Contract.address, protocol2Contract.address, protocol3Contract.address], ["0x68656c6c6f"], token.address, 100, "0x57616e636861696e", "0x41646d696e20456c656374696f6e20466f722032303138", "0x4f6e6520506572736f6e204f6e6520566f7465", startTime, "0" ); }); it("gets total member count", async () => { const totalSupply = await pollContract.getVoterBaseDenominator(); assert.equal(web3.utils.toDecimal(totalSupply), 10000000); }); });