Skip to content

Commit 0ca6c2a

Browse files
committed
fix: lesson_17 implemented businesscheckingAccount test
1 parent c0c8ccc commit 0ca6c2a

File tree

4 files changed

+49
-11
lines changed

4 files changed

+49
-11
lines changed

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

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ private boolean hasBusinessOwner(Set<Customer> owners) {
1414
return owners.stream().anyMatch(Customer::isBusiness);
1515
}
1616

17-
1817
@Override
1918
public String toString() {
2019
return "BusinessCheckingAccount{"

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
package com.codedifferently.lesson17.bank;
22

3+
import com.codedifferently.lesson17.bank.exceptions.InsufficientFundsException;
34
import java.util.Set;
45

5-
import com.codedifferently.lesson17.bank.exceptions.InsufficientFundsException;
66
/** Represents a checking account. */
77
public class CheckingAccount {
88

Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
package com.codedifferently.lesson17.bank;
2+
3+
import static org.junit.jupiter.api.Assertions.assertThrows;
4+
import static org.junit.jupiter.api.Assertions.assertTrue;
5+
6+
import java.util.HashSet;
7+
import java.util.Set;
8+
import java.util.UUID;
9+
import org.junit.jupiter.api.BeforeEach;
10+
import org.junit.jupiter.api.Test;
11+
12+
public class BusinessCheckingAccountTest {
13+
private Customer regularCustomer;
14+
private BusinessOwner BusinessCustomer;
15+
private Set<Customer> owners;
16+
17+
@BeforeEach
18+
void setUp() {
19+
regularCustomer = new Customer(UUID.randomUUID(), "james");
20+
BusinessCustomer = new BusinessOwner(UUID.randomUUID(), "john", "long johns");
21+
owners = new HashSet<>();
22+
}
23+
24+
@Test
25+
void hasBusinessOwnerTest() {
26+
owners.add(regularCustomer);
27+
28+
IllegalArgumentException thrown =
29+
assertThrows(
30+
IllegalArgumentException.class,
31+
() -> new BusinessCheckingAccount("12354", owners, 100.00),
32+
"Expect Constructor to throw but did not");
33+
34+
assertTrue(thrown.getMessage().contains("requires at least one business owner"));
35+
}
36+
}
Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,16 @@
11
package com.codedifferently.lesson17.bank;
22

3+
import static org.junit.jupiter.api.Assertions.assertEquals;
4+
35
import java.util.HashSet;
46
import java.util.Set;
57
import java.util.UUID;
6-
7-
import static org.junit.jupiter.api.Assertions.assertEquals;
88
import org.junit.jupiter.api.BeforeEach;
99
import org.junit.jupiter.api.Test;
1010

11-
public class
12-
SavingsAccountTest {
13-
private SavingsAccount classUnderTest;
14-
private Set<Customer> owners;
11+
public class SavingsAccountTest {
12+
private SavingsAccount classUnderTest;
13+
private Set<Customer> owners;
1514

1615
@BeforeEach
1716
void setUp() {
@@ -20,9 +19,13 @@ void setUp() {
2019
owners.add(new Customer(UUID.randomUUID(), "Jane Smith"));
2120
classUnderTest = new SavingsAccount("123456789", owners, 100.0);
2221
}
23-
@Test
24-
void toStringTest() {
22+
23+
@Test
24+
void toStringTest() {
25+
// arrange
2526
String expected = "SavingsAccount{accountNumber='123456789', balance=100.0, isActive=true}";
27+
28+
// assert
2629
assertEquals(expected, classUnderTest.toString());
27-
}
30+
}
2831
}

0 commit comments

Comments
 (0)