make mocha browser tests all run with no console errors

...except Wallet and WalletFactory.
This commit is contained in:
Ryan X. Charles 2014-06-15 20:55:23 -07:00
parent 9e79e58c35
commit f7e34acae8
14 changed files with 85 additions and 39 deletions

View File

@ -1,4 +1,3 @@
// core
module.exports.PublicKeyRing = require('./js/models/core/PublicKeyRing');
module.exports.TxProposals = require('./js/models/core/TxProposals');
@ -14,11 +13,6 @@ var Insight = module.exports.Insight = require('./js/models/blockchain/Insight')
var StorageLocalPlain = module.exports.StorageLocalPlain = require('./js/models/storage/LocalPlain');
var StorageLocalEncrypted = module.exports.StorageLocalEncrypted = require('./js/models/storage/LocalEncrypted');
var WalletFactory = require('soop').load('./js/models/core/WalletFactory',{
Network: WebRTC,
Blockchain: Insight,
Storage: StorageLocalEncrypted,
});
module.exports.WalletFactory = WalletFactory;
module.exports.WalletFactory = require('./js/models/core/WalletFactory');
module.exports.version = require('./version');
module.exports.API = require('./API');

View File

@ -1,15 +1,17 @@
'use strict';
var imports = require('soop').imports();
var Storage = imports.Storage;
var Network = imports.Network;
var Blockchain = imports.Blockchain;
var TxProposals = require('./TxProposals');
var PublicKeyRing = require('./PublicKeyRing');
var PrivateKey = require('./PrivateKey');
var Wallet = require('./Wallet');
var WebRTC = module.exports.WebRTC = require('../network/WebRTC');
var Insight = module.exports.Insight = require('../blockchain/Insight');
//var StorageLocalPlain = module.exports.StorageLocalPlain = require('../storage/LocalPlain');
var StorageLocalEncrypted = module.exports.StorageLocalEncrypted = require('../storage/LocalEncrypted');
/*
* WalletFactory
*
@ -19,9 +21,13 @@ function WalletFactory(config, version) {
var self = this;
config = config || {};
this.storage = new Storage(config.storage);
this.network = new Network(config.network);
this.blockchain = new Blockchain(config.blockchain);
this.Storage = config.Storage || StorageLocalEncrypted;
this.Network = config.Network || WebRTC;
this.Blockchain = config.Blockchain || Insight;
this.storage = new this.Storage(config.storage);
this.network = new this.Network(config.network);
this.blockchain = new this.Blockchain(config.blockchain);
this.networkName = config.networkName;
this.verbose = config.verbose;

View File

@ -14,15 +14,11 @@
<script>mocha.setup('bdd')</script>
<script src="../lib/bitcore/browser/bundle.js"></script>
<script src="../js/copayBundle.js"></script>
<script>
var copay = require('copay');
</script>
<script src="test.blockchain.Insight.js"></script>
<script src="test.PrivateKey.js"></script>
<script src="test.PublicKeyRing.js"></script>
<script src="test.storage.LocalEncrypted.js"></script>
<script src="test.storage.LocalPlain.js"></script>
<script src="test.TxProposals.js"></script>
<script src="test.Wallet.js"></script>
<script src="test.Walletfactory.js"></script>
<script src="test.performance.js"></script>

View File

@ -2,7 +2,11 @@
var chai = chai || require('chai');
var should = chai.should();
var copay = copay || require('../copay');
try {
var copay = require('copay'); //browser
} catch (e) {
var copay = require('../copay'); //node
}
var API = API || copay.API;
var Storage = Storage || require('../test/mocks/FakeStorage');

View File

@ -5,7 +5,11 @@ var should = chai.should();
var bitcore = bitcore || require('bitcore');
var Address = bitcore.Address;
var buffertools = bitcore.buffertools;
var copay = copay || require('../copay');
try {
var copay = require('copay'); //browser
} catch (e) {
var copay = require('../copay'); //node
}
var PublicKeyRing = copay.PublicKeyRing;
var AddressIndex = copay.AddressIndex;

View File

@ -4,7 +4,11 @@ var chai = chai || require('chai');
var should = chai.should();
var bitcore = bitcore || require('bitcore');
var buffertools = bitcore.buffertools;
var copay = copay || require('../copay');
try {
var copay = require('copay'); //browser
} catch (e) {
var copay = require('../copay'); //node
}
var Passphrase = copay.Passphrase;

View File

@ -7,11 +7,15 @@ var Transaction = bitcore.Transaction;
var buffertools = bitcore.buffertools;
var WalletKey = bitcore.WalletKey;
var Key = bitcore.Key;
var bignum = bitcore.bignum;
var bignum = bitcore.Bignum;
var networks = bitcore.networks;
var Address = bitcore.Address;
var BitcorePrivateKey = bitcore.PrivateKey;
var copay = copay || require('../copay');
try {
var copay = require('copay'); //browser
} catch (e) {
var copay = require('../copay'); //node
}
var PrivateKey = copay.PrivateKey || require('../js/models/core/PrivateKey');
var config = {

View File

@ -5,7 +5,11 @@ var should = chai.should();
var bitcore = bitcore || require('bitcore');
var Address = bitcore.Address;
var buffertools = bitcore.buffertools;
var copay = copay || require('../copay');
try {
var copay = require('copay'); //browser
} catch (e) {
var copay = require('../copay'); //node
}
var PublicKeyRing = copay.PublicKeyRing;
var aMasterPubKey = 'tprv8ZgxMBicQKsPdSVTiWXEqCCzqRaRr9EAQdn5UVMpT9UHX67Dh1FmzEMbavPumpAicsUm2XvC6NTdcWB89yN5DUWx5HQ7z3KByUg7Ht74VRZ';

View File

@ -3,7 +3,11 @@
var chai = chai || require('chai');
var should = chai.should();
var bitcore = bitcore || require('bitcore');
var copay = copay || require('../copay');
try {
var copay = require('copay'); //browser
} catch (e) {
var copay = require('../copay'); //node
}
var Structure = require('../js/models/core/Structure');
describe('Structure model', function() {

View File

@ -12,7 +12,11 @@ var Script = bitcore.Script;
var Builder = bitcore.TransactionBuilder;
var util = bitcore.util;
var networks = bitcore.networks;
var copay = copay || require('../copay');
try {
var copay = require('copay'); //browser
} catch (e) {
var copay = require('../copay'); //node
}
var fakeStorage = copay.FakeStorage;
var PrivateKey = copay.PrivateKey || require('../js/models/PrivateKey');
var TxProposals = copay.TxProposals || require('../js/models/TxProposal');
@ -126,7 +130,7 @@ describe('TxProposals model', function() {
var createTx = function(toAddress, amountSatStr, utxos, opts, priv, pkr) {
opts = opts || {};
var amountSat = bitcore.bignum(amountSatStr);
var amountSat = bitcore.Bignum(amountSatStr);
if (!pkr.isComplete()) {
throw new Error('publicKeyRing is not complete');

View File

@ -3,7 +3,11 @@
var chai = chai || require('chai');
var should = chai.should();
var sinon = require('sinon');
var copay = copay || require('../copay');
try {
var copay = require('copay'); //browser
} catch (e) {
var copay = require('../copay'); //node
}
var Wallet = require('../js/models/core/Wallet');
var Storage = require('./mocks/FakeStorage');
var Network = require('./mocks/FakeNetwork');

View File

@ -7,17 +7,17 @@ var FakeNetwork = require('./mocks/FakeNetwork');
var Insight = require('../js/models/blockchain/Insight');
var FakeStorage = require('./mocks/FakeStorage');
var WalletFactory = typeof copay === 'undefined' ? require('soop').load('../js/models/core/WalletFactory', {
Network: FakeNetwork,
Blockchain: Insight,
Storage: FakeStorage,
}) : copay.WalletFactory;
try {
var copay = require('copay'); //browser
} catch (e) {
var copay = require('../copay'); //node
}
var WalletFactory = require('../js/models/core/WalletFactory');
var blanket = require("blanket")({
"pattern": "/js/"
});
var addCopayers = function(w) {
for (var i = 0; i < 4; i++) {
w.publicKeyRing.addCopayer();
@ -26,11 +26,15 @@ var addCopayers = function(w) {
describe('WalletFactory model', function() {
var config = {
Network: FakeNetwork,
Blockchain: Insight,
Storage: FakeStorage,
wallet: {
requiredCopayers: 3,
totalCopayers: 5,
spendUnconfirmed: 1,
reconnectDelay: 100,
},
blockchain: {
host: 'test.insight.is',
@ -82,6 +86,9 @@ describe('WalletFactory model', function() {
it('BIP32 length problem', function() {
var sconfig = {
Network: FakeNetwork,
Blockchain: Insight,
Storage: FakeStorage,
"networkName": "testnet",
"network": {
"key": "g23ihfh82h35rf",

View File

@ -3,7 +3,11 @@
var chai = chai || require('chai');
var should = chai.should();
var bitcore = bitcore || require('bitcore');
var copay = copay || require('../copay');
try {
var copay = require('copay'); //browser
} catch (e) {
var copay = require('../copay'); //node
}
var Insight = copay.Insight || require('../js/models/blockchain/Insight');
var ID = '933bf321393459b7';

View File

@ -50,7 +50,9 @@ var createBundle = function(opts) {
});
b.require('./version');
// b.external('bitcore');
b.require('./js/models/core/WalletFactory');
b.require('./js/models/core/WalletFactory', {
expose: '../js/models/core/WalletFactory'
});
b.require('./js/models/core/Wallet');
b.require('./js/models/core/Wallet', {
expose: '../js/models/core/Wallet'
@ -58,6 +60,9 @@ var createBundle = function(opts) {
b.require('./test/mocks/FakeStorage', {
expose: './mocks/FakeStorage'
});
b.require('./test/mocks/FakeBlockchain', {
expose: './mocks/FakeBlockchain'
});
b.require('./js/models/core/Wallet', {
expose: '../js/models/core/Wallet'
});
@ -81,10 +86,12 @@ var createBundle = function(opts) {
});
if (opts.dontminify) {
b.require('sinon', {
expose: '../sinon'
});
//include dev dependencies
b.require('sinon');
b.require('blanket');
b.require('soop');
}
if (!opts.dontminify) {
b.transform({
global: true
@ -101,7 +108,7 @@ if (require.main === module) {
var program = require('commander');
program
.version('0.0.1')
.option('-d, --dontminify', 'Don\'t minify the code.')
.option('-d, --dontminify', 'Development. Don\'t minify the code.')
.option('-o, --stdout', 'Specify output as stdout')
.parse(process.argv);