Skip to content

Commit 966a9f4

Browse files
author
Ezra Nyabuti
committed
feat: refactor Employee class and adds EmployeeManager tests
1 parent be774a1 commit 966a9f4

File tree

4 files changed

+173
-159
lines changed

4 files changed

+173
-159
lines changed

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

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,6 @@ public String getDetails() {
1717
return id + ", " + name + ", " + department + "," + salary;
1818
}
1919

20-
public void setDetails(int id, String name, String department, double salary) {
21-
this.id = id;
22-
this.name = name;
23-
this.department = department;
24-
this.salary = salary;
25-
}
26-
2720
// Getters and setters
2821
public int getId() {
2922
return id;
Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
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+
public class EmployeeManagerTest {
8+
@Test
9+
public void employeeManagerTest() {
10+
// Arrange
11+
EmployeeManager employeeManager = new EmployeeManager();
12+
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 0);
13+
// Act
14+
employeeManager.addEmployee(employee);
15+
// Assert
16+
assertThat(employeeManager.getEmployeeCount()).isEqualTo(1);
17+
}
18+
19+
@Test
20+
public void testAddEmployee() {
21+
// Arrange
22+
EmployeeManager employeeManager = new EmployeeManager();
23+
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 0);
24+
// Act
25+
employeeManager.addEmployee(employee);
26+
// Assert
27+
assertThat(employeeManager.getEmployeeCount()).isEqualTo(1);
28+
}
29+
30+
@Test
31+
public void testGetEmployee() {
32+
// Arrange
33+
EmployeeManager employeeManager = new EmployeeManager();
34+
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 0);
35+
employeeManager.addEmployee(employee);
36+
// Act
37+
Employee retrievedEmployee = employeeManager.getEmployee(1);
38+
// Assert
39+
assertThat(retrievedEmployee).isEqualTo(employee);
40+
}
41+
42+
@Test
43+
public void testUpdateEmployee() {
44+
// Arrange
45+
EmployeeManager employeeManager = new EmployeeManager();
46+
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 100000);
47+
employeeManager.addEmployee(employee);
48+
// Act
49+
employee.setName("Ezra Nyabuti Makini");
50+
employeeManager.updateEmployee(employee);
51+
// Assert
52+
assertThat(employeeManager.getEmployee(1).getName()).isEqualTo("Ezra Nyabuti Makini");
53+
}
54+
55+
@Test
56+
public void testRemoveEmployee() {
57+
// Arrange
58+
EmployeeManager employeeManager = new EmployeeManager();
59+
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 0);
60+
employeeManager.addEmployee(employee);
61+
// Act
62+
employeeManager.removeEmployee(1);
63+
// Assert
64+
assertThat(employeeManager.getEmployeeCount()).isEqualTo(0);
65+
}
66+
67+
@Test
68+
public void testAssertEmployeeInCollection() {
69+
// Arrange
70+
EmployeeManager employeeManager = new EmployeeManager();
71+
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 0);
72+
employeeManager.addEmployee(employee);
73+
// Act & Assert
74+
assertThat(employeeManager.getEmployee(1)).isEqualTo(employee);
75+
}
76+
}
Lines changed: 97 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,97 @@
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+
public class EmployeeTest {
8+
@Test
9+
public void testGetDetails() {
10+
// Arrange
11+
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 100000);
12+
// Act
13+
String details = employee.getDetails();
14+
// Assert
15+
assertThat(details).isEqualTo("1, Ezra Nyabuti, Software Engineer,100000.0");
16+
}
17+
18+
@Test
19+
public void testGetId() {
20+
// Arrange
21+
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 0);
22+
// Act
23+
int id = employee.getId();
24+
// Assert
25+
assertThat(id).isEqualTo(1);
26+
}
27+
28+
@Test
29+
public void testSetId() {
30+
// Arrange
31+
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 0);
32+
// Act
33+
employee.setId(1);
34+
// Assert
35+
assertThat(employee.getId()).isEqualTo(1);
36+
}
37+
38+
@Test
39+
public void testGetName() {
40+
// Arrange
41+
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 0);
42+
// Act
43+
String name = employee.getName();
44+
// Assert
45+
assertThat(name).isEqualTo("Ezra Nyabuti");
46+
}
47+
48+
@Test
49+
public void testSetName() {
50+
// Arrange
51+
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 0);
52+
// Act
53+
employee.setName("Ezra Nyabuti");
54+
// Assert
55+
assertThat(employee.getName()).isEqualTo("Ezra Nyabuti");
56+
}
57+
58+
@Test
59+
public void testGetDepartment() {
60+
// Arrange
61+
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 0);
62+
// Act
63+
String department = employee.getDepartment();
64+
// Assert
65+
assertThat(department).isEqualTo("Software Engineer");
66+
}
67+
68+
@Test
69+
public void testSetDepartment() {
70+
// Arrange
71+
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 0);
72+
// Act
73+
employee.setDepartment("Data Scientist");
74+
// Assert
75+
assertThat(employee.getDepartment()).isEqualTo("Data Scientist");
76+
}
77+
78+
@Test
79+
public void testGetSalary() {
80+
// Arrange
81+
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 100000);
82+
// Act
83+
double salary = employee.getSalary();
84+
// Assert
85+
assertThat(salary).isEqualTo(100000);
86+
}
87+
88+
@Test
89+
public void testSetSalary() {
90+
// Arrange
91+
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 100000);
92+
// Act
93+
employee.setSalary(120000);
94+
// Assert
95+
assertThat(employee.getSalary()).isEqualTo(120000);
96+
}
97+
}

