mirror of https://github.com/BTCPrivate/copay.git
add basic integration with wallet
...and further tests and stuff
This commit is contained in:
parent
01ca3763d8
commit
c1ff96ab1b
31
API.js
31
API.js
|
@ -1,6 +1,4 @@
|
|||
var imports = require('soop').imports();
|
||||
var PublicKeyRing = imports.PublicKeyRing || require('./js/models/core/PublicKeyRing');
|
||||
//var Wallet = imports.Wallet || require('../js/models/core/Wallet');
|
||||
|
||||
var API = function(opts) {
|
||||
this._init(opts);
|
||||
|
@ -10,20 +8,25 @@ API.prototype._init = function(opts) {
|
|||
var self = this;
|
||||
|
||||
opts = opts ? opts : {};
|
||||
self.opts = opts;
|
||||
|
||||
self.optsList = [
|
||||
'publicKeyRing',
|
||||
'wallet'
|
||||
];
|
||||
var Wallet = require('soop').load('./js/models/core/Wallet', {
|
||||
Storage: opts.Storage ? opts.Storage : require('./test/FakeStorage'),
|
||||
Network: opts.Network ? opts.Network : require('./js/models/Network/WebRTC'),
|
||||
Blockchain: opts.Blockchain ? opts.Blockchain : require('./js/models/Blockchain/Insight')
|
||||
});
|
||||
|
||||
self.opts = {};
|
||||
for (var a in self.optsList) {
|
||||
if (opts.hasOwnProperty(a))
|
||||
self.opts[a] = opts[a];
|
||||
}
|
||||
var config = {
|
||||
wallet: {
|
||||
requiredCopayers: opts.requiredCopayers ? opts.requiredCopayers : 3,
|
||||
totalCopayers: opts.totalCopayers ? opts.totalCopayers : 5,
|
||||
}
|
||||
};
|
||||
|
||||
self.publicKeyRing = self.opts.publicKeyRing ? self.opts.publicKeyRing : new PublicKeyRing();
|
||||
//self.wallet = self.opts.wallet ? self.opts.wallet : new Wallet();
|
||||
var walletConfig = opts.walletConfig ? opts.walletConfig : config;
|
||||
var walletOpts = opts.walletOpts ? opts.walletOpts : {};
|
||||
|
||||
self.wallet = self.opts.wallet ? self.opts.wallet : Wallet.factory.create(walletConfig, walletOpts);
|
||||
};
|
||||
|
||||
API._coerceArgTypes = function(args, argTypes) {
|
||||
|
@ -174,7 +177,7 @@ API.prototype.getCommands.argTypes =
|
|||
API.prototype.getPublicKeyRingId = function getPublicKeyRingId(callback) {
|
||||
var self = this;
|
||||
|
||||
return callback(null, self.publicKeyRing.id);
|
||||
return callback(null, self.wallet.publicKeyRing.walletId);
|
||||
};
|
||||
|
||||
API.prototype.getPublicKeyRingId.argTypes =
|
||||
|
|
|
@ -46,4 +46,39 @@ describe('API', function() {
|
|||
}
|
||||
});
|
||||
|
||||
describe('#echo', function() {
|
||||
it('should echo a string', function(done) {
|
||||
var api = new API();
|
||||
var str = 'mystr';
|
||||
api.echo(str, function(err, result) {
|
||||
result.should.equal(str);
|
||||
done();
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
describe('#echoNumber', function() {
|
||||
it('should echo a number', function(done) {
|
||||
var api = new API();
|
||||
var num = 500;
|
||||
api.echo(num, function(err, result) {
|
||||
result.should.equal(num);
|
||||
(typeof result).should.equal('number');
|
||||
done();
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
describe('#echoObject', function() {
|
||||
it('should echo an object', function(done) {
|
||||
var api = new API();
|
||||
var obj = {test:'test'};
|
||||
api.echo(obj, function(err, result) {
|
||||
result.test.should.equal(obj.test);
|
||||
(typeof result).should.equal('object');
|
||||
done();
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
});
|
||||
|
|
Loading…
Reference in New Issue