Skip to content

Commit 0351f7a

Browse files
committed
test:wrote tes to track auditlogs
1 parent 329d7d8 commit 0351f7a

File tree

2 files changed

+28
-3
lines changed
  • lesson_17/bank/bank_app/src

2 files changed

+28
-3
lines changed

lesson_17/bank/bank_app/src/main/java/com/codedifferently/lesson17/bank/BankAtm.java

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -47,11 +47,12 @@ public Set<CheckingAccount> findAccountsByCustomerId(UUID customerId) {
4747
* @param accountNumber The account number.
4848
* @param amount The amount to deposit.
4949
*/
50-
public void depositFunds(String accountNumber, double amount) {
50+
public String depositFunds(String accountNumber, double amount) {
5151
CheckingAccount account = getAccountOrThrow(accountNumber);
5252
account.deposit(amount);
5353
atmLog.addLog(
5454
new AuditLogInfo(TranscationType.DEPOSIT, amount, account.getBalance(), accountNumber));
55+
return atmLog.showLog();
5556
}
5657

5758
/**
@@ -60,12 +61,13 @@ public void depositFunds(String accountNumber, double amount) {
6061
* @param accountNumber The account number.
6162
* @param check The check to deposit.
6263
*/
63-
public void depositFunds(String accountNumber, Check check) {
64+
public String depositFunds(String accountNumber, Check check) {
6465
CheckingAccount account = getAccountOrThrow(accountNumber);
6566
check.depositFunds(account);
6667
atmLog.addLog(
6768
new AuditLogInfo(
6869
TranscationType.DEPOSIT, check.amount, account.getBalance(), accountNumber));
70+
return atmLog.showLog();
6971
}
7072

7173
/**
@@ -74,11 +76,12 @@ public void depositFunds(String accountNumber, Check check) {
7476
* @param accountNumber
7577
* @param amount
7678
*/
77-
public void withdrawFunds(String accountNumber, double amount) {
79+
public String withdrawFunds(String accountNumber, double amount) {
7880
CheckingAccount account = getAccountOrThrow(accountNumber);
7981
account.withdraw(amount);
8082
atmLog.addLog(
8183
new AuditLogInfo(TranscationType.WITHDRAWAL, -amount, account.getBalance(), accountNumber));
84+
return atmLog.showLog();
8285
}
8386

8487
/**

lesson_17/bank/bank_app/src/test/java/com/codedifferently/lesson17/bank/BankAtmTest.java

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -112,4 +112,26 @@ void testWithdrawFunds_AccountNotFound() {
112112
.isThrownBy(() -> classUnderTest.withdrawFunds(nonExistingAccountNumber, 50.0))
113113
.withMessage("Account not found");
114114
}
115+
116+
@Test
117+
void testDepositFunds_auditLogIsCorrect() {
118+
// When
119+
String actual = classUnderTest.depositFunds("123456789", 50);
120+
String expected = "123456789 DEPOSIT 50.0 150.0";
121+
assertThat(actual.equals(expected));
122+
}
123+
124+
@Test
125+
void testDepositFunds_auditLogIsCorrectWithMultipleDebitsAndCredits() {
126+
127+
Check check = new Check("987654321", 100.0, account1);
128+
// When
129+
classUnderTest.depositFunds("123456789", 50);
130+
classUnderTest.depositFunds("987654321", 150);
131+
classUnderTest.depositFunds("123456789", check);
132+
String actual = classUnderTest.withdrawFunds("123456789", 35.0);
133+
String expected =
134+
"123456789 DEPOSIT 50.0 150.0 \n 987654321 DEPOSIT 150.0 350.0 \n 123456789 DEPOSIT 100.0 450.0 \n 123456789 WITHDRAWAL -35.0 415";
135+
assertThat(actual.equals(expected));
136+
}
115137
}

0 commit comments

Comments
 (0)