<?php
namespace ccxt;

// ----------------------------------------------------------------------------

// PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
// https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code

// -----------------------------------------------------------------------------
include_once PATH_TO_CCXT . '/test/exchange/base/test_shared_methods.php';

function test_margin_modification($exchange, $skipped_properties, $method, $entry) {
    $format = array(
        'info' => array(),
        'type' => 'add',
        'amount' => $exchange->parse_number('0.1'),
        'total' => $exchange->parse_number('0.29934828'),
        'code' => 'USDT',
        'symbol' => 'ADA/USDT:USDT',
        'status' => 'ok',
    );
    $empty_allowed_for = ['status', 'symbol', 'code', 'total', 'amount'];
    assert_structure($exchange, $skipped_properties, $method, $entry, $format, $empty_allowed_for);
    assert_currency_code($exchange, $skipped_properties, $method, $entry, $entry['code']);
    //
    assert_greater_or_equal($exchange, $skipped_properties, $method, $entry, 'amount', '0');
    assert_greater_or_equal($exchange, $skipped_properties, $method, $entry, 'total', '0');
    assert_in_array($exchange, $skipped_properties, $method, $entry, 'type', ['add', 'reduce', 'set']);
    assert_in_array($exchange, $skipped_properties, $method, $entry, 'status', ['ok', 'pending', 'canceled', 'failed']);
    assert_symbol($exchange, $skipped_properties, $method, $entry, 'symbol');
}
