Add tests for encodeFor*Signing

This commit is contained in:
Nicholas Dudfield
2015-10-07 17:48:46 +07:00
parent 77abd3e188
commit ef0d1f5679
2 changed files with 121 additions and 11 deletions

View File

@@ -9,32 +9,42 @@ const {quality,
binaryToJSON,
serializeObject}} = coreTypes;
exports.decode = function(binary) {
function decode(binary) {
assert(typeof binary === 'string', 'binary must be a hex string');
return binaryToJSON(binary);
};
}
exports.encode = function(json) {
function encode(json) {
assert(typeof json === 'object');
return bytesToHex(serializeObject(json));
};
}
exports.encodeForSigning = function(json) {
function encodeForSigning(json) {
assert(typeof json === 'object');
return bytesToHex(signingData(json));
};
}
exports.encodeForMultisigning = function(json, signer) {
function encodeForMultisigning(json, signer) {
assert(typeof json === 'object');
assert.equal(json.SigningPubKey, '');
return bytesToHex(multiSigningData(json, signer));
};
}
exports.encodeQuality = function(value) {
function encodeQuality(value) {
assert(typeof value === 'string');
return bytesToHex(quality.encode(value));
};
}
exports.decodeQuality = function(value) {
function decodeQuality(value) {
assert(typeof value === 'string');
return quality.decode(value).toString();
}
module.exports = {
decode,
encode,
encodeForSigning,
encodeForMultisigning,
encodeQuality,
decodeQuality
};