def load_test_user(): """ Used to create Fam user for testing :return: """ games_budget = Budget("Games and Entertainment", 100) clothes_budget = Budget("Clothing and Accessories", 100) food_budget = Budget("Eating out", 100) misc_budget = Budget("Miscellaneous", 100) budgets = [games_budget, clothes_budget, food_budget, misc_budget] return Rebel("Ryan", 11, 2314, "TD", 1234, budgets)
def load_test_user(self): """ Creates a test user with budgets and a moderator to deal with the user. Applies moderator to instance variable. """ ba = BankAccount("Account number here", "Bank name there", 400) user = User("Nick McGrath", date(1996, 4, 9), ba, **UserTypes.REBEL.value) self.user = user self.budgets[BudgetTypes.GAMES_AND_ENTERTAINMENT] = Budget(100) self.budgets[BudgetTypes.MISCELLANEOUS] = Budget(100) self.budgets[BudgetTypes.EATING_OUT] = Budget(100) self.budgets[BudgetTypes.CLOTHING_AND_ACCESSORIES] = Budget(100)
def load_test_user(): """ Creates a test user with pre-set values to test the program's methods with :return: test user with assigned values """ test_bank_info = BankInfo("RBC", "12345678", "5000.00") budget1 = Budget("Games and Entertainment", 1000.00) budget2 = Budget("Clothing and Accessories", 1000.00) budget3 = Budget("Eating Out", 1000.00) budget4 = Budget("Misc.", 1000.00) test_budget_list = [budget1, budget2, budget3, budget4] test_user = User("John Doe", "20", test_bank_info, test_budget_list) return test_user
def load_user(self): """ Prompt user for information needed to create a user then create and set budgets. """ while True: try: print('Welcome! Please create a user!') # collect the info needed to create a User user_values = [] user_values.append(input('Name: ')) print('Date of birth (using integer values):') user_values.append(date(int(input('\tYear: ')), int(input( '\tMonth: ')), int(input('\tDay: ')))) bank_values = [] bank_values.append(input('Bank Account number: ')) bank_values.append(input('Bank Name: ')) bank_values.append(float(input('Bank Balance: '))) ba = BankAccount(*bank_values) user_values.append(ba) print('Type of account?') print('Angel') print('Trouble Maker') print('Rebel') user_type = UserTypes[input('Account type: ').replace(' ', '_').upper()].value # create and set the user in the moderator self.user = User(*user_values, **user_type) # set the budget dictionary in the user self.budgets[BudgetTypes.GAMES_AND_ENTERTAINMENT] = Budget(int( input( 'Budget for Games and Entertainment: '))) self.budgets[BudgetTypes.MISCELLANEOUS] = Budget( int(input('Budget for Miscellaneous: '))) self.budgets[BudgetTypes.EATING_OUT] = Budget( int(input('Budget for ' 'Eating out: '))) self.budgets[BudgetTypes.CLOTHING_AND_ACCESSORIES] = Budget( int(input( 'Budget for Clothing and Accessories: '))) except ValueError: print('Try again :) (bad value)') continue else: break
async def users_create_budget( pb_identifier=Form(...), category=Form(...), amount=Form(...), budget_type=Form(...), current_user: User = Depends(get_current_user), ): """ form for creating a new budget alternatively can use default param current user instead of using the pb_identifier """ try: new_budget = Budget(pb_identifier=pb_identifier, category=category, amount=amount, budget_type=budget_type) new_budget.create_budget() result_msg = { "status": "success", "message": "successfully created budget" } except: # errors include validation errors as well as db errors # check budget file result_msg = {"status": "error", "message": "failed to create budget"} return result_msg
def __init__(self, username, password, email, id): self.__id = id self.__username = username self.__password = password self.__email = email self.budget = Budget() self.networth = Networth()
def test_insert_transactions_inserts(self): """Test that insert_transactions can insert data""" title_id = Budget(config='tests/test_config.yaml').insert_transactions( transactionfile='tests/test_transactions.txt') self.assertEqual( title_id, *self.run_query("SELECT id FROM title WHERE name='MING EXPRESS';"))
def main(): food, clothing, entertainment = 0, 0, 0 budget = Budget(food, clothing, entertainment) performOperation = 'Y' while (performOperation == 'Y') or (performOperation == 'y'): print("What would you like to do?\n") print("1. Make deposit\n") print("2. Make withdrawals\n") print("3. Check balance\n") print("4. Transfer inter-budgets\n") option = input("Select from the above\n") if option == '1': amount = int(input("How much would you like to deposit? \n")) budget.deposit(amount) elif option == '2': amount = int(input("How much would you like to withdraw? \n")) budget.withdraw(amount) elif option == '3': budget.balance() elif option == '4': budget.transferBalance() else: print("You have entered an invalid input.") performOperation = input( "Wanna perform another operation? Enter Y for YES or any other character for NO\n" )
def test_budget_init(self): budget_budget = Budget(mock_budget_base) budget_budget.items.append(mock_item_base) self.assertNotEqual(len(budget_budget.items), len(mock_budget_base.items)) budget_budget.warnings[0.5] = 'red' self.assertNotEqual(len(budget_budget.warnings), len(mock_budget_base.warnings))
def __getBudgetByName(soup, budget_name): budget_container_id = f"{budget_name}Budget-list-body" budget_container = soup.find("ul", {"id": budget_container_id}) budgets = budget_container.findAll("li") return_budgets = [] for budget in budgets: return_budgets.append(Budget(budget)) return return_budgets
def init(self): self._splash_screen = arcade.load_texture("images/logo.png") self._budget = Budget() self._audience_share = AudienceShare() self._on_screen_question = Question() self._questions_pool = QuestionsPool(*questions_data) self._questions_stages = QuestionsStages() self._background_controller = BackgroundController() self._current_contestant = random.choice(type(self).POSSIBLE_CONTESTANTS) self._popup_message = PopupMessage() self._sound_controller = SoundController() self._sound_controller.play_theme_in_loop() self._background_controller.set_index(self.current_contestant.bg_images_index) self.question_pool.show() self._popup_message.show(on_continue_callback=self._popup_next_contestant_callback) add_timer(3, self._after_splash_screen)
def __init__(self, name, age, bank_account_number, bank_name, bank_bal, budgets, user_type): self._name = name self._age = age self._bank_account_number = bank_account_number self._bank_name = bank_name self._bank_bal = bank_bal self._warning_limit = 0 self._lockout_limit = 0 self._budgets = budgets self._user_type = user_type self._user_types = UserTypes(user_type) self._transaction_records = TransactionRecords() self._budgets = Budget(budgets, self._user_types.get_lockout_limit(), self._user_types.get_warning_limit())
"Enter the category number of the category to transfer to: ")) amount = float(input("Enter the amount to transfer: ")) except: print("\nInvalid input!! Enter a valid number or amount") reduce_planned_expense(budget_categories) if index1 in range(1, len(budget_categories) + 1) and index2 in range( 1, len(budget_categories) + 1): Budget.transfer_balance(budget_categories[index1 - 1], budget_categories[index2 - 1], amount) init(budget_categories) else: print("\nInvalid input!! Enter a valid number") reduce_planned_expense(budget_categories) if __name__ == "__main__": food = Budget("Food") categories.append(food) clothing = Budget("Clothing") categories.append(clothing) entertainment = Budget("Entertainment") categories.append(entertainment) init(categories)
def __init__(self): self.__budget = Budget()
# -*- coding: utf-8 -*- from taxes import ISS, ICMS, ICPP, IKCV class CalculatorTaxes(object): def calculates(self, budget, taxe): return taxe.calc(budget) if __name__ == '__main__': from budget import Budget, Item # Budget One budget = Budget('Budget One') budget.add_item(Item('Product 1', 10)) budget.add_item(Item('Product 2', 5)) budget.add_item(Item('Product 3', 4)) budget.add_item(Item('Product 4', 4)) budget.add_item(Item('Product 5', 4)) budget.add_item(Item('Product 6', 1)) # Calculator Taxes calculator = CalculatorTaxes() print('Budget: %s | Total of items: %s' % (budget.name, budget.total_items)) print('ISS: %s' % round(calculator.calculates(budget, ISS()), 2)) print('ICMS: %s' % round(calculator.calculates(budget, ICMS()), 2))
# Designer patterns # Strategy from budget import Budget from taxes import ISS, ICMS class Calculator_taxes: def calc_taxes(self, budget, tax): calculated_tax = tax.calc(budget) print(calculated_tax) if __name__ == '__main__': calc = Calculator_taxes() budget = Budget(100) calc.calc_taxes(budget, ISS()) calc.calc_taxes(budget, ICMS())
def __init__(self, login, password): self.login = str(login) self.password = str(password) self.budzet = Budget()
from budget import Budget food_budget = Budget('food', 200) clothing_budget = Budget('clothes', 100) food_budget.deposit(50) print(food_budget.balance) food_budget.deposit('foo')
from config import MONTHLY, DAILY from budget import Budget payday = 24 budgetList = [ Budget(name='Savings', percentage=0.12, frequency=MONTHLY), Budget(name='Emergency', percentage=0.15, frequency=MONTHLY), Budget(name='Wants', percentage=0.23, frequency=MONTHLY, categoryList=[ 'Gift', 'Gifts', 'Entertainment', 'Clothes', 'Sports', 'Haircut', 'Book', 'Pets', 'PC' ]), Budget(name='Daily', percentage=0.5, fixedExpense=3500 + 269, categoryList=[ 'Food', 'Transport', 'Eating out', 'Communications', 'Health' ]), ] exclude = [] incomeList = [ 'Deposits', 'Interest', 'Return', 'Salary', 'Savings',
def test_works(self): Budget(config='tests/test_config.yaml').get_transactions(2017, 10) Budget().get_transactions(2017, 10) self.assertTrue(True)
from budget import Budget from edit import Edit_Ui import time project = Edit_Ui.load() try: bud = Budget(project) except Exception as e: print("Open project to edit it!") time.sleep(3) project = Edit_Ui.load() bud = Budget(project) bud.plot_year_projection()
from budget import Budget from taxes import ISS, ICMS class Taxes_Calculator(object): def do_calculation(self, budget: Budget, tax: object) -> None: calculated_tax = tax.calculate(budget) print(calculated_tax) if __name__ == '__main__': calculator = Taxes_Calculator() budget = Budget(500) calculator.do_calculation(budget, ISS()) calculator.do_calculation(budget, ICMS())
def add_category(): response = input("Enter the Category Name: ") category = Budget(f"{response.title()}") categories.append(category)
import random import validation from budget import Budget from getpass import getpass database = {} #dictionary for the details of the customer customer = Budget() def init(): print("Welcome to Kiitan's Bank") haveAccount = int(input("Do you have an account with us? 1. (Yes) 2. (No)\n")) if haveAccount == 1: login() elif haveAccount == 2: register() else: print("You have selected an invalid option. ") init() def login(): print("******* LOGIN ******") userAccountNumber = int(input("What is your account number? \n")) #print(database[userAccountNumber]) #password = input("What is your password? \n") isValidAccounntNumber = validation.account_number_validation (userAccountNumber) #print(isValidAccounntNumber) if isValidAccounntNumber:
# -*- coding: utf-8 -*- from taxes import ISS, ICMS, ICPP, IKCV class CalculatorTaxes(object): def calculates(self, budget, taxe): print(round(taxe.calc(budget), 2)) if __name__ == '__main__': from budget import Budget, Item # Budget One budget = Budget() budget.add_item(Item('Product 1', 10)) budget.add_item(Item('Product 2', 5)) budget.add_item(Item('Product 3', 4)) budget.add_item(Item('Product 4', 4)) budget.add_item(Item('Product 5', 4)) budget.add_item(Item('Product 6', 1)) # Calculator Taxes calculator = CalculatorTaxes() print('ISS and ICMS') calculator.calculates(budget, ISS()) calculator.calculates(budget, ICMS()) print('ISPP and IKCV')
def clear_budget(self): self.budzet = Budget()
from budget import Budget # instantiate the class budget = Budget('food') clothing_budget = Budget('clothing') budget.deposit_funds(110, "deposit to food category") clothing_budget.deposit_funds(110) clothing_budget.withdraw_funds(10) print(budget.amount) print(clothing_budget.amount)
def create_user(): """ Provides a user with a console interface to create a new user. :return: new user as User """ print("Please enter your name:") user_name = input(">> ") while True: print("Please enter your age:") user_age = input(">> ") if user_age.isdigit(): user_age = int(user_age) break else: print("Invalid age.") print("Please enter your Bank's name:") bank_name = input(">> ") print("Please enter your account number:") account_num = input(">> ") while True: print("Please enter your account balance:") balance = input(">> ") try: balance = float(balance) break except ValueError: print("Invalid balance") budget_list = [] print("How many budgets would you like to create:") num_budgets = input(">> ") for i in range(int(num_budgets)): print("Please enter the budget name:") budget_name = input(">> ") while True: print("Please enter the budget limit:") limit = input(">> ") try: budget_limit = float(limit) break except ValueError: print("Invalid limit.") budget_list.append(Budget(budget_name, float(budget_limit))) bank_info = BankInfo(bank_name, account_num, balance) while True: print("Please select your user type:") print("1: Angel") print("2: Troublemaker") print("3: Rebel") user_type = input(">> ") if user_type == "1": user = Angel(user_name, user_age, bank_info, budget_list) break elif user_type == "2": user = Troublemaker(user_name, user_age, bank_info, budget_list) break elif user_type == "3": user = Rebel(user_name, user_age, bank_info, budget_list) break print("Invalid selection") return user
from budget import Budget food = Budget() clothing = Budget() entertainment = Budget() food.deposit(500) clothing.deposit(600) entertainment.deposit(1000) food.withdraw(300) clothing.withdraw(800) entertainment.withdraw(800) print("Balance after withdrawing") print(food.balance) print(clothing.balance) print(entertainment.balance) print("Balance after transferring") food.acceptTransfer(clothing.makeTransfer(300)) entertainment.acceptTransfer(food.makeTransfer(200)) print(food.balance) print(clothing.balance) print(entertainment.balance)
def test_mock_repo(self, repo): repo.findAll.return_value = [Budget('2018-01', 1000)] self.assertEqual(1, len(repo.findAll()))