Package com.xeiam.xchange.kraken.service.marketdata

Source Code of com.xeiam.xchange.kraken.service.marketdata.KrakenDepthJSONTest

package com.xeiam.xchange.kraken.service.marketdata;

import static org.fest.assertions.api.Assertions.assertThat;

import java.io.IOException;
import java.io.InputStream;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

import org.junit.Test;

import com.fasterxml.jackson.databind.ObjectMapper;
import com.xeiam.xchange.kraken.dto.marketdata.KrakenDepth;
import com.xeiam.xchange.kraken.dto.marketdata.KrakenPublicOrder;
import com.xeiam.xchange.kraken.dto.marketdata.results.KrakenDepthResult;

/**
* Test KrakenDepth JSON parsing
*/
public class KrakenDepthJSONTest {

  @Test
  public void testUnmarshal() throws IOException {

    // Read in the JSON from the example resources
    InputStream is = KrakenDepthJSONTest.class.getResourceAsStream("/marketdata/example-depth-data.json");

    // Use Jackson to parse it
    ObjectMapper mapper = new ObjectMapper();
    KrakenDepthResult krakenDepthResult = mapper.readValue(is, KrakenDepthResult.class);
    Map<String, KrakenDepth> krakenDepths = krakenDepthResult.getResult();

    // Verify that the example data was unmarshalled correctly
    assertThat(krakenDepths.get("XXBTXLTC")).isEqualTo(null);
    List<KrakenPublicOrder> krakenAsks = krakenDepths.get("XXBTZEUR").getAsks();
    KrakenPublicOrder krakenPublicOrder = krakenAsks.get(0);

    assertThat(krakenPublicOrder.getPrice()).isEqualTo(new BigDecimal("530.75513"));
    assertThat(krakenPublicOrder.getVolume()).isEqualTo(new BigDecimal("0.248"));
    assertThat(krakenPublicOrder.getTimestamp()).isEqualTo(1391825343L);
  }
}
TOP

Related Classes of com.xeiam.xchange.kraken.service.marketdata.KrakenDepthJSONTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.