Package com.xeiam.xchange.cryptotrade.dto.account

Source Code of com.xeiam.xchange.cryptotrade.dto.account.CryptoTradeAccountJsonTest

package com.xeiam.xchange.cryptotrade.dto.account;

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.cryptotrade.dto.account.CryptoTradeAccountInfo.CryptoTradeAccountPermissions;
import com.xeiam.xchange.cryptotrade.dto.account.CryptoTradeTransactions.CryptoTradeTransaction;
import com.xeiam.xchange.currency.Currencies;

public class CryptoTradeAccountJsonTest {

  @Test
  public void testDeserializeAccountInfo() throws IOException {

    // Read in the JSON from the example resources
    InputStream is = CryptoTradeAccountJsonTest.class.getResourceAsStream("/account/example-account-info-data.json");

    // Use Jackson to parse it
    ObjectMapper mapper = new ObjectMapper();
    CryptoTradeAccountInfo accountInfo = mapper.readValue(is, CryptoTradeAccountInfo.class);

    Map<String, BigDecimal> funds = accountInfo.getFunds();
    assertThat(funds.size()).isEqualTo(11);
    assertThat(funds.get("ltc")).isEqualTo("1000");

    CryptoTradeAccountPermissions permissions = accountInfo.getPermissions();
    assertThat(permissions.getHistory()).isEqualTo(1);
    assertThat(permissions.getInfo()).isEqualTo(1);
    assertThat(permissions.getTrade()).isEqualTo(1);

    assertThat(accountInfo.getActiveOrders()).isEqualTo(0);
    assertThat(accountInfo.getTransactionCount()).isEqualTo(43);
    assertThat(accountInfo.getServerTimestamp()).isEqualTo(1370985781);
  }

  @Test
  public void testDeserializeTransactionHistory() throws IOException {

    // Read in the JSON from the example resources
    InputStream is = CryptoTradeAccountJsonTest.class.getResourceAsStream("/account/example-transaction-history-data.json");

    // Use Jackson to parse it
    ObjectMapper mapper = new ObjectMapper();
    CryptoTradeTransactions transactionHistory = mapper.readValue(is, CryptoTradeTransactions.class);

    List<CryptoTradeTransaction> transactionList = transactionHistory.getTransactions();
    assertThat(transactionList.size()).isEqualTo(2);

    CryptoTradeTransaction transaction = transactionList.get(0);
    assertThat(transaction.getId()).isEqualTo(2425);
    assertThat(transaction.getTimestamp()).isEqualTo(1371058368);
    assertThat(transaction.getCurrency()).isEqualTo(Currencies.BTC);
    assertThat(transaction.getType()).isEqualTo("Bought");
    assertThat(transaction.getAmount()).isEqualTo("0.49925");
    assertThat(transaction.getDescription()).isEqualTo("Bought 0.5 BTC (-0.15% Fees) @ 123 USD from Order #8");
    assertThat(transaction.getStatus()).isEqualTo("Completed");
  }
}
TOP

Related Classes of com.xeiam.xchange.cryptotrade.dto.account.CryptoTradeAccountJsonTest

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.