def test_complete_sale_transaction_details_for_guest_account(): # 4.6.3 Complete Sale Transaction Details for Guest Account manager = AccountManager() account = Account('*****@*****.**') account.address = 'address' account.payment_method = 'visa' staff_account = Account('*****@*****.**') manager.add_account(account) manager.add_account(staff_account) new_order = Order(account, staff_account) assert emailUtils.save_order( new_order) == True, 'Transaction Information has been saved'
def test_email_has_link_to_account_creation_page(): # 4.4.1.1 Guest Account Creation manager = AccountManager() account = Account('*****@*****.**') staff_account = Account('*****@*****.**') manager.add_account(account) manager.add_account(staff_account) new_order = Order(account, staff_account) order_receipt = Receipt(new_order) assert emailUtils.validate_receipt_content( order_receipt) == True, 'Redirect Link Found'
def test_view_customer_orders(): # 4.7.3.1 Order Information orderManager = OrderManager() manager = AccountManager() account = Account('*****@*****.**') staff_account = Account('*****@*****.**') manager.add_account(account) manager.add_account(staff_account) new_order = Order(account, staff_account) orderManager.add_order(new_order) all_orders = orderManager.view_all_orders(account) assert all_orders[0].customer == account, 'Orders found'
def test_send_receipt_to_guest(): # 4.4.1 Guest User Receipt manager = AccountManager() account = Account('*****@*****.**') staff_account = Account('*****@*****.**') manager.add_account(account) manager.add_account(staff_account) new_order = Order(account, staff_account) order_receipt = Receipt(new_order) assert emailUtils.account_exist( account) == False, 'Account does not exist' assert emailUtils.send_receipt( '*****@*****.**', order_receipt) == True, 'Email has been sent'
def test_send_receipt_to_existing_account(): # 4.4.2 Existing User Receipt manager = AccountManager() account = Account('*****@*****.**') staff_account = Account('*****@*****.**') manager.add_account(account) manager.add_account(staff_account) assert emailUtils.account_exist( '*****@*****.**') == True, 'Account does exist' new_order = Order(account, staff_account) order_receipt = Receipt(new_order) assert emailUtils.send_receipt( '*****@*****.**', order_receipt) == True, 'Email has been sent'
def test_account_information_in_email_content(): # 4.5.1 Email Information for Account manager = AccountManager() account = Account('*****@*****.**') staff_account = Account('*****@*****.**') manager.add_account(account) manager.add_account(staff_account) assert emailUtils.account_exist( '*****@*****.**') == True, 'Account does exist' new_order = Order(account, staff_account) order_receipt = Receipt(new_order) order_receipt.content = 'Valid Email Content' assert emailUtils.validate_receipt_content( order_receipt.content) == True, 'Email Content is valid'
def test_save_receipt_record(): # 4.6 Save Receipt Record receiptManager = ReceiptManager() manager = AccountManager() account = Account('*****@*****.**') staff_account = Account('*****@*****.**') manager.add_account(account) manager.add_account(staff_account) assert emailUtils.account_exist( '*****@*****.**') == True, 'Account does exist' new_order = Order(account, staff_account) order_receipt = Receipt(new_order) receiptManager.add_receipt(order_receipt) assert receiptManager.get_receipt_information(order_receipt)
def test_view_all_accounts_successfully_contains_data(): # 4.8.1.1 Viewable customer information manager = AccountManager() account = Account('*****@*****.**') account.first_name = 'Bob' account.last_name = 'Tan' account.home_address = '56 Robertson Road' account.is_banned = False account.is_locked = False manager.add_account(account) account_data = manager.view_all_accounts('KitchenManager') retrieved_account = account_data[0] assert retrieved_account.first_name == account.first_name, 'Expected first name to match' assert retrieved_account.last_name == account.last_name, 'Expected last name to match' assert retrieved_account.email_address == account.email_address, 'Expected email address to match' assert retrieved_account.home_address == account.home_address, 'Expected home address to match' assert retrieved_account.is_banned == account.is_banned, 'Expected banned status to match' assert retrieved_account.is_locked == account.is_locked, 'Expected locked status to match'
def test_view_receipt_as_staff(): # 4.9.1 Receipt View Access orderManager = OrderManager() manager = AccountManager() receiptManager = ReceiptManager() account = Account('*****@*****.**') staff_account = Account('*****@*****.**') manager.add_account(account) manager.add_account(staff_account) new_order = Order(account, staff_account) orderManager.add_order(new_order) order_receipt = Receipt(new_order) receiptManager.add_receipt(order_receipt) all_receipts = receiptManager.get_all_receipts(staff_account) assert all_receipts[0].received_by == staff_account, 'Receipt for Staff found'
def test_verify_account_password_with_missing_upper_case_is_invalid(): # 4.1.1.3 Password validation manager = AccountManager() assert manager.verify_password( 'password1') == False, 'Password should not be valid'
def test_verify_account_email_is_invalid(): # 4.1.1.1 Email validation manager = AccountManager() assert manager.verify_email_address( 'ton$gregexamplecom') == False, 'Email should not be valid'
def test_send_password_reset_email_is_unsuccessful(): # 4.2.1.2 Password reset email manager = AccountManager() assert manager.send_password_reset_email( '*****@*****.**') == False, 'Password reset email should not be sent'
def test_account_creation_with_kitchen_manager_role_successful(): # 4.9.1.1 Account Type manager = AccountManager() assert manager.admin_create_account('KitchenManager', '*****@*****.**', 'KitchenManager') == True, 'Expected kitchen staff manager to be created'
def test_kitchen_staff_account_creation_successful(): # 4.9.1 Management Account Creation manager = AccountManager() assert manager.admin_create_account('KitchenStaff', '*****@*****.**', 'KitchenStaff') == False, 'Expected kitchen staff account to not be created'
def test_account_creation_with_customer_role_unsuccessful(): # 4.9.1.1 Account Type manager = AccountManager() assert manager.admin_create_account('KitchenManager', '*****@*****.**', 'Customer') == False, 'Expected customer to not be created'
from account import Account from accountmanager import AccountManager from emailutils import EmailUtils from order import Order from ordermanager import OrderManager from receipt import Receipt from receiptmanager import ReceiptManager accountManger = AccountManager() emailUtils = EmailUtils() def test_user_has_account(): # 4.4 Existing and Guest User Receipt assert emailUtils.account_exist( '*****@*****.**') == False, 'Account does not exist' def test_user_does_not_have_account(): # 4.4 Existing and Guest User Receipt manager = AccountManager() account = Account('*****@*****.**') manager.add_account(account) assert emailUtils.account_exist( '*****@*****.**') == True, 'Account does exist' def test_send_receipt_to_guest():
def test_verify_account_password_with_missing_number_is_invalid(): # 4.1.1.3 Password validation manager = AccountManager() assert manager.verify_password( 'SupermanGuy') == False, 'Password should not be valid'
def test_verify_password_reset_email_does_not_exist(): # 4.2.1.1 Email validation manager = AccountManager() assert manager.verify_email_does_not_exist_in_system( 'ton$gregexamplecom') == False, 'Email should not exist in the system'
def test_verify_account_password_is_valid(): # 4.1.1.3 Password validation manager = AccountManager() assert manager.verify_password( 'Password1') == True, 'Password should be valid'
def test_verify_account_is_valid(): # 4.1.1 Required account information manager = AccountManager() assert manager.verify_account('Greg', 'Gregton', '*****@*****.**', '46 Greg Ave', 'Password1') == True, 'Account information should be valid'
def test_verify_account_email_is_valid(): # 4.1.1.1 Email validation manager = AccountManager() assert manager.verify_email_address( '*****@*****.**') == True, 'Email should be valid'