Skip to content

Commit 454fdef

Browse files
feat: adds tests for Employee and EmployeeManager classes
1 parent 50680f2 commit 454fdef

File tree

3 files changed

+201
-0
lines changed

3 files changed

+201
-0
lines changed

lesson_15/tdd/tdd_app/src/main/java/com/codedifferently/lesson15/Employee.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,17 @@ public Employee(int id, String name, String department, double salary) {
1313
this.salary = salary;
1414
}
1515

16+
public String getDetails() {
17+
return "Employee ID: "
18+
+ id
19+
+ "\nEmployee Name: "
20+
+ name
21+
+ "\nDepartment: "
22+
+ department
23+
+ "\nSalary: "
24+
+ salary;
25+
}
26+
1627
// Getters and setters
1728
public int getId() {
1829
return id;
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
package com.codedifferently.lesson15;
2+
3+
import static org.assertj.core.api.Assertions.assertThat;
4+
5+
import org.junit.jupiter.api.Test;
6+
7+
class EmployeeManagerTest {
8+
9+
@Test
10+
public void testAddEmployee() {
11+
// Arrange
12+
EmployeeManager employees = new EmployeeManager();
13+
Employee testEmployee = new Employee(123, "Mercedes", "Tech", 1000000);
14+
15+
// Act
16+
employees.addEmployee(testEmployee);
17+
int actual = employees.getEmployeeCount();
18+
19+
// Assert
20+
assertThat(actual).isEqualTo(1);
21+
}
22+
23+
@Test
24+
public void testGetEmployee() {
25+
// Arrange
26+
EmployeeManager employees = new EmployeeManager();
27+
Employee testEmployee = new Employee(123, "Mercedes", "Tech", 1000000);
28+
29+
// Act
30+
employees.addEmployee(testEmployee);
31+
Employee actualEmployee = employees.getEmployee(123);
32+
33+
// Assert
34+
assertThat(actualEmployee).isNotNull();
35+
assertThat(actualEmployee.getName()).isEqualTo("Mercedes");
36+
}
37+
38+
@Test
39+
public void testRemoveEmployee() {
40+
// Arrange
41+
EmployeeManager employees = new EmployeeManager();
42+
Employee testEmployee = new Employee(123, "Mercedes", "Tech", 1000000);
43+
44+
// Act
45+
employees.addEmployee(testEmployee);
46+
employees.removeEmployee(123);
47+
int actual = employees.getEmployeeCount();
48+
49+
// Assert
50+
assertThat(actual).isEqualTo(0);
51+
}
52+
53+
@Test
54+
public void testGetEmployeeCount() {
55+
// Arrange
56+
EmployeeManager employees = new EmployeeManager();
57+
Employee testEmployee = new Employee(123, "Mercedes", "Tech", 1000000);
58+
Employee testEmployee2 = new Employee(456, "Anthony", "Tech", 1000000);
59+
60+
// Act
61+
employees.addEmployee(testEmployee);
62+
employees.addEmployee(testEmployee2);
63+
int actual = employees.getEmployeeCount();
64+
65+
// Assert
66+
assertThat(actual).isEqualTo(2);
67+
}
68+
}
Lines changed: 122 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,122 @@
1+
package com.codedifferently.lesson15;
2+
3+
import static org.assertj.core.api.Assertions.assertThat;
4+
5+
import org.junit.jupiter.api.Test;
6+
7+
class EmployeeTest {
8+
9+
@Test
10+
public void testGetId() {
11+
// Arrange
12+
Employee testEmployee = new Employee(123, "Mercedes", "Tech", 1000000);
13+
14+
// Act
15+
int actual = testEmployee.getId();
16+
17+
// Assert
18+
assertThat(actual).isEqualTo(123);
19+
}
20+
21+
@Test
22+
public void testSetId() {
23+
// Arrange
24+
Employee testEmployee = new Employee(123, "Mercedes", "Tech", 1000000);
25+
26+
// Act
27+
testEmployee.setId(321);
28+
int actual = testEmployee.getId();
29+
30+
// Assert
31+
assertThat(actual).isEqualTo(321);
32+
}
33+
34+
@Test
35+
public void testGetName() {
36+
// Arrange
37+
Employee testEmployee = new Employee(123, "Mercedes", "Tech", 1000000);
38+
39+
// Act
40+
String actual = testEmployee.getName();
41+
42+
// Assert
43+
assertThat(actual).isEqualTo("Mercedes");
44+
}
45+
46+
@Test
47+
public void testSetName() {
48+
// Arrange
49+
Employee testEmployee = new Employee(123, "Mercedes", "Tech", 1000000);
50+
51+
// Act
52+
testEmployee.setName("Anthony");
53+
String actual = testEmployee.getName();
54+
55+
// Assert
56+
assertThat(actual).isEqualTo("Anthony");
57+
}
58+
59+
@Test
60+
public void testGetDepartment() {
61+
// Arrange
62+
Employee testEmployee = new Employee(123, "Mercedes", "Tech", 1000000);
63+
64+
// Act
65+
String actual = testEmployee.getDepartment();
66+
67+
// Assert
68+
assertThat(actual).isEqualTo("Tech");
69+
}
70+
71+
@Test
72+
public void testSetDepartment() {
73+
// Arrange
74+
Employee testEmployee = new Employee(123, "Mercedes", "Tech", 1000000);
75+
76+
// Act
77+
testEmployee.setDepartment("Marketing");
78+
String actual = testEmployee.getDepartment();
79+
80+
// Assert
81+
assertThat(actual).isEqualTo("Marketing");
82+
}
83+
84+
@Test
85+
public void testGetSalary() {
86+
// Arrange
87+
Employee testEmployee = new Employee(123, "Mercedes", "Tech", 1000000);
88+
89+
// Act
90+
double actual = testEmployee.getSalary();
91+
92+
// Assert
93+
assertThat(actual).isEqualTo(1000000);
94+
}
95+
96+
@Test
97+
public void testSetSalary() {
98+
// Arrange
99+
Employee testEmployee = new Employee(123, "Mercedes", "Tech", 1000000);
100+
101+
// Act
102+
testEmployee.setSalary(5000000);
103+
double actual = testEmployee.getSalary();
104+
105+
// Assert
106+
assertThat(actual).isEqualTo(5000000);
107+
}
108+
109+
@Test
110+
public void testGetDetails() {
111+
// Arrange
112+
Employee testEmployee = new Employee(123, "Mercedes", "Tech", 1000000);
113+
114+
// Act
115+
String actual = testEmployee.getDetails();
116+
117+
// Assert
118+
assertThat(actual)
119+
.isEqualTo(
120+
"Employee ID: 123\nEmployee Name: Mercedes\nDepartment: Tech\nSalary: 1000000.0");
121+
}
122+
}

0 commit comments

Comments
 (0)