package org.knowm.xchange.anx.v2.dto.trade;
import java.io.IOException;
import java.io.InputStream;
import java.math.BigDecimal;
import org.junit.Assert;
import org.junit.Test;
import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
/**
* Test ANXOpenOrders JSON parsing
*/
public class OpenOrdersJSONTest {
@Test
public void testUnmarshal() throws IOException {
// Read in the JSON from the example resources
InputStream is = OpenOrdersJSONTest.class.getResourceAsStream("/v2/trade/example-openorders-data.json");
// Use Jackson to parse it
ObjectMapper mapper = new ObjectMapper();
mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
ANXOpenOrder[] anxOpenOrders = mapper.readValue(is, ANXOpenOrder[].class);
// System.out.println(new Date(anxOpenOrders[0].getTimestamp()));
// Verify that the example data was unmarshalled correctly
Assert.assertEquals("7eecf4b2-5785-4500-a5d4-f3f8c924395c", anxOpenOrders[1].getOid());
Assert.assertEquals("BTC", anxOpenOrders[1].getItem());
Assert.assertEquals("HKD", anxOpenOrders[1].getCurrency());
Assert.assertEquals("bid", anxOpenOrders[1].getType());
Assert.assertEquals("BTC", anxOpenOrders[1].getAmount().getCurrency());
Assert.assertEquals(new BigDecimal("10.00000000"), anxOpenOrders[1].getAmount().getValue());
Assert.assertEquals(new BigDecimal("412.34567"), anxOpenOrders[0].getPrice().getValue());
Assert.assertEquals(new BigDecimal("212.34567"), anxOpenOrders[1].getPrice().getValue());
Assert.assertEquals("open", anxOpenOrders[1].getStatus());
}
}