Browse Source

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.
patch-2
Ryan X. Charles 11 years ago
parent
commit
098c613cb0
  1. 5
      lib/SIN.js
  2. 8
      test/test.SIN.js
  3. 16
      test/test.SINKey.js

5
lib/SIN.js

@ -3,10 +3,9 @@ var EncodedData = require('../util/EncodedData');
var util = require('util');
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;
};
this.data = new Buffer(1 + 1 + payload.length);
this.encoding('binary');
this.prefix(0x0F); // SIN magic number, in numberspace

8
test/test.SIN.js

@ -33,6 +33,14 @@ describe('SIN', function() {
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);
});
});
});

16
test/test.SINKey.js

@ -4,16 +4,11 @@ var chai = chai || require('chai');
var bitcore = bitcore || require('../bitcore');
var should = chai.should();
var SINKeyModule = bitcore.SINKey;
var SINKey;
var SINKey = bitcore.SINKey;
describe('SINKey', function() {
it('should initialze the main object', function() {
should.exist(SINKeyModule);
});
it('should be able to create class', function() {
SINKey = SINKeyModule;
should.exist(SINKey);
});
it('should be able to create instance', function() {
@ -24,4 +19,13 @@ describe('SINKey', function() {
should.exist(sk.privKey.public);
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…
Cancel
Save