SIN should call EncodedData constructor
Creating SINs was broken due to not calling the parent constructor, shich sets "converts" and "_encoding". I've fixed the problem and added tests that reveal the error.
This commit is contained in:
parent
3bed2e0da2
commit
098c613cb0
|
@ -3,10 +3,9 @@ var EncodedData = require('../util/EncodedData');
|
||||||
var util = require('util');
|
var util = require('util');
|
||||||
|
|
||||||
function SIN(type, payload) {
|
function SIN(type, payload) {
|
||||||
if (typeof type != 'number') {
|
SIN.super_.call(this, type, payload);
|
||||||
SIN.super_.call(this, type, payload);
|
if (typeof type != 'number')
|
||||||
return;
|
return;
|
||||||
};
|
|
||||||
this.data = new Buffer(1 + 1 + payload.length);
|
this.data = new Buffer(1 + 1 + payload.length);
|
||||||
this.encoding('binary');
|
this.encoding('binary');
|
||||||
this.prefix(0x0F); // SIN magic number, in numberspace
|
this.prefix(0x0F); // SIN magic number, in numberspace
|
||||||
|
|
|
@ -33,6 +33,14 @@ describe('SIN', function() {
|
||||||
s.should.equal(a.toString()); // check that validation doesn't change data
|
s.should.equal(a.toString()); // check that validation doesn't change data
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
describe('#SIN', function() {
|
||||||
|
it('should be able to create a new SIN with a version byte', function() {
|
||||||
|
var myhash = bitcore.util.sha256ripe160('test');
|
||||||
|
var sin = new SIN(SIN.SIN_EPHEM, myhash);
|
||||||
|
should.exist(sin);
|
||||||
|
});
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -4,16 +4,11 @@ var chai = chai || require('chai');
|
||||||
var bitcore = bitcore || require('../bitcore');
|
var bitcore = bitcore || require('../bitcore');
|
||||||
var should = chai.should();
|
var should = chai.should();
|
||||||
|
|
||||||
var SINKeyModule = bitcore.SINKey;
|
var SINKey = bitcore.SINKey;
|
||||||
var SINKey;
|
|
||||||
|
|
||||||
|
|
||||||
describe('SINKey', function() {
|
describe('SINKey', function() {
|
||||||
it('should initialze the main object', function() {
|
it('should initialze the main object', function() {
|
||||||
should.exist(SINKeyModule);
|
|
||||||
});
|
|
||||||
it('should be able to create class', function() {
|
|
||||||
SINKey = SINKeyModule;
|
|
||||||
should.exist(SINKey);
|
should.exist(SINKey);
|
||||||
});
|
});
|
||||||
it('should be able to create instance', function() {
|
it('should be able to create instance', function() {
|
||||||
|
@ -24,4 +19,13 @@ describe('SINKey', function() {
|
||||||
should.exist(sk.privKey.public);
|
should.exist(sk.privKey.public);
|
||||||
should.exist(sk.privKey.compressed);
|
should.exist(sk.privKey.compressed);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
describe('#storeObj', function() {
|
||||||
|
it('should give an object', function() {
|
||||||
|
var sinkey = new SINKey();
|
||||||
|
sinkey.generate();
|
||||||
|
var obj = sinkey.storeObj();
|
||||||
|
should.exist(obj);
|
||||||
|
});
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in New Issue