Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sdk 373 add method to return rfq bid and ask amounts for structure #241

Conversation

Nagaprasadvr
Copy link
Contributor

Addition : Add retrieveBidAndAsk which return ask , bid after checks along with conversions needed as an input for RespondToRfq operation.

Test:

  1. Added few test cases covering buy ,sell , two way rfqs to retreive bid and ask

@changeset-bot
Copy link

changeset-bot bot commented Sep 6, 2023

⚠️ No Changeset found

Latest commit: a2e0444

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

default:
break;
}
} else if (size.type === 'fixed-quote') {
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Similar blocks of code found in 2 locations. Consider refactoring.

*/
export const retrieveBidAndAskHandler: SyncOperationHandler<RetrieveBidAndAsk> =
{
handle: (operation: RetrieveBidAndAsk): RetrieveBidAndAskOutput => {
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Function handle has 124 lines of code (exceeds 25 allowed). Consider refactoring.

throw new Error('ask and bid both cannot be null');
}

if (size.type === 'fixed-base') {
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Similar blocks of code found in 2 locations. Consider refactoring.

*/
export const retrieveBidAndAskHandler: SyncOperationHandler<RetrieveBidAndAsk> =
{
handle: (operation: RetrieveBidAndAsk): RetrieveBidAndAskOutput => {
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Function handle has a Cognitive Complexity of 65 (exceeds 5 allowed). Consider refactoring.

@linear
Copy link

linear bot commented Sep 6, 2023

SDK-373 Add method to return RFQ bid and ask amounts for structure

See:

// Create and return bid and ask objects for response
const retrieveBidAndAsk = () => { bid, ask }

@Nagaprasadvr Nagaprasadvr marked this pull request as draft September 12, 2023 06:53
ask.legsMultiplier
);
}
if (bid?.price && bid.legsMultiplier) {
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Avoid deeply nested control flow statements.

*/
export const retrieveBidAndAskHandler: SyncOperationHandler<RetrieveBidAndAsk> =
{
handle: (operation: RetrieveBidAndAsk): RetrieveBidAndAskOutput => {
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Function handle has 105 lines of code (exceeds 25 allowed). Consider refactoring.

} else if (size.type === 'open') {
switch (rfq.orderType) {
case 'buy':
if (ask?.price && ask.legsMultiplier) {
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Avoid deeply nested control flow statements.

}
break;
case 'sell':
if (bid?.price && bid.legsMultiplier) {
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Avoid deeply nested control flow statements.

}
break;
case 'two-way':
if (ask?.price && ask.legsMultiplier) {
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Avoid deeply nested control flow statements.

 into sdk-373-add-method-to-return-rfq-bid-and-ask-amounts-for-structure
@Nagaprasadvr Nagaprasadvr marked this pull request as ready for review September 12, 2023 10:37
*/
export const retrieveBidAndAskHandler: SyncOperationHandler<RetrieveBidAndAsk> =
{
handle: (operation: RetrieveBidAndAsk): RetrieveBidAndAskOutput => {
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Function handle has a Cognitive Complexity of 47 (exceeds 5 allowed). Consider refactoring.

}
} else if (size.type === 'open') {
switch (rfq.orderType) {
case 'buy':
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Similar blocks of code found in 2 locations. Consider refactoring.

);
}
break;
case 'sell':
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Similar blocks of code found in 2 locations. Consider refactoring.

}
} else if (size.type === 'fixed-quote') {
switch (rfq.orderType) {
case 'buy':
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Similar blocks of code found in 2 locations. Consider refactoring.

);
}
break;
case 'sell':
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Similar blocks of code found in 2 locations. Consider refactoring.

@codeclimate
Copy link

codeclimate bot commented Sep 12, 2023

Code Climate has analyzed commit a2e0444 and detected 10 issues on this pull request.

Here's the issue category breakdown:

Category Count
Complexity 6
Duplication 4

View more on Code Climate.

@pindaroso pindaroso closed this Sep 20, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants