UNPKG

@ingocollatz/sdk-tests

Version:
153 lines 6.54 kB
"use strict"; // import { CirclesSdkWeb3Factory } from "@ingocollatz/sdk-web3-adapter"; // import Web3 from "web3"; // import { SafeFactory } from "@safe-global/protocol-kit"; // import { Web3Adapter } from "@safe-global/protocol-kit"; // import { Account } from "web3-core"; // import Safe from "@safe-global/protocol-kit/dist/src/Safe"; // import { describe } from "node:test"; // import { CirclesSdk } from "@ingocollatz/sdk"; // import HDWalletProvider from "@truffle/hdwallet-provider"; // import { GnosisSafe } from "./GnosisSafe"; // import { ProxyFactory } from "./ProxyFactory"; // import { AbiItem } from 'web3-utils'; // import { CompatibilityFallbackHandler } from "./CompatibilityFallbackHandler"; // const ZERO_ADDRESS = "0x0000000000000000000000000000000000000000"; // // const config = { // // "hubContract": "0x5528544b97869ce105be00fccf250f659e787034", // // "proxyFactoryContract": "0xd5e7d393226a6e9089601080e4b92bcaf536bada", // // "masterSafeContract": "0x5e484da6227ab3ba047121742ee766cc6389db4f", // // "defaultOwnerAccount": { // // "address": "0x85a88313b37676ef7F846E00287090E75931E44B", // // "privateKey": "0x5bc6328efff9fc724aad89edf1356a6ba7bee56368b4b9b47b1f29a5cd6d73c7" // // }, // // "multiSendContract": "0x0605ac8ff5952393ec94ef4a03c2e17af0939bbb", // // "safeProxyContract": "0x8b124d5d9c30ba89c079116c030b54c7ff300d0c", // // "compatibilityFallbackHandlerContract": "0xd165c5951d08e64c8741d8c48320fb383fb42370", // // "multiSendCallOnlyContract": "0x8d4f7c464e07f2b2284cc51e6442ec88af4d52c8", // // "migrationsContract": { // // "chain": {}, // // "await": {}, // // "started": true // // }, // // "rootSafeContract": "0x01ae162ec19d914f8454ed88a17d73c27643a204", // // "operatorOrgaSafeContract": "0x67a303aebbb61e4cf71660613e3a598aeb422f7f", // // "invitationFundsSafeContract": "0xdad511a686704f1efccb6bb08088619a7b0e5602", // // "otherSafes": [ // // "0x6d752db5a6a0f3afa0dbb11e721bdc3995bfb410", // // "0x2b86d1c067df6aaade04092b8923ef3949041983", // // "0xb41c94271843388972c3efa342f834a26d2cbfe0", // // "0x49e9b3bb7263333a8897181849561cf2bbdb4c3c", // // "0x8eb6bcaeb19c37a6a110ecc67991020e02894c47", // // "0xe8f6616ab46c2d5172dcca8bc219a951b9a4bc40", // // "0xeffaa7be240cb3ddf304c403fa430f585dd8fcc2", // // "0x4b44483dae3f4514cb26af2996b3445db79859c7", // // "0x6eb9fdf4689c81879c28e6c5e4eecceddf68ed78", // // "0x963ce23b14c3d2a3f6c9efec3bd6fbba7d88c15c", // // "0xc4eea7362fc077e77ac898981fc3e0dff681dced", // // "0x759d5347e5eb8dc2848792edc3b770339ccdf4af", // // "0x928bd0158d3867a2cf5c9ca8101ceacee25a2d3f", // // "0x2dc7c6980bc1142f0210e0ffc20775acafd38a1b", // // "0xbf3454035dbf7a84355de1d5eb79770659755a8c", // // "0x8285aa960086cc5674d780db5e3f362c394d1105" // // ], // // "network": { // // "host": "ganache", // // "port": 8545, // // "network_id": "*" // // }, // // "otherOrgaSafes": [ // // "0xc0c84de71d4d2ce9a4968052a78631f6e5a16ada", // // "0x523a15096813f822ad86675f2b31743303122200", // // "0x88fb5fbd2617e0948d8b9d4f70d5abcebe97be37", // // "0x9802d6cb723e233ffca854f9ae0e4d4d99cdbba8" // // ] // // } // const rpcEndpoint = `https://rpc.circlesubi.id`; // let web3: Web3; // let signerAccount: Account; // let web3EthAdapter: Web3Adapter; // describe("Circles SDK", () => { // beforeAll(async () => { // // init web3 // web3 = new Web3(); // let account = web3.eth.accounts.privateKeyToAccount(config.defaultOwnerAccount.privateKey); // // Create an HDWalletProvider using the mnemonic and the RPC endpoint // const provider = new HDWalletProvider({ // privateKeys: [account.privateKey.slice(2)], // providerOrUrl: rpcEndpoint, // }); // // Set the provider for web3 // web3.setProvider(<any>provider); // // // Get the signer account // // signerAccount = web3.eth.accounts.privateKeyToAccount( // // account.privateKey // // ); // // Init safe sdk and deploy safe // web3EthAdapter = new Web3Adapter({ // web3, // signerAddress: provider.getAddress(), // }); // provider.engine.stop(); // }); // describe("with safe", async () => { // let safeAddress: string; // let safe: Safe; // beforeAll(async () => { // let chainId = await web3EthAdapter.getChainId(); // const safeFactory = await SafeFactory.create({ // ethAdapter: web3EthAdapter, // contractNetworks: { // [chainId]: { // safeMasterCopyAddress: config.masterSafeContract, // safeProxyFactoryAddress: config.proxyFactoryContract, // multiSendAddress: config.multiSendContract, // multiSendCallOnlyAddress: config.multiSendCallOnlyContract, // fallbackHandlerAddress: config.compatibilityFallbackHandlerContract, // signMessageLibAddress: ZERO_ADDRESS, // createCallAddress: ZERO_ADDRESS, // simulateTxAccessorAddress: ZERO_ADDRESS, // safeMasterCopyAbi: <AbiItem[]>GnosisSafe.abi, // safeProxyFactoryAbi: <AbiItem[]>ProxyFactory.abi, // fallbackHandlerAbi: <AbiItem[]>CompatibilityFallbackHandler.abi // } // } // }); // safe = await safeFactory.deploySafe({ // safeAccountConfig: { // owners: [signerAccount.address], // threshold: 1, // }, // }); // safeAddress = await safe.getAddress(); // }); // let sdkInstance: CirclesSdk; // test("create sdk instance from existing safe", async () => { // console.log("safeAddress: ", safeAddress) // // Init sdk // sdkInstance = await CirclesSdkWeb3Factory.withExistingSafe( // web3, // signerAccount.address, // safeAddress // ); // expect(sdkInstance).toBeDefined(); // }); // describe("with sdk", async () => { // test("signupPerson", async () => { // await sdkInstance.signupPerson(); // }); // // test("getSafeBalance", async () => { // // const balance = await sdkInstance.getSafeBalance(); // // expect(balance).toEqual("0"); // // }); // test("transferUbi", async () => { // const paymentPath = await sdkInstance.transferUbi( // safeAddress, // signerAccount.address, // "1000000000000000000" // ); // }); // }); // }); // }); //# sourceMappingURL=sdk-teststest.js.map