RippleAPI: Add data property to error object

This commit is contained in:
Alan Cohen
2015-09-17 15:06:12 -07:00
parent 778f59b4fd
commit 0c9aea454e
2 changed files with 9 additions and 3 deletions

View File

@@ -52,7 +52,7 @@ type Wrapper = (data: any) => any
function composeAsync(wrapper: Wrapper, callback: Callback): Callback { function composeAsync(wrapper: Wrapper, callback: Callback): Callback {
return function(error, data) { return function(error, data) {
if (error) { if (error) {
callback(error); callback(error, data);
return; return;
} }
let result; let result;
@@ -66,10 +66,15 @@ function composeAsync(wrapper: Wrapper, callback: Callback): Callback {
}; };
} }
function convertErrors(callback: () => void): () => void { function convertErrors(callback: Callback): () => void {
return function(error, data) { return function(error, data) {
if (error && !(error instanceof errors.RippleError)) { if (error && !(error instanceof errors.RippleError)) {
callback(new errors.RippleError(error)); const error_ = new errors.RippleError(error);
error_.data = data;
callback(error_, data);
} else if (error) {
error.data = data;
callback(error, data);
} else { } else {
callback(error, data); callback(error, data);
} }

View File

@@ -160,6 +160,7 @@ describe('RippleAPI', function() {
assert(false, 'Should throw RippleError'); assert(false, 'Should throw RippleError');
}).catch(error => { }).catch(error => {
assert(error instanceof this.api.errors.RippleError); assert(error instanceof this.api.errors.RippleError);
assert(error.data);
}); });
}); });