scripts: adds tests for *HashOutput

This commit is contained in:
Daniel Cousens 2015-08-18 09:18:23 +10:00
parent ab1215adc1
commit 706f5d7a9c
4 changed files with 35 additions and 3 deletions

View file

@ -4,7 +4,7 @@ var typeforce = require('typeforce')
function nBuffer (value, n) {
if (!Buffer.isBuffer(value)) return false
if (value.length !== n) throw new Error('Expected ' + (n * 8) + '-bit Buffer, got ' + (value.length * 8) + '-bit')
if (value.length !== n) throw new Error('Expected ' + (n * 8) + '-bit Buffer, got ' + (value.length * 8) + '-bit Buffer')
return true
}

View file

@ -265,6 +265,18 @@
"304402207515cf147d201f411092e6be5a64a6006f9308fad7b2a8fdaab22cd86ce764c202200974b8aca7bf51dbf54150d3884e1ae04f675637b926ec33bf75939446f6ca2801"
]
}
],
"pubKeyHashOutput": [
{
"exception": "Expected 160-bit Buffer, got 16-bit Buffer",
"hash": "ffff"
}
],
"scriptHashOutput": [
{
"exception": "Expected 160-bit Buffer, got 24-bit Buffer",
"hash": "ffffff"
}
]
}
}

View file

@ -229,12 +229,12 @@
"invalid": {
"addInput": [
{
"exception": "Expected 256-bit Buffer, got 240-bit",
"exception": "Expected 256-bit Buffer, got 240-bit Buffer",
"hash": "0aed1366a73b6057ee7800d737bff1bdf8c448e98d86bc0998f2b009816d",
"index": 0
},
{
"exception": "Expected 256-bit Buffer, got 272-bit",
"exception": "Expected 256-bit Buffer, got 272-bit Buffer",
"hash": "0aed1366a73b6057ee7800d737bff1bdf8c448e98d86bc0998f2b009816da9b0ffff",
"index": 0
}

View file

@ -245,6 +245,16 @@ describe('scripts', function () {
assert.strictEqual(scripts.toASM(scriptPubKey), f.scriptPubKey)
})
})
fixtures.invalid.pubKeyHashOutput.forEach(function (f) {
var hash = new Buffer(f.hash, 'hex')
it('throws on ' + f.exception, function () {
assert.throws(function () {
scripts.pubKeyHashOutput(hash)
}, new RegExp(f.exception))
})
})
})
describe('multisigInput', function () {
@ -333,6 +343,16 @@ describe('scripts', function () {
assert.strictEqual(scripts.toASM(scriptPubKey), f.scriptPubKey)
})
})
fixtures.invalid.scriptHashOutput.forEach(function (f) {
var hash = new Buffer(f.hash, 'hex')
it('throws on ' + f.exception, function () {
assert.throws(function () {
scripts.scriptHashOutput(hash)
}, new RegExp(f.exception))
})
})
})
describe('nullDataOutput', function () {