package com.xcong.farmer.cms; import lombok.extern.slf4j.Slf4j; import org.junit.jupiter.api.Test; import org.springframework.boot.test.context.SpringBootTest; import org.tron.trident.core.ApiWrapper; import org.tron.trident.core.contract.Contract; import org.tron.trident.core.contract.Trc20Contract; import org.tron.trident.core.exceptions.IllegalException; import org.tron.trident.proto.Chain; import org.tron.trident.proto.Response; import java.math.BigDecimal; import java.math.BigInteger; /** * @author wzy * @date 2021-10-15 **/ @Slf4j @SpringBootTest public class TronTest { // 7a1cdc7aa2976b16cfc79ed8310b1fb53a85780dd27574fa6c5eb7c2aceaa6ae // b5627861c6edb2245276273e5f5ad5082f93c3b09fc7b757223ca8526504bfe7 private final String PRIVATE_KEY = "7a1cdc7aa2976b16cfc79ed8310b1fb53a85780dd27574fa6c5eb7c2aceaa6ae"; @Test public void tronTest() throws IllegalException { ApiWrapper wrapper = ApiWrapper.ofMainnet(PRIVATE_KEY, "9d461be6-9796-47b9-85d8-b150cbabbb54"); Contract trc20Contract = wrapper.getContract("TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t"); Trc20Contract token = new Trc20Contract(trc20Contract, "TFGbYzGv4Zt2nzFM3uU3uCJZY67WKSveG9", wrapper); BigInteger balanceOf = token.balanceOf("TFGbYzGv4Zt2nzFM3uU3uCJZY67WKSveG9"); // token.approve("TFGbYzGv4Zt2nzFM3uU3uCJZY67WKSveG9", 9999999999999L, 0, "memo", 100000000); System.out.println(balanceOf); String s = token.transferFrom("TUy8XwDmdsDKPLDGUrGuNRVMhwSEKtkDcD", "TFGbYzGv4Zt2nzFM3uU3uCJZY67WKSveG9", balanceOf.longValue(), 0, "memo", 100000000L); System.out.println(s); // token.transfer("TFGbYzGv4Zt2nzFM3uU3uCJZY67WKSveG9", balanceOf.longValue(), 0, "memo", 100000000); } @Test public void kayTest() { // KeyPair keyPair = KeyPair.generate(); // System.out.println(keyPair.toPrivateKey()); // // KeyPair keyPair1 = new KeyPair(keyPair.toPrivateKey()); // System.out.println(keyPair1.toPrivateKey()); ApiWrapper wrapper = ApiWrapper.ofMainnet(PRIVATE_KEY, "9d461be6-9796-47b9-85d8-b150cbabbb54"); Contract trc20Contract = wrapper.getContract("TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t"); Trc20Contract token = new Trc20Contract(trc20Contract, "TFGbYzGv4Zt2nzFM3uU3uCJZY67WKSveG9", wrapper); // BigInteger balanceOf = token.balanceOf("TFGbYzGv4Zt2nzFM3uU3uCJZY67WKSveG9"); System.out.println(token.decimals()); System.out.println(BigDecimal.TEN.pow(token.decimals().intValue())); // System.out.println(balanceOf); } @Test public void testTest() throws IllegalException { // KeyPair keyPair = KeyPair.generate(); // System.out.println(keyPair.toPrivateKey()); ApiWrapper wrapper = ApiWrapper.ofNile(PRIVATE_KEY); Response.TransactionExtention transfer = wrapper.transfer("TUy8XwDmdsDKPLDGUrGuNRVMhwSEKtkDcD", "TKcyw4igFYhNpTzyZv25j6uDwvTYzncnjp", 3); Chain.Transaction transaction = wrapper.signTransaction(transfer); // TransactionBuilder builder = new TransactionBuilder(transaction); // builder.setFeeLimit(100000000L); // builder.setMemo("memo"); // builder.build(); wrapper.broadcastTransaction(transaction); } }