
/**
 * Tester for MediumBank
 */
public class MediumBankTester
{
    public static void testAllMediumBankMethods()
    {
        testBasics();
        testGetNumAccounts();
        testTotalBalance();
    }
    
    public static void testBasics() {
        System.out.println("Running testBasics");
        // Test basic operation and printBankDetails
        String accountName = "Stu";
        int balance = 100;
        MediumBank sm = new MediumBank(accountName, balance);
        System.out.println("Should print one account for Stu with balance 100");
        sm.printBankDetails();

        accountName = "Sue";
        balance = 50;
        sm.addSecondAccount(accountName, balance);
        System.out.println("Should print twos accounts for Stu and Sue with balances 100 and 50");
        sm.printBankDetails();
    }
    
    public static void testGetNumAccounts() {
        System.out.println("Running testGetNumAccounts");
        // test getNumberOfAccounts and addSecondAccount
        MediumBank sm = new MediumBank("Fred",1000000);
        if(sm.getNumberOfAccounts()!=1) {
            System.out.println("There should be 1 account but there are "
                +sm.getNumberOfAccounts());
        }
        sm.addSecondAccount("Gabriella", 500000000);
        if(sm.getNumberOfAccounts()!=2) {
            System.out.println("There should be 2 accounts but there are "
                +sm.getNumberOfAccounts());
        }
    }
    
    public static void testTotalBalance() {
        System.out.println("Running testTotalBalance");
        // test totalBalance
        MediumBank sm = new MediumBank("Fred",123);
        if(sm.totalBalance()!=123) {
            System.out.println("Total balance should be 123 but is "
                +sm.totalBalance());
        }
        sm.addSecondAccount("Gabriella", 500);
        if(sm.totalBalance()!=623) {
            System.out.println("Total balance should be 623 but is "
                +sm.totalBalance());
        }
    }
}
