예제 #1
0
def test_init_terms_w_fee():
    """Test the terms object initialization with fee."""
    ledger_id = DEFAULT_LEDGER
    sender_addr = "SenderAddress"
    counterparty_addr = "CounterpartyAddress"
    amount_by_currency_id = {"FET": -10}
    quantities_by_good_id = {"good_1": 20}
    is_sender_payable_tx_fee = True
    nonce = "somestring"
    fee_by_currency_id = {"FET": 1}
    terms = Terms(
        ledger_id=ledger_id,
        sender_address=sender_addr,
        counterparty_address=counterparty_addr,
        amount_by_currency_id=amount_by_currency_id,
        quantities_by_good_id=quantities_by_good_id,
        is_sender_payable_tx_fee=is_sender_payable_tx_fee,
        nonce=nonce,
        fee_by_currency_id=fee_by_currency_id,
    )
    new_counterparty_address = "CounterpartyAddressNew"
    terms.counterparty_address = new_counterparty_address
    assert terms.counterparty_address == new_counterparty_address
    assert terms.fee == next(iter(fee_by_currency_id.values()))
    assert terms.fee_by_currency_id == fee_by_currency_id
    assert terms.counterparty_payable_amount == 0
    assert terms.sender_payable_amount == -next(
        iter(amount_by_currency_id.values()))
    assert terms.sender_payable_amount_incl_fee == -next(
        iter(amount_by_currency_id.values())) + next(
            iter(fee_by_currency_id.values()))
    assert terms.sender_fee == next(iter(fee_by_currency_id.values()))
    assert terms.counterparty_fee == 0
예제 #2
0
def test_init_terms_no_amount_and_quantity():
    """Test the terms object initialization with no amount."""
    ledger_id = DEFAULT_LEDGER
    sender_addr = "SenderAddress"
    counterparty_addr = "CounterpartyAddress"
    amount_by_currency_id = {}
    quantities_by_good_id = {}
    nonce = "somestring"
    terms = Terms(
        ledger_id=ledger_id,
        sender_address=sender_addr,
        counterparty_address=counterparty_addr,
        amount_by_currency_id=amount_by_currency_id,
        quantities_by_good_id=quantities_by_good_id,
        nonce=nonce,
    )
    new_counterparty_address = "CounterpartyAddressNew"
    terms.counterparty_address = new_counterparty_address
    assert terms.counterparty_address == new_counterparty_address
    assert not terms.has_fee
    assert terms.counterparty_payable_amount == 0
    assert terms.counterparty_payable_amount_incl_fee == 0
    assert terms.sender_payable_amount == 0
    assert terms.sender_payable_amount_incl_fee == 0