tests/integration/payments: enable failing P2SH(P2WSH(P2WPKH)) tests
This commit is contained in:
parent
faf3645361
commit
de0259a820
2 changed files with 12 additions and 6 deletions
|
@ -232,6 +232,11 @@ function prepareInput (input, ourPubKey, redeemScript, witnessValue, witnessScri
|
||||||
expanded.signatures = input.signatures
|
expanded.signatures = input.signatures
|
||||||
}
|
}
|
||||||
|
|
||||||
|
let signScript = witnessScript
|
||||||
|
if (expanded.type === SCRIPT_TYPES.P2WPKH) {
|
||||||
|
signScript = payments.p2pkh({ pubkey: expanded.pubkeys[0] }).output
|
||||||
|
}
|
||||||
|
|
||||||
return {
|
return {
|
||||||
redeemScript,
|
redeemScript,
|
||||||
redeemScriptType: SCRIPT_TYPES.P2WSH,
|
redeemScriptType: SCRIPT_TYPES.P2WSH,
|
||||||
|
@ -243,7 +248,7 @@ function prepareInput (input, ourPubKey, redeemScript, witnessValue, witnessScri
|
||||||
prevOutScript: p2sh.output,
|
prevOutScript: p2sh.output,
|
||||||
|
|
||||||
hasWitness: true,
|
hasWitness: true,
|
||||||
signScript: witnessScript,
|
signScript,
|
||||||
signType: expanded.type,
|
signType: expanded.type,
|
||||||
|
|
||||||
pubkeys: expanded.pubkeys,
|
pubkeys: expanded.pubkeys,
|
||||||
|
@ -303,6 +308,11 @@ function prepareInput (input, ourPubKey, redeemScript, witnessValue, witnessScri
|
||||||
expanded.signatures = input.signatures
|
expanded.signatures = input.signatures
|
||||||
}
|
}
|
||||||
|
|
||||||
|
let signScript = witnessScript
|
||||||
|
if (expanded.type === SCRIPT_TYPES.P2WPKH) {
|
||||||
|
signScript = payments.p2pkh({ pubkey: expanded.pubkeys[0] }).output
|
||||||
|
}
|
||||||
|
|
||||||
return {
|
return {
|
||||||
witnessScript,
|
witnessScript,
|
||||||
witnessScriptType: expanded.type,
|
witnessScriptType: expanded.type,
|
||||||
|
@ -311,7 +321,7 @@ function prepareInput (input, ourPubKey, redeemScript, witnessValue, witnessScri
|
||||||
prevOutScript: p2wsh.output,
|
prevOutScript: p2wsh.output,
|
||||||
|
|
||||||
hasWitness: true,
|
hasWitness: true,
|
||||||
signScript: witnessScript,
|
signScript,
|
||||||
signType: expanded.type,
|
signType: expanded.type,
|
||||||
|
|
||||||
pubkeys: expanded.pubkeys,
|
pubkeys: expanded.pubkeys,
|
||||||
|
|
|
@ -55,15 +55,11 @@ function buildAndSign (depends, prevOutput, redeemScript, witnessScript, done) {
|
||||||
})
|
})
|
||||||
|
|
||||||
it('can (as P2WSH(' + k + ')) broadcast as an output, and be spent as an input', (done) => {
|
it('can (as P2WSH(' + k + ')) broadcast as an output, and be spent as an input', (done) => {
|
||||||
if (k === 'p2wpkh') return done() // skip P2WSH(P2WPKH)
|
|
||||||
|
|
||||||
const p2wsh = bitcoin.payments.p2wsh({ redeem: { output }, network: NETWORK })
|
const p2wsh = bitcoin.payments.p2wsh({ redeem: { output }, network: NETWORK })
|
||||||
buildAndSign(depends, p2wsh.output, null, p2wsh.redeem.output, done)
|
buildAndSign(depends, p2wsh.output, null, p2wsh.redeem.output, done)
|
||||||
})
|
})
|
||||||
|
|
||||||
it('can (as P2SH(P2WSH(' + k + '))) broadcast as an output, and be spent as an input', (done) => {
|
it('can (as P2SH(P2WSH(' + k + '))) broadcast as an output, and be spent as an input', (done) => {
|
||||||
if (k === 'p2wpkh') return done() // skip P2SH(P2WSH(P2WPKH))
|
|
||||||
|
|
||||||
const p2wsh = bitcoin.payments.p2wsh({ redeem: { output }, network: NETWORK })
|
const p2wsh = bitcoin.payments.p2wsh({ redeem: { output }, network: NETWORK })
|
||||||
const p2sh = bitcoin.payments.p2sh({ redeem: { output: p2wsh.output }, network: NETWORK })
|
const p2sh = bitcoin.payments.p2sh({ redeem: { output: p2wsh.output }, network: NETWORK })
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue