From a045a3afb84df8ad3fddbd7ab4da1a25d1653cf9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jorge=20P=C3=A9rez?= Date: Mon, 13 Jun 2022 15:52:59 -0500 Subject: [PATCH] Chore: Do not send empty entries on Quote Report (#501) * Chore: Do not send empty entries on Quote Report * Changelog --- packages/asset-swapper/CHANGELOG.json | 4 ++++ packages/asset-swapper/src/utils/quote_report_generator.ts | 7 ++++--- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/packages/asset-swapper/CHANGELOG.json b/packages/asset-swapper/CHANGELOG.json index 4826aae8d9..9d5124e0ea 100644 --- a/packages/asset-swapper/CHANGELOG.json +++ b/packages/asset-swapper/CHANGELOG.json @@ -13,6 +13,10 @@ { "note": "Add Velodrome support on Optimism", "pr": 494 + }, + { + "note": "Do not send empty entries on Quote Report", + "pr": 501 } ] }, diff --git a/packages/asset-swapper/src/utils/quote_report_generator.ts b/packages/asset-swapper/src/utils/quote_report_generator.ts index dbef056b6d..f49a095a25 100644 --- a/packages/asset-swapper/src/utils/quote_report_generator.ts +++ b/packages/asset-swapper/src/utils/quote_report_generator.ts @@ -207,7 +207,7 @@ export function generateExtendedQuoteReportSources( ..._.flatten( quotes.dexQuotes.map(dex => dex - .filter(quote => isDexSampleForTotalAmount(quote, amount)) + .filter(quote => isDexSampleFilter(quote, amount)) .map(quote => dexSampleToReportSource(quote, marketOperation)), ), ), @@ -306,8 +306,9 @@ export function dexSampleToReportSource(ds: DexSample, marketOperation: MarketOp * Checks if a DEX sample is the one that represents the whole amount requested by taker * NOTE: this is used for the QuoteReport to filter samples */ -function isDexSampleForTotalAmount(ds: DexSample, amount: BigNumber): boolean { - return ds.input.eq(amount); +function isDexSampleFilter(ds: DexSample, amount: BigNumber): boolean { + // The entry is for the total amont, not a sampler entry && there was liquidity in the source + return ds.input.eq(amount) && ds.output.isGreaterThan(0); } /**