Ori Newman bb2d7f72ac
[NOD-1560] Add TestValidateTransactionInIsolation (#1140)
* [NOD-1560] Add TestValidateTransactionInIsolation

* [NOD-1560] Make ForAllNets copy the params before mutating them

* [NOD-1560] Remove redundant continue

* [NOD-1560] Don't change finality duration
2020-11-23 16:28:59 +02:00

44 lines
1.4 KiB
Go

package transactionhelper
import (
"github.com/kaspanet/kaspad/domain/consensus/model/externalapi"
"github.com/kaspanet/kaspad/domain/consensus/utils/hashes"
"github.com/kaspanet/kaspad/domain/consensus/utils/subnetworks"
)
// NewSubnetworkTransaction returns a new trsnactions in the specified subnetwork with specified gas and payload
func NewSubnetworkTransaction(version int32, inputs []*externalapi.DomainTransactionInput,
outputs []*externalapi.DomainTransactionOutput, subnetworkID *externalapi.DomainSubnetworkID,
gas uint64, payload []byte) *externalapi.DomainTransaction {
payloadHash := hashes.HashData(payload)
return &externalapi.DomainTransaction{
Version: version,
Inputs: inputs,
Outputs: outputs,
LockTime: 0,
SubnetworkID: *subnetworkID,
Gas: gas,
PayloadHash: *payloadHash,
Payload: payload,
Fee: 0,
Mass: 0,
}
}
// NewNativeTransaction returns a new native transaction
func NewNativeTransaction(version int32, inputs []*externalapi.DomainTransactionInput,
outputs []*externalapi.DomainTransactionOutput) *externalapi.DomainTransaction {
return &externalapi.DomainTransaction{
Version: version,
Inputs: inputs,
Outputs: outputs,
LockTime: 0,
SubnetworkID: subnetworks.SubnetworkIDNative,
Gas: 0,
Payload: []byte{},
Fee: 0,
Mass: 0,
}
}