Skip to content

Commit

Permalink
#137 : Re-enabled testGettingExchangeBuyingFeeSuccessfully
Browse files Browse the repository at this point in the history
  • Loading branch information
gazbert committed Mar 30, 2022
1 parent 8180726 commit df8c3cb
Showing 1 changed file with 23 additions and 105 deletions.
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/*
* The MIT License (MIT)
*
* Copyright (c) 2015 Gareth Jon Lynch
* Copyright (c) 2022 gazbert
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in
Expand Down Expand Up @@ -122,8 +122,13 @@ public class TestTryModeExchangeAdapter extends AbstractExchangeAdapter {

private static final BigDecimal PERCENTAGE_OF_SELL_ORDER_TAKEN_FOR_EXCHANGE_FEE =
new BigDecimal("0.0025");
private static final BigDecimal PERCENTAGE_OF_BUY_ORDER_TAKEN_FOR_EXCHANGE_FEE =
new BigDecimal("0.0024");

private static final String MOCKED_GET_PERCENTAGE_OF_SELL_ORDER_TAKEN_FOR_EXCHANGE_FEE =
"getPercentageOfSellOrderTakenForExchangeFee";
private static final String MOCKED_GET_PERCENTAGE_OF_BUY_ORDER_TAKEN_FOR_EXCHANGE_FEE =
"getPercentageOfBuyOrderTakenForExchangeFee";
private static final String MOCKED_CREATE_DELEGATE_EXCHANGE_ADAPTER =
"createDelegateExchangeAdapter";
private static final String MOCKED_CREATE_REQUEST_PARAM_MAP_METHOD = "createRequestParamMap";
Expand Down Expand Up @@ -783,73 +788,34 @@ public void testGettingBalanceInfoHandlesUnexpectedException() throws Exception
// Get Exchange Fees for Buy orders tests
// --------------------------------------------------------------------------

@Ignore("TODO: Enable test")
@Test
public void testGettingExchangeBuyingFeeSuccessfully() throws Exception {
final byte[] encoded = Files.readAllBytes(Paths.get(BALANCE_JSON_RESPONSE));
final ExchangeHttpResponse exchangeResponse =
new ExchangeHttpResponse(200, "OK", new String(encoded, StandardCharsets.UTF_8));

final BitstampExchangeAdapter exchangeAdapter =
final BitstampExchangeAdapter delegateExchangeAdapter =
PowerMock.createPartialMockAndInvokeDefaultConstructor(
BitstampExchangeAdapter.class, MOCKED_SEND_AUTHENTICATED_REQUEST_TO_EXCHANGE_METHOD);
PowerMock.expectPrivate(
exchangeAdapter,
MOCKED_SEND_AUTHENTICATED_REQUEST_TO_EXCHANGE_METHOD,
eq(BALANCE),
eq(null))
.andReturn(exchangeResponse);

PowerMock.replayAll();
exchangeAdapter.init(exchangeConfig);

final BigDecimal buyPercentageFee =
exchangeAdapter.getPercentageOfBuyOrderTakenForExchangeFee(MARKET_ID);
assertEquals(0, buyPercentageFee.compareTo(new BigDecimal("0.0025")));
BitstampExchangeAdapter.class,
MOCKED_GET_PERCENTAGE_OF_BUY_ORDER_TAKEN_FOR_EXCHANGE_FEE);

PowerMock.verifyAll();
}
PowerMock.expectPrivate(
delegateExchangeAdapter,
MOCKED_GET_PERCENTAGE_OF_BUY_ORDER_TAKEN_FOR_EXCHANGE_FEE,
eq(MARKET_ID))
.andReturn(PERCENTAGE_OF_BUY_ORDER_TAKEN_FOR_EXCHANGE_FEE);

@Ignore("TODO: Enable test")
@Test(expected = ExchangeNetworkException.class)
public void testGettingExchangeBuyingFeeHandlesTimeoutException() throws Exception {
final BitstampExchangeAdapter exchangeAdapter =
final TryModeExchangeAdapter tryModeExchangeAdapter =
PowerMock.createPartialMockAndInvokeDefaultConstructor(
BitstampExchangeAdapter.class, MOCKED_SEND_AUTHENTICATED_REQUEST_TO_EXCHANGE_METHOD);
PowerMock.expectPrivate(
exchangeAdapter,
MOCKED_SEND_AUTHENTICATED_REQUEST_TO_EXCHANGE_METHOD,
eq(BALANCE),
eq(null))
.andThrow(
new ExchangeNetworkException(
" After 18 months in deep space, "
+ "it's nice to see that you've learned some humility."));
TryModeExchangeAdapter.class, MOCKED_CREATE_DELEGATE_EXCHANGE_ADAPTER);

PowerMock.replayAll();
exchangeAdapter.init(exchangeConfig);
PowerMock.expectPrivate(tryModeExchangeAdapter, MOCKED_CREATE_DELEGATE_EXCHANGE_ADAPTER)
.andReturn(delegateExchangeAdapter);

exchangeAdapter.getPercentageOfBuyOrderTakenForExchangeFee(MARKET_ID);
PowerMock.verifyAll();
}
PowerMock.replayAll();

@Ignore("TODO: Enable test")
@Test(expected = TradingApiException.class)
public void testGettingExchangeBuyingFeeHandlesUnexpectedException() throws Exception {
final BitstampExchangeAdapter exchangeAdapter =
PowerMock.createPartialMockAndInvokeDefaultConstructor(
BitstampExchangeAdapter.class, MOCKED_SEND_AUTHENTICATED_REQUEST_TO_EXCHANGE_METHOD);
PowerMock.expectPrivate(
exchangeAdapter,
MOCKED_SEND_AUTHENTICATED_REQUEST_TO_EXCHANGE_METHOD,
eq(BALANCE),
eq(null))
.andThrow(new IllegalStateException(" V.I.N.CENT, were you programmed to bug me?"));
tryModeExchangeAdapter.init(exchangeConfig);

PowerMock.replayAll();
exchangeAdapter.init(exchangeConfig);
final BigDecimal buyPercentageFee =
delegateExchangeAdapter.getPercentageOfBuyOrderTakenForExchangeFee(MARKET_ID);
assertEquals(0, buyPercentageFee.compareTo(PERCENTAGE_OF_BUY_ORDER_TAKEN_FOR_EXCHANGE_FEE));

exchangeAdapter.getPercentageOfBuyOrderTakenForExchangeFee(MARKET_ID);
PowerMock.verifyAll();
}

Expand Down Expand Up @@ -888,54 +854,6 @@ public void testGettingExchangeSellingFeeSuccessfully() throws Exception {
PowerMock.verifyAll();
}

@Ignore("TODO: Enable test")
@Test(expected = ExchangeNetworkException.class)
public void testGettingExchangeSellingFeeHandlesTimeoutException() throws Exception {
final BitstampExchangeAdapter exchangeAdapter =
PowerMock.createPartialMockAndInvokeDefaultConstructor(
BitstampExchangeAdapter.class, MOCKED_SEND_AUTHENTICATED_REQUEST_TO_EXCHANGE_METHOD);
PowerMock.expectPrivate(
exchangeAdapter,
MOCKED_SEND_AUTHENTICATED_REQUEST_TO_EXCHANGE_METHOD,
eq(BALANCE),
eq(null))
.andThrow(
new ExchangeNetworkException(
"Yes. A most destructive force - "
+ "in the universe, Harry. Nothing can escape it, not even light."));

PowerMock.replayAll();
exchangeAdapter.init(exchangeConfig);

exchangeAdapter.getPercentageOfSellOrderTakenForExchangeFee(MARKET_ID);
PowerMock.verifyAll();
}

@Ignore("TODO: Enable test")
@Test(expected = TradingApiException.class)
public void testGettingExchangeSellingFeeHandlesUnexpectedException() throws Exception {
final BitstampExchangeAdapter exchangeAdapter =
PowerMock.createPartialMockAndInvokeDefaultConstructor(
BitstampExchangeAdapter.class, MOCKED_SEND_AUTHENTICATED_REQUEST_TO_EXCHANGE_METHOD);
PowerMock.expectPrivate(
exchangeAdapter,
MOCKED_SEND_AUTHENTICATED_REQUEST_TO_EXCHANGE_METHOD,
eq(BALANCE),
eq(null))
.andThrow(
new IllegalStateException(
"There's an entirely different universe beyond that black hole. "
+ "A point where time and space as we know it no longer exists. "
+ "We will be the first to see it, to explore it, to experience it!"));

PowerMock.replayAll();

exchangeAdapter.init(exchangeConfig);
exchangeAdapter.getPercentageOfSellOrderTakenForExchangeFee(MARKET_ID);

PowerMock.verifyAll();
}

// --------------------------------------------------------------------------
// Get Ticker tests
// --------------------------------------------------------------------------
Expand Down

0 comments on commit df8c3cb

Please sign in to comment.