Merge #12791: Expose a transaction's weight via RPC
9e50c337cNote new weight field in release-notes. (Matt Corallo)d0d9112b7Test new weight field in p2p_segwit (Matt Corallo)2874709a9Expose a transaction's weight via RPC (Matt Corallo) Pull request description: This seems like an obvious oversight. Tree-SHA512: defd047de34fb06a31f589e1a4eef68fcae85095cc67b7c8fb434237bb40300d7f3f97e852d3e7226330e26b96943846b7baf6da0cfc79db8d56e9c1f7848ad9
This commit is contained in:
@@ -10,6 +10,7 @@ from test_framework.util import *
|
||||
from test_framework.script import *
|
||||
from test_framework.blocktools import create_block, create_coinbase, add_witness_commitment, get_witness_script, WITNESS_COMMITMENT_HEADER
|
||||
from test_framework.key import CECKey, CPubKey
|
||||
import math
|
||||
import time
|
||||
import random
|
||||
from binascii import hexlify
|
||||
@@ -930,8 +931,10 @@ class SegWitTest(BitcoinTestFramework):
|
||||
raw_tx = self.nodes[0].getrawtransaction(tx3.hash, 1)
|
||||
assert_equal(int(raw_tx["hash"], 16), tx3.calc_sha256(True))
|
||||
assert_equal(raw_tx["size"], len(tx3.serialize_with_witness()))
|
||||
vsize = (len(tx3.serialize_with_witness()) + 3*len(tx3.serialize_without_witness()) + 3) / 4
|
||||
weight = len(tx3.serialize_with_witness()) + 3*len(tx3.serialize_without_witness())
|
||||
vsize = math.ceil(weight / 4)
|
||||
assert_equal(raw_tx["vsize"], vsize)
|
||||
assert_equal(raw_tx["weight"], weight)
|
||||
assert_equal(len(raw_tx["vin"][0]["txinwitness"]), 1)
|
||||
assert_equal(raw_tx["vin"][0]["txinwitness"][0], hexlify(witness_program).decode('ascii'))
|
||||
assert(vsize != raw_tx["size"])
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
"version": 1,
|
||||
"size": 10,
|
||||
"vsize": 10,
|
||||
"weight": 40,
|
||||
"locktime": 0,
|
||||
"vin": [
|
||||
],
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
"version": 2,
|
||||
"size": 10,
|
||||
"vsize": 10,
|
||||
"weight": 40,
|
||||
"locktime": 0,
|
||||
"vin": [
|
||||
],
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
"version": 1,
|
||||
"size": 3040,
|
||||
"vsize": 3040,
|
||||
"weight": 12160,
|
||||
"locktime": 0,
|
||||
"vin": [
|
||||
{
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
"version": 1,
|
||||
"size": 3155,
|
||||
"vsize": 3155,
|
||||
"weight": 12620,
|
||||
"locktime": 0,
|
||||
"vin": [
|
||||
{
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
"version": 1,
|
||||
"size": 3189,
|
||||
"vsize": 3189,
|
||||
"weight": 12756,
|
||||
"locktime": 317000,
|
||||
"vin": [
|
||||
{
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
"version": 2,
|
||||
"size": 201,
|
||||
"vsize": 201,
|
||||
"weight": 804,
|
||||
"locktime": 0,
|
||||
"vin": [
|
||||
{
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
"version": 2,
|
||||
"size": 19,
|
||||
"vsize": 19,
|
||||
"weight": 76,
|
||||
"locktime": 0,
|
||||
"vin": [
|
||||
],
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
"version": 1,
|
||||
"size": 176,
|
||||
"vsize": 176,
|
||||
"weight": 704,
|
||||
"locktime": 0,
|
||||
"vin": [
|
||||
{
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
"version": 2,
|
||||
"size": 176,
|
||||
"vsize": 176,
|
||||
"weight": 704,
|
||||
"locktime": 0,
|
||||
"vin": [
|
||||
{
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
"version": 2,
|
||||
"size": 85,
|
||||
"vsize": 85,
|
||||
"weight": 340,
|
||||
"locktime": 0,
|
||||
"vin": [
|
||||
{
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
"version": 1,
|
||||
"size": 126,
|
||||
"vsize": 126,
|
||||
"weight": 504,
|
||||
"locktime": 0,
|
||||
"vin": [
|
||||
{
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
"version": 1,
|
||||
"size": 124,
|
||||
"vsize": 124,
|
||||
"weight": 496,
|
||||
"locktime": 0,
|
||||
"vin": [
|
||||
],
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
"version": 1,
|
||||
"size": 42,
|
||||
"vsize": 42,
|
||||
"weight": 168,
|
||||
"locktime": 0,
|
||||
"vin": [
|
||||
],
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
"version": 1,
|
||||
"size": 53,
|
||||
"vsize": 53,
|
||||
"weight": 212,
|
||||
"locktime": 0,
|
||||
"vin": [
|
||||
],
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
"version": 1,
|
||||
"size": 42,
|
||||
"vsize": 42,
|
||||
"weight": 168,
|
||||
"locktime": 0,
|
||||
"vin": [
|
||||
],
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
"version": 2,
|
||||
"size": 42,
|
||||
"vsize": 42,
|
||||
"weight": 168,
|
||||
"locktime": 0,
|
||||
"vin": [
|
||||
],
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
"version": 1,
|
||||
"size": 54,
|
||||
"vsize": 54,
|
||||
"weight": 216,
|
||||
"locktime": 0,
|
||||
"vin": [
|
||||
],
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
"version": 1,
|
||||
"size": 41,
|
||||
"vsize": 41,
|
||||
"weight": 164,
|
||||
"locktime": 0,
|
||||
"vin": [
|
||||
],
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
"version": 1,
|
||||
"size": 42,
|
||||
"vsize": 42,
|
||||
"weight": 168,
|
||||
"locktime": 0,
|
||||
"vin": [
|
||||
],
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
"version": 1,
|
||||
"size": 20,
|
||||
"vsize": 20,
|
||||
"weight": 80,
|
||||
"locktime": 0,
|
||||
"vin": [
|
||||
],
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
"version": 1,
|
||||
"size": 42,
|
||||
"vsize": 42,
|
||||
"weight": 168,
|
||||
"locktime": 0,
|
||||
"vin": [
|
||||
],
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
"version": 1,
|
||||
"size": 53,
|
||||
"vsize": 53,
|
||||
"weight": 212,
|
||||
"locktime": 0,
|
||||
"vin": [
|
||||
],
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
"version": 1,
|
||||
"size": 42,
|
||||
"vsize": 42,
|
||||
"weight": 168,
|
||||
"locktime": 0,
|
||||
"vin": [
|
||||
],
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
"version": 1,
|
||||
"size": 224,
|
||||
"vsize": 224,
|
||||
"weight": 896,
|
||||
"locktime": 0,
|
||||
"vin": [
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user