insight-ui-zcash/test/integration/02-transactionouts.js

60 lines
1.5 KiB
JavaScript
Raw Normal View History

2014-01-29 10:10:36 -08:00
#!/usr/bin/env node
'use strict';
process.env.NODE_ENV = process.env.NODE_ENV || 'development';
2014-02-03 22:41:32 -08:00
var
2014-01-29 10:10:36 -08:00
assert = require('assert'),
fs = require('fs'),
util = require('util'),
async = require('async'),
config = require('../../config/config'),
2014-02-05 08:02:51 -08:00
TransactionDb = require('../../lib/TransactionDb').class();
2014-01-29 10:10:36 -08:00
2014-02-03 22:41:32 -08:00
var spentValid = JSON.parse(fs.readFileSync('test/integration/spent.json'));
2014-01-29 10:10:36 -08:00
2014-02-05 06:23:41 -08:00
var txDb;
2014-02-03 22:41:32 -08:00
describe('TransactionDb Expenses', function(){
2014-01-29 10:10:36 -08:00
2014-02-05 06:23:41 -08:00
before(function(c) {
txDb = new TransactionDb();
2014-01-29 10:10:36 -08:00
// lets spend!
async.each(Object.keys(spentValid),
function(txid,c_out) {
async.each(spentValid[txid],
function(i,c_in) {
2014-02-05 06:23:41 -08:00
txDb.createFromArray([i.txid], null, function(err) {
2014-01-29 10:10:36 -08:00
return c_in();
});
},
function(err) {
return c_out();
}
);
},
function(err) {
2014-02-05 06:23:41 -08:00
return c();
2014-01-29 10:10:36 -08:00
}
);
});
Object.keys(spentValid).forEach( function(txid) {
it('test result of spending tx ' + txid, function(done) {
var s = spentValid[txid];
var c=0;
2014-02-05 06:23:41 -08:00
txDb.fromTxId( txid, function(err, readItems) {
2014-01-29 10:10:36 -08:00
s.forEach( function(v) {
2014-02-03 22:41:32 -08:00
assert.equal(readItems[c].spendTxId,v.txid);
2014-01-29 10:10:36 -08:00
assert.equal(readItems[c].spendIndex,v.n);
c++;
});
done();
});
});
});
});