mirror of
https://github.com/Qortal/qortal.git
synced 2025-07-23 04:36:50 +00:00
Interim commit - refactored transaction transformers and fixed unit test compiler errors
This commit is contained in:
@@ -5,6 +5,7 @@ import org.qora.asset.Asset;
|
||||
import org.qora.data.at.ATStateData;
|
||||
import org.qora.data.block.BlockData;
|
||||
import org.qora.data.block.BlockTransactionData;
|
||||
import org.qora.data.transaction.BaseTransactionData;
|
||||
import org.qora.data.transaction.DeployAtTransactionData;
|
||||
import org.qora.group.Group;
|
||||
import org.qora.repository.DataException;
|
||||
@@ -48,8 +49,8 @@ public class ATTests extends Common {
|
||||
byte[] reference = Base58.decode("2D3jX1pEgu6irsQ7QzJb85QP1D9M45dNyP5M9a3WFHndU5ZywF4F5pnUurcbzMnGMcTwpAY6H7DuLw8cUBU66ao1");
|
||||
byte[] signature = Base58.decode("2dZ4megUyNoYYY7qWmuSd4xw1yUKgPPF97yBbeddh8aKuC8PLpz7Xvf3r6Zjv1zwGrR8fEAHuaztCPD4KQp76KdL");
|
||||
|
||||
DeployAtTransactionData transactionData = new DeployAtTransactionData(timestamp, Group.NO_GROUP, reference, creatorPublicKey, name, description, ATType,
|
||||
tags, creationBytes, amount, Asset.QORA, fee, signature);
|
||||
BaseTransactionData baseTransactionData = new BaseTransactionData(timestamp, Group.NO_GROUP, reference, creatorPublicKey, fee, signature);
|
||||
DeployAtTransactionData transactionData = new DeployAtTransactionData(baseTransactionData, name, description, ATType, tags, creationBytes, amount, Asset.QORA);
|
||||
|
||||
try (final Repository repository = RepositoryManager.getRepository()) {
|
||||
repository.getTransactionRepository().save(transactionData);
|
||||
|
@@ -4,6 +4,7 @@ import org.junit.Test;
|
||||
import org.qora.account.PrivateKeyAccount;
|
||||
import org.qora.block.BlockChain;
|
||||
import org.qora.block.BlockGenerator;
|
||||
import org.qora.data.transaction.BaseTransactionData;
|
||||
import org.qora.data.transaction.CreateGroupTransactionData;
|
||||
import org.qora.data.transaction.PaymentTransactionData;
|
||||
import org.qora.data.transaction.TransactionData;
|
||||
@@ -50,7 +51,8 @@ public class GroupApprovalTests extends Common {
|
||||
BigDecimal amount = BigDecimal.ONE.setScale(8);
|
||||
BigDecimal fee = BigDecimal.ONE.setScale(8);
|
||||
|
||||
return new PaymentTransactionData(timestamp, txGroupId, reference, senderPublicKey, recipient, amount, fee);
|
||||
BaseTransactionData baseTransactionData = new BaseTransactionData(timestamp, txGroupId, reference, senderPublicKey, fee, null);
|
||||
return new PaymentTransactionData(baseTransactionData, recipient, amount);
|
||||
}
|
||||
|
||||
private int createGroup(Repository repository) throws DataException {
|
||||
@@ -67,8 +69,9 @@ public class GroupApprovalTests extends Common {
|
||||
int maximumBlockDelay = 1440;
|
||||
BigDecimal fee = BigDecimal.ONE.setScale(8);
|
||||
|
||||
TransactionData transactionData = new CreateGroupTransactionData(timestamp, txGroupId, reference, creatorPublicKey, owner, groupName, description,
|
||||
isOpen, approvalThreshold, minimumBlockDelay, maximumBlockDelay, fee);
|
||||
BaseTransactionData baseTransactionData = new BaseTransactionData(timestamp, txGroupId, reference, creatorPublicKey, fee, null);
|
||||
TransactionData transactionData = new CreateGroupTransactionData(baseTransactionData, owner, groupName, description,
|
||||
isOpen, approvalThreshold, minimumBlockDelay, maximumBlockDelay);
|
||||
Transaction transaction = new CreateGroupTransaction(repository, transactionData);
|
||||
|
||||
// Sign transaction
|
||||
|
@@ -1,36 +0,0 @@
|
||||
package org.qora.test;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.Instant;
|
||||
|
||||
import org.junit.Test;
|
||||
import org.qora.account.PublicKeyAccount;
|
||||
import org.qora.data.transaction.PaymentTransactionData;
|
||||
import org.qora.group.Group;
|
||||
import org.qora.repository.DataException;
|
||||
import org.qora.repository.Repository;
|
||||
import org.qora.repository.RepositoryManager;
|
||||
import org.qora.test.common.Common;
|
||||
import org.qora.utils.Base58;
|
||||
|
||||
public class SaveTests extends Common {
|
||||
|
||||
@Test
|
||||
public void testSavePaymentTransaction() throws DataException {
|
||||
try (final Repository repository = RepositoryManager.getRepository()) {
|
||||
String reference58 = "rrrr";
|
||||
byte[] reference = Base58.decode(reference58);
|
||||
String signature58 = "ssss";
|
||||
byte[] signature = Base58.decode(signature58);
|
||||
PublicKeyAccount sender = new PublicKeyAccount(repository, "Qsender".getBytes());
|
||||
|
||||
PaymentTransactionData paymentTransactionData = new PaymentTransactionData(Instant.now().getEpochSecond(), Group.NO_GROUP, reference,
|
||||
sender.getPublicKey(), "Qrecipient", BigDecimal.valueOf(12345L), BigDecimal.ONE, signature);
|
||||
|
||||
repository.getTransactionRepository().save(paymentTransactionData);
|
||||
|
||||
repository.discardChanges();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
@@ -16,6 +16,7 @@ import org.qora.data.asset.OrderData;
|
||||
import org.qora.data.asset.TradeData;
|
||||
import org.qora.data.block.BlockData;
|
||||
import org.qora.data.naming.NameData;
|
||||
import org.qora.data.transaction.BaseTransactionData;
|
||||
import org.qora.data.transaction.BuyNameTransactionData;
|
||||
import org.qora.data.transaction.CancelAssetOrderTransactionData;
|
||||
import org.qora.data.transaction.CancelSellNameTransactionData;
|
||||
@@ -130,8 +131,9 @@ public class TransactionTests extends Common {
|
||||
BigDecimal amount = genericPaymentAmount;
|
||||
BigDecimal fee = BigDecimal.ONE;
|
||||
long timestamp = parentBlockData.getTimestamp() + 1_000;
|
||||
PaymentTransactionData paymentTransactionData = new PaymentTransactionData(timestamp, Group.NO_GROUP, reference, sender.getPublicKey(), recipient,
|
||||
amount, fee);
|
||||
|
||||
BaseTransactionData baseTransactionData = new BaseTransactionData(timestamp, Group.NO_GROUP, reference, sender.getPublicKey(), fee, null);
|
||||
PaymentTransactionData paymentTransactionData = new PaymentTransactionData(baseTransactionData, recipient, amount);
|
||||
|
||||
Transaction paymentTransaction = new PaymentTransaction(repository, paymentTransactionData);
|
||||
paymentTransaction.sign(sender);
|
||||
@@ -148,8 +150,9 @@ public class TransactionTests extends Common {
|
||||
BigDecimal amount = BigDecimal.valueOf(1_000L);
|
||||
BigDecimal fee = BigDecimal.ONE;
|
||||
long timestamp = parentBlockData.getTimestamp() + 1_000;
|
||||
PaymentTransactionData paymentTransactionData = new PaymentTransactionData(timestamp, Group.NO_GROUP, reference, sender.getPublicKey(),
|
||||
recipient.getAddress(), amount, fee);
|
||||
|
||||
BaseTransactionData baseTransactionData = new BaseTransactionData(timestamp, Group.NO_GROUP, reference, sender.getPublicKey(), fee, null);
|
||||
PaymentTransactionData paymentTransactionData = new PaymentTransactionData(baseTransactionData, recipient.getAddress(), amount);
|
||||
|
||||
Transaction paymentTransaction = new PaymentTransaction(repository, paymentTransactionData);
|
||||
paymentTransaction.sign(sender);
|
||||
@@ -207,8 +210,9 @@ public class TransactionTests extends Common {
|
||||
|
||||
BigDecimal fee = BigDecimal.ONE;
|
||||
long timestamp = parentBlockData.getTimestamp() + 1_000;
|
||||
RegisterNameTransactionData registerNameTransactionData = new RegisterNameTransactionData(timestamp, Group.NO_GROUP, reference, sender.getPublicKey(),
|
||||
sender.getAddress(), name, data, fee);
|
||||
|
||||
BaseTransactionData baseTransactionData = new BaseTransactionData(timestamp, Group.NO_GROUP, reference, sender.getPublicKey(), fee, null);
|
||||
RegisterNameTransactionData registerNameTransactionData = new RegisterNameTransactionData(baseTransactionData, sender.getAddress(), name, data);
|
||||
|
||||
Transaction registerNameTransaction = new RegisterNameTransaction(repository, registerNameTransactionData);
|
||||
registerNameTransaction.sign(sender);
|
||||
@@ -260,8 +264,9 @@ public class TransactionTests extends Common {
|
||||
|
||||
BigDecimal fee = BigDecimal.ONE;
|
||||
long timestamp = parentBlockData.getTimestamp() + 1_000;
|
||||
UpdateNameTransactionData updateNameTransactionData = new UpdateNameTransactionData(timestamp, Group.NO_GROUP, reference, sender.getPublicKey(),
|
||||
newOwner.getAddress(), name, newData, fee);
|
||||
|
||||
BaseTransactionData baseTransactionData = new BaseTransactionData(timestamp, Group.NO_GROUP, reference, sender.getPublicKey(), fee, null);
|
||||
UpdateNameTransactionData updateNameTransactionData = new UpdateNameTransactionData(baseTransactionData, newOwner.getAddress(), name, newData);
|
||||
|
||||
Transaction updateNameTransaction = new UpdateNameTransaction(repository, updateNameTransactionData);
|
||||
updateNameTransaction.sign(sender);
|
||||
@@ -304,8 +309,9 @@ public class TransactionTests extends Common {
|
||||
|
||||
BigDecimal fee = BigDecimal.ONE;
|
||||
long timestamp = parentBlockData.getTimestamp() + 1_000;
|
||||
SellNameTransactionData sellNameTransactionData = new SellNameTransactionData(timestamp, Group.NO_GROUP, reference, sender.getPublicKey(), name, amount,
|
||||
fee);
|
||||
|
||||
BaseTransactionData baseTransactionData = new BaseTransactionData(timestamp, Group.NO_GROUP, reference, sender.getPublicKey(), fee, null);
|
||||
SellNameTransactionData sellNameTransactionData = new SellNameTransactionData(baseTransactionData, name, amount);
|
||||
|
||||
Transaction sellNameTransaction = new SellNameTransaction(repository, sellNameTransactionData);
|
||||
sellNameTransaction.sign(sender);
|
||||
@@ -354,8 +360,9 @@ public class TransactionTests extends Common {
|
||||
|
||||
BigDecimal fee = BigDecimal.ONE;
|
||||
long timestamp = parentBlockData.getTimestamp() + 1_000;
|
||||
CancelSellNameTransactionData cancelSellNameTransactionData = new CancelSellNameTransactionData(timestamp, Group.NO_GROUP, reference,
|
||||
sender.getPublicKey(), name, fee);
|
||||
|
||||
BaseTransactionData baseTransactionData = new BaseTransactionData(timestamp, Group.NO_GROUP, reference, sender.getPublicKey(), fee, null);
|
||||
CancelSellNameTransactionData cancelSellNameTransactionData = new CancelSellNameTransactionData(baseTransactionData, name);
|
||||
|
||||
Transaction cancelSellNameTransaction = new CancelSellNameTransaction(repository, cancelSellNameTransactionData);
|
||||
cancelSellNameTransaction.sign(sender);
|
||||
@@ -415,8 +422,9 @@ public class TransactionTests extends Common {
|
||||
|
||||
BigDecimal fee = BigDecimal.ONE;
|
||||
long timestamp = parentBlockData.getTimestamp() + 1_000;
|
||||
BuyNameTransactionData buyNameTransactionData = new BuyNameTransactionData(timestamp, Group.NO_GROUP, buyersReference, buyer.getPublicKey(), name,
|
||||
originalNameData.getSalePrice(), seller, fee);
|
||||
|
||||
BaseTransactionData baseTransactionData = new BaseTransactionData(timestamp, Group.NO_GROUP, buyersReference, buyer.getPublicKey(), fee, null);
|
||||
BuyNameTransactionData buyNameTransactionData = new BuyNameTransactionData(baseTransactionData, name, originalNameData.getSalePrice(), seller);
|
||||
|
||||
Transaction buyNameTransaction = new BuyNameTransaction(repository, buyNameTransactionData);
|
||||
buyNameTransaction.sign(buyer);
|
||||
@@ -466,8 +474,9 @@ public class TransactionTests extends Common {
|
||||
Account recipient = new PublicKeyAccount(repository, recipientSeed);
|
||||
BigDecimal fee = BigDecimal.ONE;
|
||||
long timestamp = parentBlockData.getTimestamp() + 1_000;
|
||||
CreatePollTransactionData createPollTransactionData = new CreatePollTransactionData(timestamp, Group.NO_GROUP, reference, sender.getPublicKey(),
|
||||
recipient.getAddress(), pollName, description, pollOptions, fee);
|
||||
|
||||
BaseTransactionData baseTransactionData = new BaseTransactionData(timestamp, Group.NO_GROUP, reference, sender.getPublicKey(), fee, null);
|
||||
CreatePollTransactionData createPollTransactionData = new CreatePollTransactionData(baseTransactionData, recipient.getAddress(), pollName, description, pollOptions);
|
||||
|
||||
Transaction createPollTransaction = new CreatePollTransaction(repository, createPollTransactionData);
|
||||
createPollTransaction.sign(sender);
|
||||
@@ -518,8 +527,9 @@ public class TransactionTests extends Common {
|
||||
|
||||
for (int optionIndex = 0; optionIndex <= pollOptionsSize; ++optionIndex) {
|
||||
// Make a vote-on-poll transaction
|
||||
VoteOnPollTransactionData voteOnPollTransactionData = new VoteOnPollTransactionData(timestamp, Group.NO_GROUP, reference, sender.getPublicKey(),
|
||||
pollName, optionIndex, fee);
|
||||
|
||||
BaseTransactionData baseTransactionData = new BaseTransactionData(timestamp, Group.NO_GROUP, reference, sender.getPublicKey(), fee, null);
|
||||
VoteOnPollTransactionData voteOnPollTransactionData = new VoteOnPollTransactionData(baseTransactionData, pollName, optionIndex);
|
||||
|
||||
Transaction voteOnPollTransaction = new VoteOnPollTransaction(repository, voteOnPollTransactionData);
|
||||
voteOnPollTransaction.sign(sender);
|
||||
@@ -589,8 +599,8 @@ public class TransactionTests extends Common {
|
||||
long timestamp = parentBlockData.getTimestamp() + 1_000;
|
||||
String data = (timestamp >= BlockChain.getInstance().getQoraV2Timestamp()) ? "{}" : null;
|
||||
|
||||
IssueAssetTransactionData issueAssetTransactionData = new IssueAssetTransactionData(timestamp, Group.NO_GROUP, reference, sender.getPublicKey(),
|
||||
sender.getAddress(), assetName, description, quantity, isDivisible, data, fee);
|
||||
BaseTransactionData baseTransactionData = new BaseTransactionData(timestamp, Group.NO_GROUP, reference, sender.getPublicKey(), fee, null);
|
||||
IssueAssetTransactionData issueAssetTransactionData = new IssueAssetTransactionData(baseTransactionData, sender.getAddress(), assetName, description, quantity, isDivisible, data);
|
||||
|
||||
Transaction issueAssetTransaction = new IssueAssetTransaction(repository, issueAssetTransactionData);
|
||||
issueAssetTransaction.sign(sender);
|
||||
@@ -677,8 +687,8 @@ public class TransactionTests extends Common {
|
||||
BigDecimal fee = BigDecimal.ONE;
|
||||
long timestamp = parentBlockData.getTimestamp() + 1_000;
|
||||
|
||||
TransferAssetTransactionData transferAssetTransactionData = new TransferAssetTransactionData(timestamp, Group.NO_GROUP, reference,
|
||||
sender.getPublicKey(), recipient.getAddress(), amount, assetId, fee);
|
||||
BaseTransactionData baseTransactionData = new BaseTransactionData(timestamp, Group.NO_GROUP, reference, sender.getPublicKey(), fee, null);
|
||||
TransferAssetTransactionData transferAssetTransactionData = new TransferAssetTransactionData(baseTransactionData, recipient.getAddress(), amount, assetId);
|
||||
|
||||
Transaction transferAssetTransaction = new TransferAssetTransaction(repository, transferAssetTransactionData);
|
||||
transferAssetTransaction.sign(sender);
|
||||
@@ -778,8 +788,9 @@ public class TransactionTests extends Common {
|
||||
BigDecimal fee = BigDecimal.ONE;
|
||||
long timestamp = parentBlockData.getTimestamp() + 1_000;
|
||||
|
||||
CreateAssetOrderTransactionData createOrderTransactionData = new CreateAssetOrderTransactionData(timestamp, Group.NO_GROUP, buyersReference,
|
||||
buyer.getPublicKey(), haveAssetId, wantAssetId, amount, price, fee);
|
||||
BaseTransactionData baseTransactionData = new BaseTransactionData(timestamp, Group.NO_GROUP, buyersReference, sender.getPublicKey(), fee, null);
|
||||
CreateAssetOrderTransactionData createOrderTransactionData = new CreateAssetOrderTransactionData(baseTransactionData, haveAssetId, wantAssetId, amount, price);
|
||||
|
||||
Transaction createOrderTransaction = new CreateAssetOrderTransaction(this.repository, createOrderTransactionData);
|
||||
createOrderTransaction.sign(buyer);
|
||||
assertTrue(createOrderTransaction.isSignatureValid());
|
||||
@@ -857,8 +868,9 @@ public class TransactionTests extends Common {
|
||||
BigDecimal fee = BigDecimal.ONE;
|
||||
long timestamp = parentBlockData.getTimestamp() + 1_000;
|
||||
byte[] buyersReference = buyer.getLastReference();
|
||||
CancelAssetOrderTransactionData cancelOrderTransactionData = new CancelAssetOrderTransactionData(timestamp, Group.NO_GROUP, buyersReference,
|
||||
buyer.getPublicKey(), orderId, fee);
|
||||
|
||||
BaseTransactionData baseTransactionData = new BaseTransactionData(timestamp, Group.NO_GROUP, buyersReference, sender.getPublicKey(), fee, null);
|
||||
CancelAssetOrderTransactionData cancelOrderTransactionData = new CancelAssetOrderTransactionData(baseTransactionData, orderId);
|
||||
|
||||
Transaction cancelOrderTransaction = new CancelAssetOrderTransaction(this.repository, cancelOrderTransactionData);
|
||||
cancelOrderTransaction.sign(buyer);
|
||||
@@ -931,8 +943,9 @@ public class TransactionTests extends Common {
|
||||
long timestamp = parentBlockData.getTimestamp() + 1_000;
|
||||
BigDecimal senderPreTradeWantBalance = sender.getConfirmedBalance(wantAssetId);
|
||||
|
||||
CreateAssetOrderTransactionData createOrderTransactionData = new CreateAssetOrderTransactionData(timestamp, Group.NO_GROUP, reference,
|
||||
sender.getPublicKey(), haveAssetId, wantAssetId, amount, price, fee);
|
||||
BaseTransactionData baseTransactionData = new BaseTransactionData(timestamp, Group.NO_GROUP, reference, sender.getPublicKey(), fee, null);
|
||||
CreateAssetOrderTransactionData createOrderTransactionData = new CreateAssetOrderTransactionData(baseTransactionData, haveAssetId, wantAssetId, amount, price);
|
||||
|
||||
Transaction createOrderTransaction = new CreateAssetOrderTransaction(this.repository, createOrderTransactionData);
|
||||
createOrderTransaction.sign(sender);
|
||||
assertTrue(createOrderTransaction.isSignatureValid());
|
||||
@@ -1038,8 +1051,8 @@ public class TransactionTests extends Common {
|
||||
payments.add(paymentData);
|
||||
}
|
||||
|
||||
MultiPaymentTransactionData multiPaymentTransactionData = new MultiPaymentTransactionData(timestamp, Group.NO_GROUP, reference, sender.getPublicKey(),
|
||||
payments, fee);
|
||||
BaseTransactionData baseTransactionData = new BaseTransactionData(timestamp, Group.NO_GROUP, reference, sender.getPublicKey(), fee, null);
|
||||
MultiPaymentTransactionData multiPaymentTransactionData = new MultiPaymentTransactionData(baseTransactionData, payments);
|
||||
|
||||
Transaction multiPaymentTransaction = new MultiPaymentTransaction(repository, multiPaymentTransactionData);
|
||||
multiPaymentTransaction.sign(sender);
|
||||
@@ -1106,8 +1119,9 @@ public class TransactionTests extends Common {
|
||||
boolean isText = true;
|
||||
boolean isEncrypted = false;
|
||||
|
||||
MessageTransactionData messageTransactionData = new MessageTransactionData(timestamp, Group.NO_GROUP, reference, sender.getPublicKey(), version,
|
||||
recipient.getAddress(), Asset.QORA, amount, data, isText, isEncrypted, fee);
|
||||
BaseTransactionData baseTransactionData = new BaseTransactionData(timestamp, Group.NO_GROUP, reference, sender.getPublicKey(), fee, null);
|
||||
MessageTransactionData messageTransactionData = new MessageTransactionData(baseTransactionData, version,
|
||||
recipient.getAddress(), Asset.QORA, amount, data, isText, isEncrypted);
|
||||
|
||||
Transaction messageTransaction = new MessageTransaction(repository, messageTransactionData);
|
||||
messageTransaction.sign(sender);
|
||||
|
@@ -27,7 +27,8 @@ public class AccountUtils {
|
||||
byte[] reference = sendingAccount.getLastReference();
|
||||
long timestamp = repository.getTransactionRepository().fromSignature(reference).getTimestamp() + 1;
|
||||
|
||||
TransactionData transactionData = new PaymentTransactionData(timestamp, txGroupId, reference, sendingAccount.getPublicKey(), recipientAccount.getAddress(), amount, fee);
|
||||
BaseTransactionData baseTransactionData = new BaseTransactionData(timestamp, txGroupId, reference, sendingAccount.getPublicKey(), fee, null);
|
||||
TransactionData transactionData = new PaymentTransactionData(baseTransactionData, recipientAccount.getAddress(), amount);
|
||||
|
||||
TransactionUtils.signAndForge(repository, transactionData, sendingAccount);
|
||||
}
|
||||
@@ -56,7 +57,8 @@ public class AccountUtils {
|
||||
byte[] reference = forgingAccount.getLastReference();
|
||||
long timestamp = repository.getTransactionRepository().fromSignature(reference).getTimestamp() + 1;
|
||||
|
||||
return new EnableForgingTransactionData(timestamp, txGroupId, reference, forgingAccount.getPublicKey(), Crypto.toAddress(recipientPublicKey), fee);
|
||||
BaseTransactionData baseTransactionData = new BaseTransactionData(timestamp, txGroupId, reference, forgingAccount.getPublicKey(), fee, null);
|
||||
return new EnableForgingTransactionData(baseTransactionData, Crypto.toAddress(recipientPublicKey));
|
||||
}
|
||||
|
||||
public static TransactionData createEnableForging(Repository repository, String forger, String recipient) throws DataException {
|
||||
|
@@ -8,6 +8,7 @@ import java.util.Map;
|
||||
import org.qora.account.PrivateKeyAccount;
|
||||
import org.qora.block.BlockChain;
|
||||
import org.qora.data.asset.OrderData;
|
||||
import org.qora.data.transaction.BaseTransactionData;
|
||||
import org.qora.data.transaction.CancelAssetOrderTransactionData;
|
||||
import org.qora.data.transaction.CreateAssetOrderTransactionData;
|
||||
import org.qora.data.transaction.IssueAssetTransactionData;
|
||||
@@ -33,7 +34,8 @@ public class AssetUtils {
|
||||
byte[] reference = account.getLastReference();
|
||||
long timestamp = repository.getTransactionRepository().fromSignature(reference).getTimestamp() + 1;
|
||||
|
||||
TransactionData transactionData = new IssueAssetTransactionData(timestamp, AssetUtils.txGroupId, reference, account.getPublicKey(), account.getAddress(), assetName, "desc", quantity, isDivisible, "{}", AssetUtils.fee);
|
||||
BaseTransactionData baseTransactionData = new BaseTransactionData(timestamp, AssetUtils.txGroupId, reference, account.getPublicKey(), AssetUtils.fee, null);
|
||||
TransactionData transactionData = new IssueAssetTransactionData(baseTransactionData, account.getAddress(), assetName, "desc", quantity, isDivisible, "{}");
|
||||
|
||||
TransactionUtils.signAndForge(repository, transactionData, account);
|
||||
|
||||
@@ -47,7 +49,8 @@ public class AssetUtils {
|
||||
byte[] reference = fromAccount.getLastReference();
|
||||
long timestamp = repository.getTransactionRepository().fromSignature(reference).getTimestamp() + 1;
|
||||
|
||||
TransactionData transactionData = new TransferAssetTransactionData(timestamp, AssetUtils.txGroupId, reference, fromAccount.getPublicKey(), toAccount.getAddress(), amount, assetId, AssetUtils.fee);
|
||||
BaseTransactionData baseTransactionData = new BaseTransactionData(timestamp, AssetUtils.txGroupId, reference, fromAccount.getPublicKey(), AssetUtils.fee, null);
|
||||
TransactionData transactionData = new TransferAssetTransactionData(baseTransactionData, toAccount.getAddress(), amount, assetId);
|
||||
|
||||
TransactionUtils.signAndForge(repository, transactionData, fromAccount);
|
||||
}
|
||||
@@ -58,7 +61,8 @@ public class AssetUtils {
|
||||
byte[] reference = account.getLastReference();
|
||||
long timestamp = repository.getTransactionRepository().fromSignature(reference).getTimestamp() + 1;
|
||||
|
||||
TransactionData transactionData = new CreateAssetOrderTransactionData(timestamp, txGroupId, reference, account.getPublicKey(), haveAssetId, wantAssetId, amount, price, fee);
|
||||
BaseTransactionData baseTransactionData = new BaseTransactionData(timestamp, AssetUtils.txGroupId, reference, account.getPublicKey(), AssetUtils.fee, null);
|
||||
TransactionData transactionData = new CreateAssetOrderTransactionData(baseTransactionData, haveAssetId, wantAssetId, amount, price);
|
||||
|
||||
TransactionUtils.signAndForge(repository, transactionData, account);
|
||||
|
||||
@@ -71,7 +75,8 @@ public class AssetUtils {
|
||||
byte[] reference = account.getLastReference();
|
||||
long timestamp = repository.getTransactionRepository().fromSignature(reference).getTimestamp() + 1;
|
||||
|
||||
TransactionData transactionData = new CancelAssetOrderTransactionData(timestamp, txGroupId, reference, account.getPublicKey(), orderId, fee);
|
||||
BaseTransactionData baseTransactionData = new BaseTransactionData(timestamp, AssetUtils.txGroupId, reference, account.getPublicKey(), AssetUtils.fee, null);
|
||||
TransactionData transactionData = new CancelAssetOrderTransactionData(baseTransactionData, orderId);
|
||||
|
||||
TransactionUtils.signAndForge(repository, transactionData, account);
|
||||
}
|
||||
|
@@ -5,14 +5,12 @@ import java.math.BigDecimal;
|
||||
import org.qora.account.PrivateKeyAccount;
|
||||
import org.qora.data.transaction.PaymentTransactionData;
|
||||
import org.qora.data.transaction.TransactionData;
|
||||
import org.qora.group.Group;
|
||||
import org.qora.repository.Repository;
|
||||
import org.qora.utils.NTP;
|
||||
|
||||
public class PaymentTransaction {
|
||||
public class PaymentTransaction extends org.qora.test.common.transaction.Transaction {
|
||||
|
||||
public static TransactionData randomTransaction(Repository repository, PrivateKeyAccount account, boolean wantValid) {
|
||||
return new PaymentTransactionData(NTP.getTime(), Group.NO_GROUP, new byte[32], account.getPublicKey(), account.getAddress(), BigDecimal.valueOf(123L), BigDecimal.ONE);
|
||||
return new PaymentTransactionData(generateBase(account), account.getAddress(), BigDecimal.valueOf(123L));
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -1,4 +1,15 @@
|
||||
package org.qora.test.common.transaction;
|
||||
|
||||
import org.qora.account.PrivateKeyAccount;
|
||||
import org.qora.block.BlockChain;
|
||||
import org.qora.data.transaction.BaseTransactionData;
|
||||
import org.qora.group.Group;
|
||||
import org.qora.utils.NTP;
|
||||
|
||||
public abstract class Transaction {
|
||||
|
||||
protected static BaseTransactionData generateBase(PrivateKeyAccount account) {
|
||||
return new BaseTransactionData(NTP.getTime(), Group.NO_GROUP, new byte[32], account.getPublicKey(), BlockChain.getInstance().getUnitFee(), null);
|
||||
}
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user