def test_invalid_if_int_provided_as_ticker(self): """--- invalid if empty ticker provided ---""" transaction = tb.TransactionBase(ticker=2, unit_price=dcml.Decimal(11.01), number_of_units=2) self.assertFalse(transaction.is_valid)
def test_invalid_if_nonpositive_number_of_units_provided(self): """--- invalid if non-positive number of units provided ---""" transaction = tb.TransactionBase(ticker="abc", unit_price=dcml.Decimal(11.01), number_of_units=0) self.assertFalse(transaction.is_valid)
def test_invalid_if_float_provided_as_unit_price(self): """--- invalid if float provided as unit_price ---""" transaction = tb.TransactionBase(ticker="abc", unit_price=11.01, number_of_units=2) self.assertFalse(transaction.is_valid) self.assertTrue(transaction.unit_price is None)
def test_invalid_if_float_provided_as_number_of_units(self): """--- invalid if float provided as number_of_units ---""" transaction = tb.TransactionBase(ticker="abc", unit_price=dcml.Decimal(11.01), number_of_units=1.1) self.assertFalse(transaction.is_valid) self.assertTrue(transaction.number_of_units is None)
def test_04(self): """---- 1000000000.009 * 2 = 2000000000.02 ---""" transaction = tb.TransactionBase( ticker="abc", unit_price=dcml.Decimal('1000000000.009'), number_of_units=2) self.assertTrue( transaction.total_cost == dcml.Decimal('2000000000.02'))
def test_valid_transaction_instantiation(self): """--- valid transaction instance can be created ---""" transaction = tb.TransactionBase(ticker="abc", unit_price=dcml.Decimal(11.01), number_of_units=2) self.assertTrue(transaction.is_valid) self.assertTrue(transaction.ticker == "abc")
def test_apply_transaction_to_position(self): """--- valid position instance can be created ---""" position = pb.PositionBase(ticker="abc") transaction = tb.TransactionBase(ticker="abc", unit_price=dcml.Decimal(11.01), number_of_units=2) self.assertTrue(position.apply_tansaction(transaction))
def test_valid_total_price_shall_be_set_for_valid_transaction(self): """---- Total price shall be set for valid transaction ---""" transaction = tb.TransactionBase(ticker="abc", unit_price=dcml.Decimal(11.01), number_of_units=2) self.assertTrue(transaction.total_cost == dcml.Decimal('22.02'))
def test_12(self): """---- 0.0033 * 3 = 0.01 ---""" transaction = tb.TransactionBase(ticker="abc", unit_price=dcml.Decimal('0.0033'), number_of_units=3) self.assertTrue(transaction.total_cost == dcml.Decimal('0.01'))
def test_11(self): """---- 20 * 3 = 60.00 ---""" transaction = tb.TransactionBase(ticker="abc", unit_price=dcml.Decimal('20'), number_of_units=3) self.assertTrue(transaction.total_cost == dcml.Decimal('60.00'))
def test_07(self): """---- 5.5029 * 2 = 11.01 ---""" transaction = tb.TransactionBase(ticker="abc", unit_price=dcml.Decimal('05.5029'), number_of_units=2) self.assertTrue(transaction.total_cost == dcml.Decimal('11.01'))
def test_02(self): """---- 20.005 * 2 = 40.01 ---""" transaction = tb.TransactionBase(ticker="abc", unit_price=dcml.Decimal('20.005'), number_of_units=2) self.assertTrue(transaction.total_cost == dcml.Decimal('40.01'))
def test_16(self): """---- 1.0024 * 2 = 2.00 ---""" transaction = tb.TransactionBase(ticker="abc", unit_price=dcml.Decimal('1.0024'), number_of_units=2) self.assertTrue(transaction.total_cost == dcml.Decimal('2.00'))
"""docstring""" import matplotlib.pyplot as plt import data_providers.data_provider_simple as dps import data_structures.transaction_base as tr TR = tr.TransactionBase("AAA", 1, 1) DP = dps.DataProviderSimple() plt.plot(DP.get_data()) plt.ylabel('some numbers') plt.show()