@Test public void shouldCancelOrder() throws IOException { // given BitMarketCancelResponse response = new BitMarketCancelResponse( true, new BitMarketBalance(createAvailable(), createBlocked()), new BitMarketAPILimit(3, 100, 12345000L), 0, null); BitMarketAuthenticated bitMarketAuthenticated = mock(BitMarketAuthenticated.class); PowerMockito.when( bitMarketAuthenticated.cancel( Mockito.eq(SPECIFICATION_API_KEY), Mockito.any(ParamsDigest.class), Mockito.any(SynchronizedValueFactory.class), Mockito.eq(12345L))) .thenReturn(response); Whitebox.setInternalState(tradeService, "bitMarketAuthenticated", bitMarketAuthenticated); // when boolean cancelled = tradeService.cancelOrder("12345"); // then assertThat(cancelled).isTrue(); }
@Test(expected = ExchangeException.class) public void shouldFailOnUnsuccessfulCancelOrder() throws IOException { // given BitMarketCancelResponse response = new BitMarketCancelResponse( false, null, new BitMarketAPILimit(3, 100, 12345000L), 502, "Invalid message hash"); BitMarketAuthenticated bitMarketAuthenticated = mock(BitMarketAuthenticated.class); PowerMockito.when( bitMarketAuthenticated.cancel( Mockito.eq(SPECIFICATION_API_KEY), Mockito.any(ParamsDigest.class), Mockito.any(SynchronizedValueFactory.class), Mockito.eq(11111L))) .thenReturn(response); Whitebox.setInternalState(tradeService, "bitMarketAuthenticated", bitMarketAuthenticated); // when tradeService.cancelOrder("11111"); // then fail( "BitMarketTradeService should throw ExchangeException when cancel order request was unsuccessful"); }