lesson_15/tdd/tdd_app/src/test/java/com/codedifferently/lesson15/Lesson15Test.java

Lines changed: 0 additions & 152 deletions
Original file line numberDiff line numberDiff line change
@@ -10,156 +10,4 @@ class Lesson15Test {
1010
public void testLesson15() {
1111
assertThat(new Lesson15()).isNotNull();
1212
}
13-
14-
@Test
15-
public void testGetGreeting() {}
16-
17-
@Test
18-
public void testGetDetails() {
19-
// Arrange
20-
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 100000);
21-
// Act
22-
String details = employee.getDetails();
23-
// Assert
24-
assertThat(details).isEqualTo("1, Ezra Nyabuti, Software Engineer,100000.0");
25-
}
26-
27-
@Test
28-
public void employeeManagerTest() {
29-
// Arrange
30-
EmployeeManager employeeManager = new EmployeeManager();
31-
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 0);
32-
// Act
33-
employeeManager.addEmployee(employee);
34-
// Assert
35-
assertThat(employeeManager.getEmployeeCount()).isEqualTo(1);
36-
}
37-
38-
@Test
39-
public void testAddEmployee() {
40-
// Arrange
41-
EmployeeManager employeeManager = new EmployeeManager();
42-
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 0);
43-
// Act
44-
employeeManager.addEmployee(employee);
45-
// Assert
46-
assertThat(employeeManager.getEmployeeCount()).isEqualTo(1);
47-
}
48-
49-
@Test
50-
public void testGetEmployee() {
51-
// Arrange
52-
EmployeeManager employeeManager = new EmployeeManager();
53-
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 0);
54-
employeeManager.addEmployee(employee);
55-
// Act
56-
Employee retrievedEmployee = employeeManager.getEmployee(1);
57-
// Assert
58-
assertThat(retrievedEmployee).isEqualTo(employee);
59-
}
60-
61-
@Test
62-
public void testUpdateEmployee() {
63-
// Arrange
64-
EmployeeManager employeeManager = new EmployeeManager();
65-
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 100000);
66-
employeeManager.addEmployee(employee);
67-
// Act
68-
employee.setName("Ezra Nyabuti Makini");
69-
employeeManager.updateEmployee(employee);
70-
// Assert
71-
assertThat(employeeManager.getEmployee(1).getName()).isEqualTo("Ezra Nyabuti Makini");
72-
}
73-
74-
@Test
75-
public void testRemoveEmployee() {
76-
// Arrange
77-
EmployeeManager employeeManager = new EmployeeManager();
78-
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 0);
79-
employeeManager.addEmployee(employee);
80-
// Act
81-
employeeManager.removeEmployee(1);
82-
// Assert
83-
assertThat(employeeManager.getEmployeeCount()).isEqualTo(0);
84-
}
85-
86-
@Test
87-
public void testGetid() {
88-
// Arrange
89-
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 0);
90-
// Act
91-
int id = employee.getId();
92-
// Assert
93-
assertThat(id).isEqualTo(1);
94-
}
95-
96-
@Test
97-
public void testSetId() {
98-
// Arrange
99-
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 0);
100-
// Act
101-
employee.setId(1);
102-
// Assert
103-
assertThat(employee.getId()).isEqualTo(1);
104-
}
105-
106-
@Test
107-
public void testGetName() {
108-
// Arrange
109-
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 0);
110-
// Act
111-
String name = employee.getName();
112-
// Assert
113-
assertThat(name).isEqualTo("Ezra Nyabuti");
114-
}
115-
116-
@Test
117-
public void testSetName() {
118-
// Arrange
119-
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 0);
120-
// Act
121-
employee.setName("Ezra Nyabuti");
122-
// Assert
123-
assertThat(employee.getName()).isEqualTo("Ezra Nyabuti");
124-
}
125-
126-
@Test
127-
public void testGetDepartment() {
128-
// Arrange
129-
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 0);
130-
// Act
131-
String department = employee.getDepartment();
132-
// Assert
133-
assertThat(department).isEqualTo("Software Engineer");
134-
}
135-
136-
@Test
137-
public void testSetDepartment() {
138-
// Arrange
139-
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 0);
140-
// Act
141-
employee.setDepartment("Data Scientist");
142-
// Assert
143-
assertThat(employee.getDepartment()).isEqualTo("Data Scientist");
144-
}
145-
146-
@Test
147-
public void testGetSalary() {
148-
// Arrange
149-
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 100000);
150-
// Act
151-
double salary = employee.getSalary();
152-
// Assert
153-
assertThat(salary).isEqualTo(100000);
154-
}
155-
156-
@Test
157-
public void testSetSalary() {
158-
// Arrange
159-
Employee employee = new Employee(1, "Ezra Nyabuti", "Software Engineer", 100000);
160-
// Act
161-
employee.setSalary(120000);
162-
// Assert
163-
assertThat(employee.getSalary()).isEqualTo(120000);
164-
}
16513
}

0 commit comments

Comments
 (0)