mirror of
https://github.com/XRPLF/rippled.git
synced 2025-11-20 11:05:54 +00:00
UT: Test cross currency bridged payment and fixes.
This commit is contained in:
@@ -335,6 +335,7 @@ buster.testCase("Offer tests", {
|
|||||||
},
|
},
|
||||||
|
|
||||||
"ripple currency conversion : entire offer" :
|
"ripple currency conversion : entire offer" :
|
||||||
|
// mtgox in, XRP out
|
||||||
function (done) {
|
function (done) {
|
||||||
var self = this;
|
var self = this;
|
||||||
var seq;
|
var seq;
|
||||||
@@ -380,7 +381,7 @@ buster.testCase("Offer tests", {
|
|||||||
function (callback) {
|
function (callback) {
|
||||||
self.what = "Verify offer balance.";
|
self.what = "Verify offer balance.";
|
||||||
|
|
||||||
testutils.verify_offer(self.remote, "bob", seq, "500", "100/USD/mtgox", callback);
|
testutils.verify_offer(self.remote, "bob", seq, "100/USD/mtgox", "500", callback);
|
||||||
},
|
},
|
||||||
function (callback) {
|
function (callback) {
|
||||||
self.what = "Alice converts USD to XRP.";
|
self.what = "Alice converts USD to XRP.";
|
||||||
@@ -475,7 +476,7 @@ buster.testCase("Offer tests", {
|
|||||||
function (callback) {
|
function (callback) {
|
||||||
self.what = "Verify offer balance.";
|
self.what = "Verify offer balance.";
|
||||||
|
|
||||||
testutils.verify_offer(self.remote, "bob", seq, "300", "60/USD/mtgox", callback);
|
testutils.verify_offer(self.remote, "bob", seq, "60/USD/mtgox", "300", callback);
|
||||||
},
|
},
|
||||||
function (callback) {
|
function (callback) {
|
||||||
self.what = "Verify balances.";
|
self.what = "Verify balances.";
|
||||||
@@ -696,7 +697,7 @@ buster.testCase("Offer cross currency", {
|
|||||||
function (callback) {
|
function (callback) {
|
||||||
self.what = "Verify offer partially consumed.";
|
self.what = "Verify offer partially consumed.";
|
||||||
|
|
||||||
testutils.verify_offer(self.remote, "carol", seq, "250", "25/USD/mtgox", callback);
|
testutils.verify_offer(self.remote, "carol", seq, "25/USD/mtgox", "250", callback);
|
||||||
},
|
},
|
||||||
], function (error) {
|
], function (error) {
|
||||||
buster.refute(error, self.what);
|
buster.refute(error, self.what);
|
||||||
@@ -704,7 +705,7 @@ buster.testCase("Offer cross currency", {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
"// ripple cross currency bridged payment" :
|
"ripple cross currency bridged payment" :
|
||||||
// alice --> [USD/mtgox --> carol --> XRP] --> [XRP --> dan --> EUR/bitstamp] --> bob
|
// alice --> [USD/mtgox --> carol --> XRP] --> [XRP --> dan --> EUR/bitstamp] --> bob
|
||||||
|
|
||||||
function (done) {
|
function (done) {
|
||||||
@@ -774,6 +775,7 @@ buster.testCase("Offer cross currency", {
|
|||||||
self.remote.transaction()
|
self.remote.transaction()
|
||||||
.payment("alice", "bob", "30/EUR/bitstamp")
|
.payment("alice", "bob", "30/EUR/bitstamp")
|
||||||
.send_max("333/USD/mtgox")
|
.send_max("333/USD/mtgox")
|
||||||
|
.path_add( [ { currency: "XRP" } ])
|
||||||
.on('proposed', function (m) {
|
.on('proposed', function (m) {
|
||||||
// console.log("proposed: %s", JSON.stringify(m));
|
// console.log("proposed: %s", JSON.stringify(m));
|
||||||
|
|
||||||
@@ -781,28 +783,28 @@ buster.testCase("Offer cross currency", {
|
|||||||
})
|
})
|
||||||
.submit();
|
.submit();
|
||||||
},
|
},
|
||||||
// function (callback) {
|
function (callback) {
|
||||||
// self.what = "Verify balances.";
|
self.what = "Verify balances.";
|
||||||
//
|
|
||||||
// testutils.verify_balances(self.remote,
|
testutils.verify_balances(self.remote,
|
||||||
// {
|
{
|
||||||
// "alice" : "470/USD/mtgox",
|
"alice" : "470/USD/mtgox",
|
||||||
// "bob" : "30/EUR/bitstamp",
|
"bob" : "30/EUR/bitstamp",
|
||||||
// "carol" : "30/USD/mtgox",
|
"carol" : "30/USD/mtgox",
|
||||||
// "dan" : "370/EUR/bitstamp",
|
"dan" : "370/EUR/bitstamp",
|
||||||
// },
|
},
|
||||||
// callback);
|
callback);
|
||||||
// },
|
},
|
||||||
// function (callback) {
|
function (callback) {
|
||||||
// self.what = "Verify carol offer partially consumed.";
|
self.what = "Verify carol offer partially consumed.";
|
||||||
//
|
|
||||||
// testutils.verify_offer(self.remote, "carol", seq_carol, "250", "25/USD/mtgox", callback);
|
testutils.verify_offer(self.remote, "carol", seq_carol, "20/USD/mtgox", "200", callback);
|
||||||
// },
|
},
|
||||||
// function (callback) {
|
function (callback) {
|
||||||
// self.what = "Verify dan offer partially consumed.";
|
self.what = "Verify dan offer partially consumed.";
|
||||||
//
|
|
||||||
// testutils.verify_offer(self.remote, "dan", seq_dan, "250", "25/USD/mtgox", callback);
|
testutils.verify_offer(self.remote, "dan", seq_dan, "200", "20/EUR/mtgox", callback);
|
||||||
// },
|
},
|
||||||
], function (error) {
|
], function (error) {
|
||||||
buster.refute(error, self.what);
|
buster.refute(error, self.what);
|
||||||
done();
|
done();
|
||||||
|
|||||||
@@ -326,7 +326,7 @@ var verify_balances = function (remote, balances, callback) {
|
|||||||
// --> seq: sequence number of creating transaction.
|
// --> seq: sequence number of creating transaction.
|
||||||
// --> taker_gets: json amount
|
// --> taker_gets: json amount
|
||||||
// --> taker_pays: json amount
|
// --> taker_pays: json amount
|
||||||
var verify_offer = function (remote, owner, seq, taker_gets, taker_pays, callback) {
|
var verify_offer = function (remote, owner, seq, taker_pays, taker_gets, callback) {
|
||||||
assert(6 === arguments.length);
|
assert(6 === arguments.length);
|
||||||
|
|
||||||
remote.request_ledger_entry('offer')
|
remote.request_ledger_entry('offer')
|
||||||
@@ -349,12 +349,12 @@ var verify_offer_not_found = function (remote, owner, seq, callback) {
|
|||||||
remote.request_ledger_entry('offer')
|
remote.request_ledger_entry('offer')
|
||||||
.offer_id(owner, seq)
|
.offer_id(owner, seq)
|
||||||
.on('success', function (m) {
|
.on('success', function (m) {
|
||||||
console.log("verify_no_offer: found offer: %s", JSON.stringify(m));
|
console.log("verify_offer_not_found: found offer: %s", JSON.stringify(m));
|
||||||
|
|
||||||
callback('entryFound');
|
callback('entryFound');
|
||||||
})
|
})
|
||||||
.on('error', function (m) {
|
.on('error', function (m) {
|
||||||
// console.log("verify_no_offer: success: %s", JSON.stringify(m));
|
// console.log("verify_offer_not_found: success: %s", JSON.stringify(m));
|
||||||
|
|
||||||
callback('remoteError' !== m.error
|
callback('remoteError' !== m.error
|
||||||
|| 'entryNotFound' !== m.remote.error);
|
|| 'entryNotFound' !== m.remote.error);
|
||||||
|
|||||||
Reference in New Issue
Block a user