lamassu-server/test/unit/traderTickerTest.js

52 lines
1.3 KiB
JavaScript

/*global describe, it */
'use strict';
var assert = require('chai').assert;
var Trader = require('../../lib/trader.js');
var PostgresqlInterface = require('../../lib/postgresql_interface.js');
var db = 'psql://lamassu:lamassu@localhost/lamassu-test';
var psqlInterface = new PostgresqlInterface(db);
var CURRENCY = 'USD';
describe('trader/send', function () {
var trader = new Trader(psqlInterface);
trader.config = {
exchanges: {
settings: { currency: CURRENCY }
}
};
it('should call `balance` on the transfer exchange', function (done) {
trader.transferExchange = {
balance: function (callback) {
callback(null, 100);
}
};
trader.pollBalance(function (err) {
assert.notOk(err);
assert.equal(trader.balance.transferBalance, 100);
assert.ok(trader.balance.timestamp);
done();
});
});
it('should call `ticker` on the ticker exchange', function (done) {
trader.tickerExchange = {
ticker: function (currencies, callback) {
assert.equal(currencies[0], CURRENCY);
callback(null, {USD: {rate: 100}});
}
};
trader.pollRate(function (err) {
assert.notOk(err);
var rate = trader.rate(CURRENCY);
assert.equal(rate.rate, 100);
assert.ok(rate.timestamp);
done();
});
});
});