init
This commit is contained in:
+76
@@ -0,0 +1,76 @@
|
||||
{
|
||||
"valid": [
|
||||
{
|
||||
"WIF": "KwDiBf89QgGbjEhKnhXJuH7LrciVrZi3qYjgd9M7rFU73sVHnoWn",
|
||||
"compressed": true,
|
||||
"privateKeyHex": "0000000000000000000000000000000000000000000000000000000000000001",
|
||||
"version": 128
|
||||
},
|
||||
{
|
||||
"WIF": "5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip4nEB3kEsreAnchuDf",
|
||||
"compressed": false,
|
||||
"privateKeyHex": "0000000000000000000000000000000000000000000000000000000000000001",
|
||||
"version": 128
|
||||
},
|
||||
{
|
||||
"WIF": "KxhEDBQyyEFymvfJD96q8stMbJMbZUb6D1PmXqBWZDU2WvbvVs9o",
|
||||
"compressed": true,
|
||||
"privateKeyHex": "2bfe58ab6d9fd575bdc3a624e4825dd2b375d64ac033fbc46ea79dbab4f69a3e",
|
||||
"version": 128
|
||||
},
|
||||
{
|
||||
"WIF": "KzrA86mCVMGWnLGBQu9yzQa32qbxb5dvSK4XhyjjGAWSBKYX4rHx",
|
||||
"compressed": true,
|
||||
"privateKeyHex": "6c4313b03f2e7324d75e642f0ab81b734b724e13fec930f309e222470236d66b",
|
||||
"version": 128
|
||||
},
|
||||
{
|
||||
"WIF": "5JdxzLtFPHNe7CAL8EBC6krdFv9pwPoRo4e3syMZEQT9srmK8hh",
|
||||
"compressed": false,
|
||||
"privateKeyHex": "6c4313b03f2e7324d75e642f0ab81b734b724e13fec930f309e222470236d66b",
|
||||
"version": 128
|
||||
},
|
||||
{
|
||||
"WIF": "cRD9b1m3vQxmwmjSoJy7Mj56f4uNFXjcWMCzpQCEmHASS4edEwXv",
|
||||
"compressed": true,
|
||||
"privateKeyHex": "6c4313b03f2e7324d75e642f0ab81b734b724e13fec930f309e222470236d66b",
|
||||
"version": 239
|
||||
},
|
||||
{
|
||||
"WIF": "92Qba5hnyWSn5Ffcka56yMQauaWY6ZLd91Vzxbi4a9CCetaHtYj",
|
||||
"compressed": false,
|
||||
"privateKeyHex": "6c4313b03f2e7324d75e642f0ab81b734b724e13fec930f309e222470236d66b",
|
||||
"version": 239
|
||||
},
|
||||
{
|
||||
"WIF": "L5oLkpV3aqBjhki6LmvChTCV6odsp4SXM6FfU2Gppt5kFLaHLuZ9",
|
||||
"compressed": true,
|
||||
"privateKeyHex": "fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364140",
|
||||
"version": 128
|
||||
}
|
||||
],
|
||||
"invalid": {
|
||||
"decode": [
|
||||
{
|
||||
"exception": "Invalid network version",
|
||||
"version": 128,
|
||||
"WIF": "92Qba5hnyWSn5Ffcka56yMQauaWY6ZLd91Vzxbi4a9CCetaHtYj"
|
||||
},
|
||||
{
|
||||
"exception": "Invalid compression flag",
|
||||
"version": 128,
|
||||
"WIF": "KwDiBf89QgGbjEhKnhXJuH7LrciVrZi3qYjgd9M7rFU73sfZr2ym"
|
||||
},
|
||||
{
|
||||
"exception": "Invalid WIF length",
|
||||
"version": 128,
|
||||
"WIF": "3tq8Vmhh9SN5XhjTGSWgx8iKk59XbKG6UH4oqpejRuJhfYD"
|
||||
},
|
||||
{
|
||||
"exception": "Invalid WIF length",
|
||||
"version": 128,
|
||||
"WIF": "38uMpGARR2BJy5p4dNFKYg9UsWNoBtkpbdrXDjmfvz8krCtw3T1W92ZDSR"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
+42
@@ -0,0 +1,42 @@
|
||||
var wif = require('../')
|
||||
var fixtures = require('./fixtures')
|
||||
var tape = require('tape')
|
||||
|
||||
fixtures.valid.forEach(function (f) {
|
||||
tape('encode/encodeRaw returns ' + f.WIF + ' for ' + f.privateKeyHex.slice(0, 20) + '... (' + f.version + ')', function (t) {
|
||||
t.plan(1)
|
||||
|
||||
var privateKey = new Buffer(f.privateKeyHex, 'hex')
|
||||
var actual = wif.encode(f.version, privateKey, f.compressed)
|
||||
t.equal(actual, f.WIF)
|
||||
})
|
||||
})
|
||||
|
||||
fixtures.valid.forEach(function (f) {
|
||||
tape('decode/decodeRaw returns ' + f.privateKeyHex.slice(0, 20) + '... (' + f.version + ')' + ' for ' + f.WIF, function (t) {
|
||||
t.plan(3)
|
||||
|
||||
var actual = wif.decode(f.WIF, f.version)
|
||||
t.equal(actual.version, f.version)
|
||||
t.equal(actual.privateKey.toString('hex'), f.privateKeyHex)
|
||||
t.equal(actual.compressed, f.compressed)
|
||||
})
|
||||
})
|
||||
|
||||
fixtures.invalid.decode.forEach(function (f) {
|
||||
tape('throws ' + f.exception + ' for ' + f.WIF, function (t) {
|
||||
t.plan(1)
|
||||
t.throws(function () {
|
||||
wif.decode(f.WIF, f.version)
|
||||
}, new RegExp(f.exception))
|
||||
})
|
||||
})
|
||||
|
||||
fixtures.valid.forEach(function (f) {
|
||||
tape('decode/encode for ' + f.WIF, function (t) {
|
||||
t.plan(1)
|
||||
|
||||
var actual = wif.encode(wif.decode(f.WIF, f.version))
|
||||
t.equal(actual, f.WIF)
|
||||
})
|
||||
})
|
||||
Reference in New Issue
Block a user