From 33afe7fc1c2e6dc9fd6408444d6ae39fedc5f109 Mon Sep 17 00:00:00 2001 From: gpatelos Date: Tue, 24 Oct 2017 13:48:51 -0400 Subject: [PATCH 01/15] starting again with simplified objects --- pom.xml | 9 ++++++++ src/main/java/Account.java | 39 +++++++++++++++++++++++++++++++++ src/main/java/Checking.java | 10 +++++++++ src/main/java/CheckingTest.java | 30 +++++++++++++++++++++++++ 4 files changed, 88 insertions(+) create mode 100644 src/main/java/Account.java create mode 100644 src/main/java/Checking.java create mode 100644 src/main/java/CheckingTest.java diff --git a/pom.xml b/pom.xml index 9901415..1012f0d 100644 --- a/pom.xml +++ b/pom.xml @@ -8,5 +8,14 @@ project-2-atm 1.0-SNAPSHOT + + + + junit + junit + 4.12 + + + \ No newline at end of file diff --git a/src/main/java/Account.java b/src/main/java/Account.java new file mode 100644 index 0000000..affb089 --- /dev/null +++ b/src/main/java/Account.java @@ -0,0 +1,39 @@ + +public abstract class Account { + + private int acctnumber; + private double balance; + private static int nextAvailableAcctNumber = 1; + + + public Account(){ + this.acctnumber = nextAvailableAcctNumber; + this.balance = 0; + nextAvailableAcctNumber++; + } + + public Account(double initial_deposit){ + this(); + this.balance = initial_deposit; + } + + public void setAcctNumber(int acctnumber) { + this.acctnumber = acctnumber; + } + + + public int getAcctNumber() { + return acctnumber; + } + + + public void setBalance(double balance) { + this.balance = balance; + } + + + public double getBalance() { + return balance; + } +} + diff --git a/src/main/java/Checking.java b/src/main/java/Checking.java new file mode 100644 index 0000000..7b732f1 --- /dev/null +++ b/src/main/java/Checking.java @@ -0,0 +1,10 @@ +public class Checking extends Account { + + public Checking(){ + super(); + } + + public Checking(double initial_deposit){ + super(initial_deposit); + } +} diff --git a/src/main/java/CheckingTest.java b/src/main/java/CheckingTest.java new file mode 100644 index 0000000..a89d6f5 --- /dev/null +++ b/src/main/java/CheckingTest.java @@ -0,0 +1,30 @@ +import org.junit.Assert; +import org.junit.Test; + +public class CheckingTest { + + @Test + public void CheckingTest(){ + + //given + Checking checking = new Checking(50000); + Checking checking2 = new Checking(); + double expected = 50000; + int expected_account = 1; + int expected_2nd_account = 2; + + //when + double actual = checking.getBalance(); + int actual_account = checking.getAcctNumber(); + int actual_2nd_account = checking2.getAcctNumber(); + + //then + Assert.assertTrue("check constructor", expected == actual); + Assert.assertEquals("check account number", expected_account, actual_account); + Assert.assertEquals("check account number", expected_2nd_account, actual_2nd_account); + + } + + + +} \ No newline at end of file From 9252aeddb7637cebc5df7acb6469b468492afe67 Mon Sep 17 00:00:00 2001 From: gpatelos Date: Tue, 24 Oct 2017 14:31:53 -0400 Subject: [PATCH 02/15] always be committing. --- src/main/java/Customer.java | 46 +++++++++++++++++++++++ src/main/java/Investment.java | 10 +++++ src/main/java/Savings.java | 10 +++++ src/main/{java => test}/CheckingTest.java | 3 ++ src/main/test/CustomerTest.java | 18 +++++++++ 5 files changed, 87 insertions(+) create mode 100644 src/main/java/Customer.java create mode 100644 src/main/java/Investment.java create mode 100644 src/main/java/Savings.java rename src/main/{java => test}/CheckingTest.java (96%) create mode 100644 src/main/test/CustomerTest.java diff --git a/src/main/java/Customer.java b/src/main/java/Customer.java new file mode 100644 index 0000000..bcc99b5 --- /dev/null +++ b/src/main/java/Customer.java @@ -0,0 +1,46 @@ +import java.util.ArrayList; + +public class Customer { + + private String username; + private String password; + private ArrayList AccountList; + + public Customer(){ + this.username = "UNASSIGNED"; + this.password = "password"; + this.AccountList = {0}; + } + + + public void setPassword(String password) { + this.password = password; + } + + public void setUsername(String username) { + this.username = username; + } + + public String getPassword() { + return password; + } + + public String getUsername() { + return username; + } + + public void setAccountList(ArrayList[] accountList) { + AccountList = accountList; + } + + public ArrayList[] getAccountList() { + return AccountList; + } + + public String deposit(){ + return ""; + } + + + +} diff --git a/src/main/java/Investment.java b/src/main/java/Investment.java new file mode 100644 index 0000000..edc913b --- /dev/null +++ b/src/main/java/Investment.java @@ -0,0 +1,10 @@ +public class Investment extends Account { + + public Investment(){ + super(); + } + + public Investment(double initial_deposit){ + super(initial_deposit); + } +} diff --git a/src/main/java/Savings.java b/src/main/java/Savings.java new file mode 100644 index 0000000..b1e16f5 --- /dev/null +++ b/src/main/java/Savings.java @@ -0,0 +1,10 @@ +public class Savings extends Account { + + public Savings(){ + super(); + } + + public Savings(double initial_deposit){ + super(initial_deposit); + } +} diff --git a/src/main/java/CheckingTest.java b/src/main/test/CheckingTest.java similarity index 96% rename from src/main/java/CheckingTest.java rename to src/main/test/CheckingTest.java index a89d6f5..c6c301c 100644 --- a/src/main/java/CheckingTest.java +++ b/src/main/test/CheckingTest.java @@ -6,6 +6,9 @@ public class CheckingTest { @Test public void CheckingTest(){ + //check constructors + + //given Checking checking = new Checking(50000); Checking checking2 = new Checking(); diff --git a/src/main/test/CustomerTest.java b/src/main/test/CustomerTest.java new file mode 100644 index 0000000..f998c77 --- /dev/null +++ b/src/main/test/CustomerTest.java @@ -0,0 +1,18 @@ +import org.junit.Assert; +import org.junit.Test; + +public class CustomerTest { + + @Test + public void CustomerTest(){ + //given + Customer acustomer = new Customer() + String expected = "UNASSIGNED"; + + //when + String actual = acustomer.getUsername(); + Assert.assertEquals("test default username assignment", expected, actual); + + + } +} From cdff06077d7a1b4fd66241faa6f1eb5cb0be681e Mon Sep 17 00:00:00 2001 From: gpatelos Date: Tue, 24 Oct 2017 16:54:27 -0400 Subject: [PATCH 03/15] always be committing. --- src/main/java/Account.java | 23 +++++++++++++++++++++++ src/main/java/Customer.java | 19 ++++++++----------- src/main/test/CheckingTest.java | 31 +++++++++++++++++++++++++++++++ src/main/test/CustomerTest.java | 30 ++++++++++++++++++++++++++++-- 4 files changed, 90 insertions(+), 13 deletions(-) diff --git a/src/main/java/Account.java b/src/main/java/Account.java index affb089..3c2d6da 100644 --- a/src/main/java/Account.java +++ b/src/main/java/Account.java @@ -35,5 +35,28 @@ public void setBalance(double balance) { public double getBalance() { return balance; } + + public String deposit(double deposit) { + + balance += deposit; + + return "Your new balance is $" + String.format("%,.2f", balance); + + } + + public String withdrawl(double withdrawl){ + + balance -= withdrawl; + + return "Your new balance is $" + String.format("%,.2f", balance); + + } + + + + + } + + diff --git a/src/main/java/Customer.java b/src/main/java/Customer.java index bcc99b5..fb7a619 100644 --- a/src/main/java/Customer.java +++ b/src/main/java/Customer.java @@ -4,12 +4,12 @@ public class Customer { private String username; private String password; - private ArrayList AccountList; + private ArrayList AccountList; public Customer(){ this.username = "UNASSIGNED"; - this.password = "password"; - this.AccountList = {0}; + this.password = "PASSWORD"; + this.AccountList = null; } @@ -29,17 +29,14 @@ public String getUsername() { return username; } - public void setAccountList(ArrayList[] accountList) { - AccountList = accountList; + public void setAccountList(Account anAccount) { + this.AccountList.add(anAccount); } - public ArrayList[] getAccountList() { - return AccountList; - } +// public ArrayList[] getAccountList() { +// return AccountList; +// } - public String deposit(){ - return ""; - } diff --git a/src/main/test/CheckingTest.java b/src/main/test/CheckingTest.java index c6c301c..46c28f7 100644 --- a/src/main/test/CheckingTest.java +++ b/src/main/test/CheckingTest.java @@ -28,6 +28,37 @@ public void CheckingTest(){ } + @Test + public void depositTest(){ + + //given + Checking checking = new Checking(); + String expected = "Your new balance is $11,000.00"; + + //when + checking.setBalance(6000); + String actual = checking.deposit(5000); + + //then + Assert.assertEquals(expected,actual); + + + } + + @Test + public void withdrawlTest(){ + + Checking checking = new Checking(); + String expected = "Your new balance is $0.23"; + + checking.setBalance(4000.23); + String actual = checking.withdrawl(4000); + + Assert.assertEquals(expected, actual); + } + + + } \ No newline at end of file diff --git a/src/main/test/CustomerTest.java b/src/main/test/CustomerTest.java index f998c77..83eb017 100644 --- a/src/main/test/CustomerTest.java +++ b/src/main/test/CustomerTest.java @@ -6,13 +6,39 @@ public class CustomerTest { @Test public void CustomerTest(){ //given - Customer acustomer = new Customer() + Customer acustomer = new Customer(); String expected = "UNASSIGNED"; //when String actual = acustomer.getUsername(); + + //then Assert.assertEquals("test default username assignment", expected, actual); } -} + + //moved deposit to account + +// @Test +// public void depositTest(){ +// +// //given +// Customer acustomer = new Customer(); +// String expected = "You're new balance is 5000."; +// +// //when +// String actual = acustomer.deposit(5000); +// +// //then +// Assert.assertEquals(expected,actual); +// +// +// } + + + + + } + + From 157bd4ab7e4b9528cade6d6b5b8aa1e85fee6910 Mon Sep 17 00:00:00 2001 From: gpatelos Date: Tue, 24 Oct 2017 20:27:55 -0400 Subject: [PATCH 04/15] always be committing. --- src/main/java/Account.java | 8 ++++++++ src/main/java/Customer.java | 31 ++++++++++++++++++++++++++++--- src/main/test/CheckingTest.java | 12 ++++++++++++ src/main/test/CustomerTest.java | 26 +++++++++++++++++++++++++- 4 files changed, 73 insertions(+), 4 deletions(-) diff --git a/src/main/java/Account.java b/src/main/java/Account.java index 3c2d6da..6990eb1 100644 --- a/src/main/java/Account.java +++ b/src/main/java/Account.java @@ -52,7 +52,15 @@ public String withdrawl(double withdrawl){ } + public String transfer(Account toAccount, double amount){ + balance -= amount; + + toAccount.balance += amount; + + + return "Transfer complete. New 'from' balance is $" + String.format("%,.2f", this.getBalance()) + ". Your new 'to' balance is $" + String.format("%,.2f", toAccount.getBalance())+"."; + } diff --git a/src/main/java/Customer.java b/src/main/java/Customer.java index fb7a619..f5d5212 100644 --- a/src/main/java/Customer.java +++ b/src/main/java/Customer.java @@ -5,11 +5,14 @@ public class Customer { private String username; private String password; private ArrayList AccountList; + private int numberOfAccounts; public Customer(){ this.username = "UNASSIGNED"; this.password = "PASSWORD"; - this.AccountList = null; + this.AccountList = new ArrayList(); + this.AccountList.add(new Checking()); + this.numberOfAccounts = 1; } @@ -29,10 +32,32 @@ public String getUsername() { return username; } - public void setAccountList(Account anAccount) { - this.AccountList.add(anAccount); + + public ArrayList getAccountList() { + return AccountList; + } + + public Account getAccount(int index){ + + return AccountList.get(index); + + }; + + public String addOneAccount(){ + + return ""; + } + public void closeAllAccounts(){ + + } + + + + + + // public ArrayList[] getAccountList() { // return AccountList; // } diff --git a/src/main/test/CheckingTest.java b/src/main/test/CheckingTest.java index 46c28f7..b55ee08 100644 --- a/src/main/test/CheckingTest.java +++ b/src/main/test/CheckingTest.java @@ -57,7 +57,19 @@ public void withdrawlTest(){ Assert.assertEquals(expected, actual); } + @Test + public void transferTest(){ + + Checking fromChecking = new Checking(3500); + Savings toSavings = new Savings(500); + + String expected = "Transfer complete. New 'from' balance is $1,500.00. " + + "Your new 'to' balance is $2,500.00."; + String actual = fromChecking.transfer(toSavings, 2000); + + Assert.assertEquals(expected, actual); + } diff --git a/src/main/test/CustomerTest.java b/src/main/test/CustomerTest.java index 83eb017..d72adff 100644 --- a/src/main/test/CustomerTest.java +++ b/src/main/test/CustomerTest.java @@ -17,8 +17,32 @@ public void CustomerTest(){ } +// @Test +// public void getOneAccount(){ +// //given +// Customer customer = new Customer(); +// String expected = "Account 0"; +// +// //when +// String expected = customer.ArrayList.get(0) +// } +// +// @Test +// public void addOneAccount(){ +// //given +// Customer customer = new Customer(); +// String expected = "Your new checking account 'gpatselas2' is now available."; +// +// //when +// String actual = customer.addOneAccount(); +// +// +// //then +// Assert.assertEquals(expected,actual); +// +// } - //moved deposit to account + //moved deposit to account class // @Test // public void depositTest(){ From d6443716cd9616eb9d730c5ef174292d9b354b47 Mon Sep 17 00:00:00 2001 From: gpatelos Date: Tue, 24 Oct 2017 20:55:01 -0400 Subject: [PATCH 05/15] always be committing.toString@Override --- src/main/java/Account.java | 7 ++++++ src/main/java/Customer.java | 39 ++++++++++++++++++--------------- src/main/test/CheckingTest.java | 12 ++++++++++ src/main/test/CustomerTest.java | 18 ++++++++++++++- 4 files changed, 57 insertions(+), 19 deletions(-) diff --git a/src/main/java/Account.java b/src/main/java/Account.java index 6990eb1..1364158 100644 --- a/src/main/java/Account.java +++ b/src/main/java/Account.java @@ -62,6 +62,13 @@ public String transfer(Account toAccount, double amount){ return "Transfer complete. New 'from' balance is $" + String.format("%,.2f", this.getBalance()) + ". Your new 'to' balance is $" + String.format("%,.2f", toAccount.getBalance())+"."; } + @Override + public String toString(){ + return "Account#: " + this.acctnumber; + + + } + } diff --git a/src/main/java/Customer.java b/src/main/java/Customer.java index f5d5212..60c1f4d 100644 --- a/src/main/java/Customer.java +++ b/src/main/java/Customer.java @@ -33,25 +33,28 @@ public String getUsername() { } - public ArrayList getAccountList() { - return AccountList; - } - - public Account getAccount(int index){ - - return AccountList.get(index); - - }; - - public String addOneAccount(){ - - return ""; - - } - - public void closeAllAccounts(){ +// public String getAccountList() { +// for (: +// ) { +// +// } +// } - } +// public ArrayList getAccount(int index){ +// +// return AccountList; +// +// }; +// +// public String addOneAccount(){ +// +// return ""; +// +// } +// +// public void closeAllAccounts(){ +// +// } diff --git a/src/main/test/CheckingTest.java b/src/main/test/CheckingTest.java index b55ee08..9a5a94a 100644 --- a/src/main/test/CheckingTest.java +++ b/src/main/test/CheckingTest.java @@ -71,6 +71,18 @@ public void transferTest(){ Assert.assertEquals(expected, actual); } + @Test + public void toStringTest(){ + Savings savings = new Savings(); + String expected = "Account#: 1"; + + String actual = savings.toString(); + + Assert.assertEquals(expected, actual); + + + } + } \ No newline at end of file diff --git a/src/main/test/CustomerTest.java b/src/main/test/CustomerTest.java index d72adff..fa7be6f 100644 --- a/src/main/test/CustomerTest.java +++ b/src/main/test/CustomerTest.java @@ -1,6 +1,8 @@ import org.junit.Assert; import org.junit.Test; +import java.util.ArrayList; + public class CustomerTest { @Test @@ -15,8 +17,22 @@ public void CustomerTest(){ //then Assert.assertEquals("test default username assignment", expected, actual); - } + +// @Test +// public void getAccountList(){ +// //given +// Customer customer = new Customer(); +// String expected = "Some weird string of objects or hashes"; +// +// //when +// Objec = customer.getAccountList(); +// +// //then +// Assert.assertEquals(expected, actual); +// } + + // @Test // public void getOneAccount(){ // //given From ea58d4dbfc1f60d5feb3c2164d0dd72f79d1a174 Mon Sep 17 00:00:00 2001 From: gpatelos Date: Tue, 24 Oct 2017 21:15:08 -0400 Subject: [PATCH 06/15] always be committing.added list storage classes. stubbed main. --- src/main/java/AllTheAccounts.java | 17 +++++++++++++++++ src/main/java/AllTheCustomers.java | 21 +++++++++++++++++++++ src/main/java/DoTheThing.java | 17 +++++++++++++++++ 3 files changed, 55 insertions(+) create mode 100644 src/main/java/AllTheAccounts.java create mode 100644 src/main/java/AllTheCustomers.java create mode 100644 src/main/java/DoTheThing.java diff --git a/src/main/java/AllTheAccounts.java b/src/main/java/AllTheAccounts.java new file mode 100644 index 0000000..a85af4b --- /dev/null +++ b/src/main/java/AllTheAccounts.java @@ -0,0 +1,17 @@ +import java.util.ArrayList; + +public class AllTheAccounts { + + private ArrayList AllTheAccounts; + + public void addToAllTheAccounts(){ + return; + } + + public void removeFromAllTheAccounts(){ + return; + } + +} + + diff --git a/src/main/java/AllTheCustomers.java b/src/main/java/AllTheCustomers.java new file mode 100644 index 0000000..5942a43 --- /dev/null +++ b/src/main/java/AllTheCustomers.java @@ -0,0 +1,21 @@ +import java.util.ArrayList; + +public class AllTheCustomers { + + private ArrayList MasterCustomerList; + + ///////////////////////////////////////////////////////////// + + + public ArrayList getMasterCustomerList() { + return MasterCustomerList; + } + + public void addToMasterCustomerList(){ + return; + } + + public void removeFromMasterCustomerList(){ + return; + } +} diff --git a/src/main/java/DoTheThing.java b/src/main/java/DoTheThing.java new file mode 100644 index 0000000..c830197 --- /dev/null +++ b/src/main/java/DoTheThing.java @@ -0,0 +1,17 @@ +public class DoTheThing { + + public static void main(String[] args) { + + System.out.println("Got an account with us? y/n"); + System.out.println("Want one? y/n"); + + createUser(); + addtoAllTheUsers(); + + System.out.println("What do you want to do with your account?"); + + showMainMenu(); + // 1. Deposit 2. Withdraw 3. Get Balance 4. Add Account 5. Close Account + } + +} From ec8e6e6577ec37a16143e28e28aad859f38a5b55 Mon Sep 17 00:00:00 2001 From: gpatelos Date: Tue, 24 Oct 2017 23:50:35 -0400 Subject: [PATCH 07/15] always be committing.added getAccountByIndex --- src/main/java/Account.java | 2 +- src/main/java/Customer.java | 4 ++++ src/main/java/DoTheThing.java | 34 ++++++++++++++++----------------- src/main/test/CustomerTest.java | 15 +++++++++++++++ 4 files changed, 37 insertions(+), 18 deletions(-) diff --git a/src/main/java/Account.java b/src/main/java/Account.java index 1364158..224a003 100644 --- a/src/main/java/Account.java +++ b/src/main/java/Account.java @@ -64,7 +64,7 @@ public String transfer(Account toAccount, double amount){ @Override public String toString(){ - return "Account#: " + this.acctnumber; + return "Account# " + this.acctnumber; } diff --git a/src/main/java/Customer.java b/src/main/java/Customer.java index 60c1f4d..f511be5 100644 --- a/src/main/java/Customer.java +++ b/src/main/java/Customer.java @@ -32,6 +32,10 @@ public String getUsername() { return username; } + public String getAccountByIndex(int index){ + return AccountList.get(index).toString(); + } + // public String getAccountList() { // for (: diff --git a/src/main/java/DoTheThing.java b/src/main/java/DoTheThing.java index c830197..fd78b49 100644 --- a/src/main/java/DoTheThing.java +++ b/src/main/java/DoTheThing.java @@ -1,17 +1,17 @@ -public class DoTheThing { - - public static void main(String[] args) { - - System.out.println("Got an account with us? y/n"); - System.out.println("Want one? y/n"); - - createUser(); - addtoAllTheUsers(); - - System.out.println("What do you want to do with your account?"); - - showMainMenu(); - // 1. Deposit 2. Withdraw 3. Get Balance 4. Add Account 5. Close Account - } - -} +//public class DoTheThing { +// +// public static void main(String[] args) { +// +// System.out.println("Got an account with us? y/n"); +// System.out.println("Want one? y/n"); +// +// createUser(); +// addtoAllTheUsers(); +// +// System.out.println("What do you want to do with your account?"); +// +// showMainMenu(); +// // 1. Deposit 2. Withdraw 3. Get Balance 4. Add Account 5. Close Account +// } +// +//} diff --git a/src/main/test/CustomerTest.java b/src/main/test/CustomerTest.java index fa7be6f..bb947f5 100644 --- a/src/main/test/CustomerTest.java +++ b/src/main/test/CustomerTest.java @@ -1,5 +1,6 @@ import org.junit.Assert; import org.junit.Test; +import sun.util.resources.cldr.so.CurrencyNames_so; import java.util.ArrayList; @@ -19,6 +20,20 @@ public void CustomerTest(){ } + + @Test + public void getAccountByIndex(){ + //given + Customer customer = new Customer(); + String expected = "Account# 1"; + + //when + String actual = customer.getAccountByIndex(0); + + Assert.assertEquals(expected, actual); + + + } // @Test // public void getAccountList(){ // //given From b2fbdd660cee6a13895bb2b2f9696deb5e4dff9a Mon Sep 17 00:00:00 2001 From: gpatelos Date: Wed, 25 Oct 2017 00:00:30 -0400 Subject: [PATCH 08/15] always be committing. failed addedObjectByIndex --- src/main/java/Customer.java | 4 ++++ src/main/test/CustomerTest.java | 18 ++++++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/src/main/java/Customer.java b/src/main/java/Customer.java index f511be5..5ac13e9 100644 --- a/src/main/java/Customer.java +++ b/src/main/java/Customer.java @@ -36,6 +36,10 @@ public String getAccountByIndex(int index){ return AccountList.get(index).toString(); } + public Account getAccountObjectByIndex(int index){ + return AccountList.get(index); + } + // public String getAccountList() { // for (: diff --git a/src/main/test/CustomerTest.java b/src/main/test/CustomerTest.java index bb947f5..67029e9 100644 --- a/src/main/test/CustomerTest.java +++ b/src/main/test/CustomerTest.java @@ -30,10 +30,28 @@ public void getAccountByIndex(){ //when String actual = customer.getAccountByIndex(0); + //then Assert.assertEquals(expected, actual); } + + @Test + public void getAccountObjectByIndex(){ + //given + Customer customer = new Customer(); + Account expected = new Checking(); + + //when + Account actual = customer.getAccountObjectByIndex(0); + + Assert.assertEquals(expected,actual); + + + + + } + // @Test // public void getAccountList(){ // //given From 1fb454435b050d8d4115662f9f5a9e73ddf971b6 Mon Sep 17 00:00:00 2001 From: gpatelos Date: Wed, 25 Oct 2017 08:55:32 -0400 Subject: [PATCH 09/15] always be committing. addOneAccount() --- src/main/java/Customer.java | 18 +++++++++++++----- src/main/test/CustomerTest.java | 30 +++++++++++++++++++++++++----- 2 files changed, 38 insertions(+), 10 deletions(-) diff --git a/src/main/java/Customer.java b/src/main/java/Customer.java index 5ac13e9..72b1d0f 100644 --- a/src/main/java/Customer.java +++ b/src/main/java/Customer.java @@ -36,10 +36,22 @@ public String getAccountByIndex(int index){ return AccountList.get(index).toString(); } + public int getNumberOfAccounts(){ + return numberOfAccounts; + } + public Account getAccountObjectByIndex(int index){ return AccountList.get(index); } + public void addOneAccount(){ + + this.AccountList.add(new Checking()); + this.numberOfAccounts++; + return; + + } + // public String getAccountList() { // for (: @@ -54,11 +66,7 @@ public Account getAccountObjectByIndex(int index){ // // }; // -// public String addOneAccount(){ -// -// return ""; -// -// } + // // public void closeAllAccounts(){ // diff --git a/src/main/test/CustomerTest.java b/src/main/test/CustomerTest.java index 67029e9..166fc69 100644 --- a/src/main/test/CustomerTest.java +++ b/src/main/test/CustomerTest.java @@ -36,16 +36,36 @@ public void getAccountByIndex(){ } + @Test - public void getAccountObjectByIndex(){ + public void addOneAccountTest(){ //given Customer customer = new Customer(); - Account expected = new Checking(); + String expected = "You now have 3 accounts: Account# 1, Account# 2, Account# 3."; //when - Account actual = customer.getAccountObjectByIndex(0); + customer.addOneAccount(); //add account 2 + customer.addOneAccount(); //add account 3 + + + String actual = "You now have " + customer.getNumberOfAccounts() + " accounts: "; // + customer.listAllAccounts() + + //then + Assert.assertEquals(expected, actual); + + + } - Assert.assertEquals(expected,actual); +// @Test +// public void getAccountObjectByIndex(){ +// //given +// Customer customer = new Customer(); +// Account expected = new Checking(); +// +// //when +// Account actual = customer.getAccountObjectByIndex(0); +// +// Assert.assertEquals(expected,actual); @@ -112,6 +132,6 @@ public void getAccountObjectByIndex(){ - } + From 344eab628df85ccb10941304befe6c236813a5b3 Mon Sep 17 00:00:00 2001 From: gpatelos Date: Wed, 25 Oct 2017 15:15:31 -0400 Subject: [PATCH 10/15] always be committing. accountmanipulat add/remove --- src/main/java/AccountWarehouse.java | 34 ++++++++++++ src/main/java/AllTheAccounts.java | 17 ------ src/main/java/Customer.java | 20 +++++-- src/main/java/DoTheThing.java | 1 + src/main/test/AccountWarehouseTest.java | 69 +++++++++++++++++++++++++ src/main/test/CustomerTest.java | 15 ++++-- 6 files changed, 129 insertions(+), 27 deletions(-) create mode 100644 src/main/java/AccountWarehouse.java delete mode 100644 src/main/java/AllTheAccounts.java create mode 100644 src/main/test/AccountWarehouseTest.java diff --git a/src/main/java/AccountWarehouse.java b/src/main/java/AccountWarehouse.java new file mode 100644 index 0000000..58bea58 --- /dev/null +++ b/src/main/java/AccountWarehouse.java @@ -0,0 +1,34 @@ +import java.util.ArrayList; + +public class AccountWarehouse { + private static final ArrayList accounts = new ArrayList(); + + private AccountWarehouse(){ + + } + + public static ArrayList getAccounts() { + return accounts; + } + + public static Account findAccountByAcctNumber(int acctNumber) { + + for (int i = 0; i < accounts.size(); i++) { + if (accounts.get(i).getAcctNumber() == acctNumber) { + return accounts.get(i); + } + }return null; + } + + public static void addAccount(Account account){ + accounts.add(account); + } + + public String removeAccount(){ + return; + } + + +} + + diff --git a/src/main/java/AllTheAccounts.java b/src/main/java/AllTheAccounts.java deleted file mode 100644 index a85af4b..0000000 --- a/src/main/java/AllTheAccounts.java +++ /dev/null @@ -1,17 +0,0 @@ -import java.util.ArrayList; - -public class AllTheAccounts { - - private ArrayList AllTheAccounts; - - public void addToAllTheAccounts(){ - return; - } - - public void removeFromAllTheAccounts(){ - return; - } - -} - - diff --git a/src/main/java/Customer.java b/src/main/java/Customer.java index 72b1d0f..23246c2 100644 --- a/src/main/java/Customer.java +++ b/src/main/java/Customer.java @@ -5,14 +5,25 @@ public class Customer { private String username; private String password; private ArrayList AccountList; - private int numberOfAccounts; + public Customer(){ this.username = "UNASSIGNED"; this.password = "PASSWORD"; this.AccountList = new ArrayList(); this.AccountList.add(new Checking()); - this.numberOfAccounts = 1; + } + + + public Customer(String username){ + this(); + this.username = username; + + } + + public Customer(String username, String password){ + this(username); + this.password = password; } @@ -34,10 +45,11 @@ public String getUsername() { public String getAccountByIndex(int index){ return AccountList.get(index).toString(); + } public int getNumberOfAccounts(){ - return numberOfAccounts; + return AccountList.size(); } public Account getAccountObjectByIndex(int index){ @@ -45,9 +57,7 @@ public Account getAccountObjectByIndex(int index){ } public void addOneAccount(){ - this.AccountList.add(new Checking()); - this.numberOfAccounts++; return; } diff --git a/src/main/java/DoTheThing.java b/src/main/java/DoTheThing.java index fd78b49..ee11d62 100644 --- a/src/main/java/DoTheThing.java +++ b/src/main/java/DoTheThing.java @@ -12,6 +12,7 @@ // // showMainMenu(); // // 1. Deposit 2. Withdraw 3. Get Balance 4. Add Account 5. Close Account +// // } // //} diff --git a/src/main/test/AccountWarehouseTest.java b/src/main/test/AccountWarehouseTest.java new file mode 100644 index 0000000..a16055e --- /dev/null +++ b/src/main/test/AccountWarehouseTest.java @@ -0,0 +1,69 @@ +import org.junit.Assert; +import org.junit.Test; + +import java.util.ArrayList; + +public class AccountWarehouseTest { + +// @Test +// public static void getNumberofAccountsTest(){ +// return AccountWarehouse.size(); +// } + + + + + + @Test + public void findAccountByAcctNumber(){ + //given + // ArrayList accounts = AccountWarehouse.getAccounts(); + Account expected = new Savings(); + AccountWarehouse.addAccount(expected); + + //when + Account actual = AccountWarehouse.findAccountByAcctNumber(expected.getAcctNumber()); + + //then + Assert.assertEquals(expected,actual); + + } + + + @Test + public void addAccountTest(){ + //given + Account expected = new Savings(); + + //when + AccountWarehouse.addAccount(expected); + + //then + Account actual = AccountWarehouse.findAccountByAcctNumber(expected.getAcctNumber()); + + + Assert.assertEquals(expected, actual); + + } + + @Test + public void removeAccountTest(){ + //given + Account acctnumber1 = new Savings(); + Account acctnumber2 = new Savings(); + Account acctnumber3 = new Checking(); + AccountWarehouse.addAccount(acctnumber1); + AccountWarehouse.addAccount(acctnumber2); + AccountWarehouse.addAccount(acctnumber3); + String = "Account# 3 removed"; + + + //when + AccountWarehouse.removeAccount(3); + + //then + + + } + +} diff --git a/src/main/test/CustomerTest.java b/src/main/test/CustomerTest.java index 166fc69..df263be 100644 --- a/src/main/test/CustomerTest.java +++ b/src/main/test/CustomerTest.java @@ -8,16 +8,21 @@ public class CustomerTest { @Test public void CustomerTest(){ + + //given - Customer acustomer = new Customer(); - String expected = "UNASSIGNED"; + Customer customer = new Customer("luvmykitty47", "fluffy"); + String expected_username = "luvmykitty47"; + String expected_password = "fluffy"; //when - String actual = acustomer.getUsername(); + String actual_username = customer.getUsername(); + String actual_password = customer.getPassword(); - //then - Assert.assertEquals("test default username assignment", expected, actual); + //then + Assert.assertEquals("test constructor username", expected_username, actual_username); + Assert.assertEquals("test constructor password", expected_password, actual_password); } From 9b54a05f493bc07596819d9b8ebd5638af8bdbf8 Mon Sep 17 00:00:00 2001 From: gpatelos Date: Wed, 25 Oct 2017 15:36:43 -0400 Subject: [PATCH 11/15] always be committing. add/remove/find by acct# working --- src/main/java/AccountWarehouse.java | 5 +++-- src/main/test/AccountWarehouseTest.java | 24 +++++++----------------- 2 files changed, 10 insertions(+), 19 deletions(-) diff --git a/src/main/java/AccountWarehouse.java b/src/main/java/AccountWarehouse.java index 58bea58..4f29055 100644 --- a/src/main/java/AccountWarehouse.java +++ b/src/main/java/AccountWarehouse.java @@ -24,8 +24,9 @@ public static void addAccount(Account account){ accounts.add(account); } - public String removeAccount(){ - return; + public static void removeAccount(Account account){ + accounts.remove(account); + } diff --git a/src/main/test/AccountWarehouseTest.java b/src/main/test/AccountWarehouseTest.java index a16055e..9805c30 100644 --- a/src/main/test/AccountWarehouseTest.java +++ b/src/main/test/AccountWarehouseTest.java @@ -5,14 +5,6 @@ public class AccountWarehouseTest { -// @Test -// public static void getNumberofAccountsTest(){ -// return AccountWarehouse.size(); -// } - - - - @Test public void findAccountByAcctNumber(){ @@ -48,21 +40,19 @@ public void addAccountTest(){ @Test public void removeAccountTest(){ + //given + ArrayList accounts = AccountWarehouse.getAccounts(); Account acctnumber1 = new Savings(); - Account acctnumber2 = new Savings(); - Account acctnumber3 = new Checking(); - AccountWarehouse.addAccount(acctnumber1); - AccountWarehouse.addAccount(acctnumber2); - AccountWarehouse.addAccount(acctnumber3); - String = "Account# 3 removed"; - //when - AccountWarehouse.removeAccount(3); + AccountWarehouse.addAccount(acctnumber1); + AccountWarehouse.removeAccount(acctnumber1); + Account actual = AccountWarehouse.findAccountByAcctNumber(1); - //then + //then + Assert.assertEquals(null, actual); } From 587e1c81649fc4166af06025c8e956ae2021d3c9 Mon Sep 17 00:00:00 2001 From: gpatelos Date: Wed, 25 Oct 2017 20:27:03 -0400 Subject: [PATCH 12/15] always be committing. revisit customer to tackle array. needs work --- src/main/java/Account.java | 5 +- src/main/java/AllTheCustomers.java | 21 ------- src/main/java/Customer.java | 46 ++++++++++----- src/main/java/CustomerWarehouse.java | 33 +++++++++++ src/main/java/Main.java | 2 +- src/main/test/AccountWarehouseTest.java | 6 +- src/main/test/CheckingTest.java | 2 +- src/main/test/CustomerTest.java | 71 +++++++++++++++++++----- src/main/test/CustomerWarehouseTest.java | 48 ++++++++++++++++ 9 files changed, 176 insertions(+), 58 deletions(-) delete mode 100644 src/main/java/AllTheCustomers.java create mode 100644 src/main/java/CustomerWarehouse.java create mode 100644 src/main/test/CustomerWarehouseTest.java diff --git a/src/main/java/Account.java b/src/main/java/Account.java index 224a003..860c7cd 100644 --- a/src/main/java/Account.java +++ b/src/main/java/Account.java @@ -3,13 +3,12 @@ public abstract class Account { private int acctnumber; private double balance; - private static int nextAvailableAcctNumber = 1; public Account(){ - this.acctnumber = nextAvailableAcctNumber; + this.acctnumber = AccountWarehouse.getAccounts().size(); this.balance = 0; - nextAvailableAcctNumber++; + //nextAvailableAcctNumber++; } public Account(double initial_deposit){ diff --git a/src/main/java/AllTheCustomers.java b/src/main/java/AllTheCustomers.java deleted file mode 100644 index 5942a43..0000000 --- a/src/main/java/AllTheCustomers.java +++ /dev/null @@ -1,21 +0,0 @@ -import java.util.ArrayList; - -public class AllTheCustomers { - - private ArrayList MasterCustomerList; - - ///////////////////////////////////////////////////////////// - - - public ArrayList getMasterCustomerList() { - return MasterCustomerList; - } - - public void addToMasterCustomerList(){ - return; - } - - public void removeFromMasterCustomerList(){ - return; - } -} diff --git a/src/main/java/Customer.java b/src/main/java/Customer.java index 23246c2..0021a33 100644 --- a/src/main/java/Customer.java +++ b/src/main/java/Customer.java @@ -4,14 +4,14 @@ public class Customer { private String username; private String password; - private ArrayList AccountList; + private ArrayList customerAccounts; public Customer(){ this.username = "UNASSIGNED"; this.password = "PASSWORD"; - this.AccountList = new ArrayList(); - this.AccountList.add(new Checking()); + this.customerAccounts = new ArrayList(); + this.customerAccounts.add(new Checking()); } @@ -43,26 +43,44 @@ public String getUsername() { return username; } - public String getAccountByIndex(int index){ - return AccountList.get(index).toString(); - + public ArrayList getCustomerAccounts() { + return customerAccounts; } - public int getNumberOfAccounts(){ - return AccountList.size(); - } + public void openAccount(){ + customerAccounts.add(); + AccountWarehouse.addAccount(); - public Account getAccountObjectByIndex(int index){ - return AccountList.get(index); } - public void addOneAccount(){ - this.AccountList.add(new Checking()); - return; + public Account lookupAcctByNumber(int accountnumber){ + return; } + + + // public String getAccountByIndex(int index){ +// return AccountList.get(index).toString(); +// +// } +// +// public int getNumberOfAccounts(){ +// return AccountList.size(); +// } +// +// public Account getAccountObjectByIndex(int index){ +// return AccountList.get(index); +// } +// +// public void addOneAccount(){ +// this.AccountList.add(new Checking()); +// return; +// +// } +// + // public String getAccountList() { // for (: // ) { diff --git a/src/main/java/CustomerWarehouse.java b/src/main/java/CustomerWarehouse.java new file mode 100644 index 0000000..83bfda6 --- /dev/null +++ b/src/main/java/CustomerWarehouse.java @@ -0,0 +1,33 @@ +import java.util.ArrayList; + +public class CustomerWarehouse { + + private static final ArrayList customers = new ArrayList(); + + + + public static ArrayList getCustomers() { + return customers; + } + + public static Customer lookupCustomer(String username) { +// for(Customer currentelement: customers) { +// if (customers.get(currentelement).getUsername() == username) { +// return customers.get(currentelement); +// } +// } + for (int i = 0; i < customers.size(); i++) { + if (customers.get(i).getUsername() == username) { + return customers.get(i); + } + + }return null; + } + public static void addCustomer(Customer customer){ + customers.add(customer); + } + + public static void removeCustomer(Customer customer){ + customers.remove(customer); + } +} diff --git a/src/main/java/Main.java b/src/main/java/Main.java index 05e41a9..1dbc0cb 100644 --- a/src/main/java/Main.java +++ b/src/main/java/Main.java @@ -4,6 +4,6 @@ public class Main { public static void main(String[] args){ - + } } diff --git a/src/main/test/AccountWarehouseTest.java b/src/main/test/AccountWarehouseTest.java index 9805c30..57eaec7 100644 --- a/src/main/test/AccountWarehouseTest.java +++ b/src/main/test/AccountWarehouseTest.java @@ -42,17 +42,17 @@ public void addAccountTest(){ public void removeAccountTest(){ //given - ArrayList accounts = AccountWarehouse.getAccounts(); + Account expected = null; Account acctnumber1 = new Savings(); //when AccountWarehouse.addAccount(acctnumber1); AccountWarehouse.removeAccount(acctnumber1); - Account actual = AccountWarehouse.findAccountByAcctNumber(1); + Account actual = AccountWarehouse.findAccountByAcctNumber(acctnumber1.getAcctNumber()); //then - Assert.assertEquals(null, actual); + Assert.assertEquals(expected, actual); } diff --git a/src/main/test/CheckingTest.java b/src/main/test/CheckingTest.java index 9a5a94a..d3bc71c 100644 --- a/src/main/test/CheckingTest.java +++ b/src/main/test/CheckingTest.java @@ -74,7 +74,7 @@ public void transferTest(){ @Test public void toStringTest(){ Savings savings = new Savings(); - String expected = "Account#: 1"; + String expected = "Account# 1"; String actual = savings.toString(); diff --git a/src/main/test/CustomerTest.java b/src/main/test/CustomerTest.java index df263be..08a160c 100644 --- a/src/main/test/CustomerTest.java +++ b/src/main/test/CustomerTest.java @@ -25,42 +25,83 @@ public void CustomerTest(){ Assert.assertEquals("test constructor password", expected_password, actual_password); } - @Test - public void getAccountByIndex(){ + public void openAccount(){ //given Customer customer = new Customer(); - String expected = "Account# 1"; + Checking expected = new Checking(); //when - String actual = customer.getAccountByIndex(0); + customer.openAccount(); + Checking actual = customer.lookupAccount(expected.getAcctNumber()) //then - Assert.assertEquals(expected, actual); - + Assert.assertEquals(expected,actual); } - @Test - public void addOneAccountTest(){ + public void lookupAccountByNumber(){ //given Customer customer = new Customer(); - String expected = "You now have 3 accounts: Account# 1, Account# 2, Account# 3."; + Checking expected = new Checking(); - //when - customer.addOneAccount(); //add account 2 - customer.addOneAccount(); //add account 3 + customer.getCustomerAccounts().add(expected); - String actual = "You now have " + customer.getNumberOfAccounts() + " accounts: "; // + customer.listAllAccounts() + //when + Checking actual = lookupAccountByNumber(expected.getAcctNumber()); //then - Assert.assertEquals(expected, actual); - } +// @Test +// public void getCustomerAccountsTest(){ +// //given +// Customer customer = new Customer(); +// ArrayList customerAccounts = new +// //when +// +// //then +// } +// +// +// @Test +// public void getAccountByIndex(){ +// //given +// Customer customer = new Customer(); +// String expected = "Account# 1"; +// +// //when +// String actual = customer.getAccountByIndex(0); +// +// //then +// Assert.assertEquals(expected, actual); +// +// +// } +// +// +// @Test +// public void addOneAccountTest(){ +// //given +// Customer customer = new Customer(); +// String expected = "You now have 3 accounts: Account# 1, Account# 2, Account# 3."; +// +// //when +// customer.addOneAccount(); //add account 2 +// customer.addOneAccount(); //add account 3 +// +// +// String actual = "You now have " + customer.getNumberOfAccounts() + " accounts: "; // + customer.listAllAccounts() +// +// //then +// Assert.assertEquals(expected, actual); +// +// +// } + // @Test // public void getAccountObjectByIndex(){ // //given diff --git a/src/main/test/CustomerWarehouseTest.java b/src/main/test/CustomerWarehouseTest.java new file mode 100644 index 0000000..4cbd563 --- /dev/null +++ b/src/main/test/CustomerWarehouseTest.java @@ -0,0 +1,48 @@ +import org.junit.Assert; +import org.junit.Test; + +public class CustomerWarehouseTest { + + @Test + public void lookupCustomerTest(){ + //given + Customer expected = new Customer(); + CustomerWarehouse.addCustomer(expected); + + //when + Customer actual = CustomerWarehouse.lookupCustomer(expected.getUsername()); + + //then + Assert.assertEquals(expected, actual); + } + + @Test + public void addCustomer(){ + //given +// CustomerWarehouse customers = new CustomerWarehouse(); + Customer expected = new Customer(); + CustomerWarehouse.addCustomer(expected); + + //when + Customer actual = CustomerWarehouse.lookupCustomer(expected.getUsername()); + + //then + Assert.assertEquals(expected,actual); + + } + + @Test + public void removeCustomerTest(){ + //given + Customer expected = null; + Customer customer = new Customer(); + CustomerWarehouse.addCustomer(customer); + + //when + CustomerWarehouse.removeCustomer(customer); + Customer actual = CustomerWarehouse.lookupCustomer(customer.getUsername()); + + //then + Assert.assertEquals(expected,actual); + } +} From 7a32d023972f822085f2b6ab752ae318abe09b31 Mon Sep 17 00:00:00 2001 From: gpatelos Date: Wed, 25 Oct 2017 21:22:42 -0400 Subject: [PATCH 13/15] abc. customer openAccount and lookupAccountByNumber failing --- src/main/java/Customer.java | 7 ++++--- src/main/test/CustomerTest.java | 13 ++++++++----- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/src/main/java/Customer.java b/src/main/java/Customer.java index 0021a33..83d4e16 100644 --- a/src/main/java/Customer.java +++ b/src/main/java/Customer.java @@ -48,14 +48,15 @@ public ArrayList getCustomerAccounts() { } public void openAccount(){ - customerAccounts.add(); - AccountWarehouse.addAccount(); + // customerAccounts.add(); + // AccountWarehouse.addAccount(); + } public Account lookupAcctByNumber(int accountnumber){ - return; + return null; } diff --git a/src/main/test/CustomerTest.java b/src/main/test/CustomerTest.java index 08a160c..f1e4391 100644 --- a/src/main/test/CustomerTest.java +++ b/src/main/test/CustomerTest.java @@ -29,11 +29,11 @@ public void CustomerTest(){ public void openAccount(){ //given Customer customer = new Customer(); - Checking expected = new Checking(); + Account expected = new Checking(); //when customer.openAccount(); - Checking actual = customer.lookupAccount(expected.getAcctNumber()) + Account actual = customer.lookupAcctByNumber(expected.getAcctNumber()); //then Assert.assertEquals(expected,actual); @@ -44,15 +44,18 @@ public void openAccount(){ public void lookupAccountByNumber(){ //given Customer customer = new Customer(); - Checking expected = new Checking(); + Account checking = new Checking(); + int expected = checking.getAcctNumber(); - customer.getCustomerAccounts().add(expected); + customer.getCustomerAccounts().add(checking); //when - Checking actual = lookupAccountByNumber(expected.getAcctNumber()); + Account lookedUpAccont = customer.lookupAcctByNumber(expected); + int actual = lookedUpAccont.getAcctNumber(); //then + Assert.assertEquals(expected,actual); } From d2f12ef16f205f3a1eb7df0c63cc07efb9bc6a59 Mon Sep 17 00:00:00 2001 From: gpatelos Date: Wed, 25 Oct 2017 22:11:47 -0400 Subject: [PATCH 14/15] abc. openAccount/lookup test working --- src/main/java/Account.java | 10 +++++----- src/main/java/Customer.java | 10 +++++++--- src/main/test/CustomerTest.java | 7 ++++--- 3 files changed, 16 insertions(+), 11 deletions(-) diff --git a/src/main/java/Account.java b/src/main/java/Account.java index 860c7cd..a2bd8bd 100644 --- a/src/main/java/Account.java +++ b/src/main/java/Account.java @@ -61,16 +61,16 @@ public String transfer(Account toAccount, double amount){ return "Transfer complete. New 'from' balance is $" + String.format("%,.2f", this.getBalance()) + ". Your new 'to' balance is $" + String.format("%,.2f", toAccount.getBalance())+"."; } - @Override - public String toString(){ - return "Account# " + this.acctnumber; +// @Override +// public String toString(){ +// return "Account# " + this.acctnumber; - } +} + -} diff --git a/src/main/java/Customer.java b/src/main/java/Customer.java index 83d4e16..ca04750 100644 --- a/src/main/java/Customer.java +++ b/src/main/java/Customer.java @@ -48,14 +48,18 @@ public ArrayList getCustomerAccounts() { } public void openAccount(){ - // customerAccounts.add(); - // AccountWarehouse.addAccount(); + Account checking = new Checking(); + customerAccounts.add(checking); + AccountWarehouse.addAccount(checking); } public Account lookupAcctByNumber(int accountnumber){ - + for(int i = 0; i Date: Wed, 25 Oct 2017 22:25:59 -0400 Subject: [PATCH 15/15] abc. live to fight another day --- src/main/test/CustomerTest.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main/test/CustomerTest.java b/src/main/test/CustomerTest.java index f02754b..3106c48 100644 --- a/src/main/test/CustomerTest.java +++ b/src/main/test/CustomerTest.java @@ -35,6 +35,8 @@ public void openAccount(){ customer.openAccount(); //Account actual = customer.lookupAcctByNumber(); + //when you realize that you're trying to figure out how declare an "expected" object before + //it's been created, it's time to go to bed. int actual =customer.getCustomerAccounts().size(); //then @@ -52,8 +54,8 @@ public void lookupAccountByNumber(){ customer.getCustomerAccounts().add(checking); //when - Account lookedUpAccont = customer.lookupAcctByNumber(expected); - int actual = lookedUpAccont.getAcctNumber(); + Account lookedUpAccount = customer.lookupAcctByNumber(expected); + int actual = lookedUpAccount.getAcctNumber(); //then Assert.assertEquals(expected,actual);