Skip to content

Commit

Permalink
Merge pull request #162 from cryptexfinance/cip-27
Browse files Browse the repository at this point in the history
added cip-27 script
  • Loading branch information
voith authored Mar 26, 2024
2 parents 5354871 + ef71852 commit e23a521
Showing 1 changed file with 70 additions and 0 deletions.
70 changes: 70 additions & 0 deletions scripts/CIP-27.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
// run with
// npx hardhat run ./scripts/CIP-27.ts --network hardhat
import hre, { deployments, network, hardhatArguments } from "hardhat";
import {
castVote,
createProposal,
executeProposal,
fundMultisign,
queueProposal,
} from "./utils";
import { BigNumber } from "ethers";

async function main() {
const ethers = hre.ethers;
let multisig = "0xa70b638B70154EdfCbb8DbbBd04900F328F32c35";
let ctxAmount = ethers.utils.parseEther("91000");
let ctx = await deployments.get("Ctx");
let ctxContract = await ethers.getContractAt("Ctx", ctx.address);

const abi = new ethers.utils.AbiCoder();
const targets = [ctx.address];
const values = [BigNumber.from(0)];
const signatures = ["transfer(address,uint256)"];
const calldatas = [
abi.encode(["address", "uint256"], [multisig, ctxAmount]),
];
const description =
"CIP-27: 2024 Operating Expenditures Treasury Transfers for Q2";
console.log(targets);
console.log(values.toString());
console.log(signatures);
console.log(calldatas);
console.log(description);

let ctxbalance = await ctxContract.balanceOf(multisig);
console.log("multisig old CTX balance", ethers.utils.formatEther(ctxbalance));

if (hardhatArguments.network === "hardhat") {
//Fund Multisign with ETH
await fundMultisign("10000000000000000000");

// Create Proposal
await createProposal(targets, values, signatures, calldatas, description);

// Vote
await castVote(17, true);

// Wait to queue
await queueProposal(17);

// Execute transaction
await executeProposal(17);

// Validate Results
console.log("==================Check Results==================");

ctxbalance = await ctxContract.balanceOf(multisig);
console.log(
"multisig new CTX balance",
ethers.utils.formatEther(ctxbalance)
);
}
}

main()
.then(() => process.exit(0))
.catch((error) => {
console.error(error);
process.exit(1);
});

0 comments on commit e23a521

Please sign in to comment.