def main(): username = sys.argv[1].lower() filename = "money_tracker_{}.txt".format(username) parsed_data = ParseData(filename) aggregated_object = AggregatedMoneyTracker(parsed_data) money_tracker = MoneyTracker(aggregated_object) menu = MoneyTrackerMenu(username, money_tracker)
def test_when_init_then_make_parsed_lines_into_a_dictionary(self): test_aggregated = AggregatedMoneyTracker('money_tracker.txt') expected_result = { '22-03-2019': { 'Expenses': [ Expense(5.5, 'Eating Out', '22-03-2019'), Expense(34.0, 'Clothes', '22-03-2019'), Expense(41.79, 'Food', '22-03-2019'), Expense(12.0, 'Eating Out', '22-03-2019'), Expense(7.0, 'House', '22-03-2019'), Expense(14.0, 'Pets', '22-03-2019'), Expense(112.4, 'Bills', '22-03-2019'), Expense(21.5, 'Transport', '22-03-2019') ], 'Incomes': [Income(760.0, 'Salary', '22-03-2019')] }, '23-03-2019': { 'Expenses': [ Expense(15.0, 'Food', '23-03-2019'), Expense(5.0, 'Sports', '23-03-2019') ], 'Incomes': [ Income(50.0, 'Savings', '23-03-2019'), Income(200.0, 'Deposit', '23-03-2019') ] } } self.assertEqual(test_aggregated.records, expected_result)
def main(): file_name = sys.argv[1] money_tracker = MoneyTracker(AggregatedMoneyTracker(file_name)) Menu.choose_option(money_tracker)
def test_len_dunder_return_number_of_records(self): test_money_tracker = MoneyTracker( AggregatedMoneyTracker('money_tracker.txt')) expected_result = 13 self.assertEqual(len(test_money_tracker), expected_result)
from parse_money_tracker_data import MoneyTrackerData from aggregated_money_tracker import AggregatedMoneyTracker from category import Category data_obj = MoneyTrackerData('money_tracker.txt') data_list = data_obj.list_user_data() # print(data_list) agr_data = AggregatedMoneyTracker(data_list) agr_dict = agr_data.aggregate_data() # print(agr_data._dict_data()) print(agr_dict) income = Category('income', agr_dict) # print(income.get_data_from_category()) income.add_category('31-03-2018', 'income', agr_dict) income.add_category('31-03-2018', 'expense', agr_dict) income.add_category('30-03-2018', 'expense', agr_dict) print(income.get_data_from_category()) print(agr_dict)