mirror of
https://github.com/XRPLF/rippled.git
synced 2025-12-01 16:35:53 +00:00
Add quality to account_offers
This commit is contained in:
committed by
Vinnie Falco
parent
361f1da5b8
commit
d8d51e8103
91
test/account_offers-test.js
Normal file
91
test/account_offers-test.js
Normal file
@@ -0,0 +1,91 @@
|
||||
/* -------------------------------- REQUIRES -------------------------------- */
|
||||
|
||||
var assert = require('assert-diff');
|
||||
var lodash = require('lodash');
|
||||
|
||||
var testutils = require('./testutils');
|
||||
var LedgerState = require('./ledger-state').LedgerState;
|
||||
|
||||
var config = testutils.init_config();
|
||||
// We just use equal instead of strictEqual everywhere.
|
||||
assert.options.strict = true;
|
||||
|
||||
/* ---------------------------------- TEST ---------------------------------- */
|
||||
|
||||
function makeSuite(name, ledger_state, tests) {
|
||||
suite(name, function() {
|
||||
// build_(setup|teardown) utils functions set state on this context var.
|
||||
var context = {};
|
||||
|
||||
// This runs only once
|
||||
suiteSetup(function(done) {
|
||||
testutils.build_setup().call(context, function() {
|
||||
var ledger = new LedgerState(ledger_state,
|
||||
assert, context.remote,
|
||||
config);
|
||||
// Run the ledger setup util. This compiles the declarative description
|
||||
// into a series of transactions and executes them.
|
||||
ledger.setup(lodash.noop /*logger*/, function(){
|
||||
done();
|
||||
})
|
||||
});
|
||||
});
|
||||
|
||||
suiteTeardown(function(done) {
|
||||
testutils.build_teardown().call(context, done);
|
||||
});
|
||||
|
||||
lodash.forOwn(tests, function(func, name) {
|
||||
test(name, function(done) {
|
||||
func.call(this, context.remote, context, done);
|
||||
});
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
makeSuite (
|
||||
'account_offers',
|
||||
{
|
||||
accounts: {
|
||||
G1 : {balance: ["1000.0"]},
|
||||
|
||||
bob : {
|
||||
balance: ["1000.0", "1000/USD/G1"],
|
||||
// these offers will be in `Sequence`
|
||||
offers: [["100.0", "1/USD/bob"],
|
||||
["100.0", "1/USD/G1"],
|
||||
["10.0", "2/USD/G1"]]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
quality: function(remote, _, done) {
|
||||
remote.requestAccountOffers({account: 'bob'}, function(err, response) {
|
||||
var expected = [
|
||||
{"flags": 65536,
|
||||
"quality": "100000000",
|
||||
"seq": 3,
|
||||
"taker_gets": {"currency": "USD",
|
||||
"issuer": "rPMh7Pi9ct699iZUTWaytJUoHcJ7cgyziK",
|
||||
"value": "1"},
|
||||
"taker_pays": "100000000"},
|
||||
{"flags": 65536,
|
||||
"quality": "100000000",
|
||||
"seq": 4,
|
||||
"taker_gets": {"currency": "USD",
|
||||
"issuer": "r32rQHyesiTtdWFU7UJVtff4nCR5SHCbJW",
|
||||
"value": "1"},
|
||||
"taker_pays": "100000000"},
|
||||
{"flags": 65536,
|
||||
"quality": "5000000",
|
||||
"seq": 5,
|
||||
"taker_gets": {"currency": "USD",
|
||||
"issuer": "r32rQHyesiTtdWFU7UJVtff4nCR5SHCbJW",
|
||||
"value": "2"},
|
||||
"taker_pays": "10000000"}];
|
||||
|
||||
assert.deepEqual(response.offers, expected);
|
||||
done();
|
||||
});
|
||||
}}
|
||||
);
|
||||
Reference in New Issue
Block a user