Skip to content

Commit b7b37d5

Browse files
committed
Feat: Adds for Lesson15
1 parent 112c87a commit b7b37d5

File tree

4 files changed

+253
-69
lines changed

4 files changed

+253
-69
lines changed

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

Lines changed: 53 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -1,48 +1,57 @@
11
package com.codedifferently.lesson15;
22

33
public class Employee {
4-
private int id;
5-
private String name;
6-
private String department;
7-
private double salary;
8-
9-
public Employee(int id, String name, String department, double salary) {
10-
this.id = id;
11-
this.name = name;
12-
this.department = department;
13-
this.salary = salary;
4+
private int id;
5+
private String name;
6+
private String department;
7+
private double salary;
8+
9+
public Employee(int id, String name, String department, double salary) {
10+
this.id = id;
11+
this.name = name;
12+
this.department = department;
13+
this.salary = salary;
14+
}
15+
16+
// Getters and setters
17+
public int getId() {
18+
return id;
19+
}
20+
21+
public void setId(int id) {
22+
this.id = id;
23+
}
24+
25+
public String getName() {
26+
return name;
27+
}
28+
29+
public void setName(String name) {
30+
this.name = name;
31+
}
32+
33+
public String getDepartment() {
34+
return department;
35+
}
36+
37+
public void setDepartment(String department) {
38+
this.department = department;
39+
}
40+
41+
public double getSalary() {
42+
return salary;
43+
}
44+
45+
public void setSalary(double salary) {
46+
this.salary = salary;
47+
}
48+
49+
50+
51+
public boolean isEqualTo(int otherId) {
52+
return this.id == otherId;
53+
}
54+
public String getDetails() {
55+
return "id: " + id + " name: " + name + " department: " + department + " salary: " + salary;
56+
}
1457
}
15-
16-
// Getters and setters
17-
public int getId() {
18-
return id;
19-
}
20-
21-
public void setId(int id) {
22-
this.id = id;
23-
}
24-
25-
public String getName() {
26-
return name;
27-
}
28-
29-
public void setName(String name) {
30-
this.name = name;
31-
}
32-
33-
public String getDepartment() {
34-
return department;
35-
}
36-
37-
public void setDepartment(String department) {
38-
this.department = department;
39-
}
40-
41-
public double getSalary() {
42-
return salary;
43-
}
44-
45-
public void setSalary(double salary) {
46-
this.salary = salary;
47-
}
48-
}

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

Lines changed: 30 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -4,29 +4,34 @@
44
import java.util.Map;
55

66
public class EmployeeManager {
7-
private Map<Integer, Employee> employees;
8-
9-
public EmployeeManager() {
10-
employees = new HashMap<>();
11-
}
12-
13-
public void addEmployee(Employee employee) {
14-
employees.put(employee.getId(), employee);
15-
}
16-
17-
public Employee getEmployee(int id) {
18-
return employees.get(id);
19-
}
20-
21-
public void updateEmployee(Employee employee) {
22-
employees.put(employee.getId(), employee);
23-
}
24-
25-
public void removeEmployee(int id) {
26-
employees.remove(id);
27-
}
28-
29-
public int getEmployeeCount() {
30-
return employees.size();
31-
}
7+
private Map<Integer, Employee> employees = new HashMap<>();
8+
9+
public void addEmployee(Employee employee) {
10+
employees.put(employee.getId(), employee);
11+
}
12+
13+
public void removeEmployee(int id) {
14+
employees.remove(id);
15+
}
16+
17+
public void updateEmployee(Employee employee) {
18+
employees.put(employee.getId(), employee);
19+
}
20+
21+
public Employee getEmployee(int id) {
22+
return employees.get(id);
23+
}
24+
25+
public int getEmployeeCount() {
26+
return employees.size();
27+
}
28+
29+
public Map<Integer, Employee> getEmployees() {
30+
return employees;
31+
}
32+
33+
public void setEmployees(Map<Integer, Employee> employees) {
34+
this.employees = employees;
35+
}
3236
}
37+
Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
package com.codedifferently.lesson15;
2+
3+
import static org.junit.jupiter.api.Assertions.assertEquals;
4+
import org.junit.jupiter.api.BeforeEach;
5+
import org.junit.jupiter.api.Test;
6+
7+
class EmployeeTest {
8+
9+
Employee employee;
10+
11+
// Set up
12+
@BeforeEach
13+
void setUp() {
14+
employee = new Employee(7, "Nile", "SWE", 65000.00);
15+
}
16+
17+
@Test
18+
public void testGetId() {
19+
int actualId = employee.getId();
20+
int expectedId = 7;
21+
assertEquals(expectedId, actualId);
22+
}
23+
24+
@Test
25+
public void testSetID() {
26+
int expectedSetId = 0;
27+
employee.setId(expectedSetId);
28+
assertEquals(expectedSetId, employee.getId());
29+
}
30+
31+
@Test
32+
public void testGetName() {
33+
String expectedName = "Nile";
34+
String actualName = employee.getName();
35+
assertEquals(expectedName, actualName);
36+
}
37+
38+
@Test
39+
public void testSetName() {
40+
String expectedSetName = "Nile";
41+
employee.setName(expectedSetName);
42+
assertEquals(expectedSetName, employee.getName());
43+
}
44+
45+
@Test
46+
public void testGetDepartment() {
47+
String expectedDepartment = "SWE";
48+
String actualDepartment = employee.getDepartment();
49+
assertEquals(expectedDepartment, actualDepartment);
50+
}
51+
52+
@Test
53+
public void testSetDepartment() {
54+
String expectedSetDepartment = "Tech";
55+
employee.setDepartment(expectedSetDepartment);
56+
assertEquals(expectedSetDepartment, employee.getDepartment());
57+
}
58+
59+
@Test
60+
public void testGetSalary() {
61+
double expectedSalary = 65000.00;
62+
double actualSalary = employee.getSalary();
63+
assertEquals(expectedSalary, actualSalary);
64+
}
65+
66+
@Test
67+
public void testSetSalary() {
68+
double expectedSetSalary = 100000.00;
69+
employee.setSalary(expectedSetSalary);
70+
assertEquals(expectedSetSalary, employee.getSalary());
71+
}
72+
73+
@Test
74+
public void testGetDetails() {
75+
String actualDetails = employee.getDetails();
76+
String expectedDetails = "id: 7 name: Nile department: SWE salary: 65000.0";
77+
assertEquals(expectedDetails, actualDetails);
78+
}
79+
}
Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
package com.codedifferently.lesson15;
2+
3+
import java.util.HashMap;
4+
import java.util.Map;
5+
6+
import static org.assertj.core.api.Assertions.assertThat;
7+
import static org.junit.jupiter.api.Assertions.assertEquals;
8+
import org.junit.jupiter.api.BeforeEach;
9+
import org.junit.jupiter.api.Test;
10+
11+
public class EmployeeManagerTest {
12+
private EmployeeManager employeeManager;
13+
Employee employee1;
14+
private int count;
15+
16+
@BeforeEach
17+
public void setup() {
18+
Employee employee1 = new Employee(1, "Nile", "SWE", 65000.00);
19+
Employee employee2 = new Employee(2, "Chino", "Marketing", 70000.00);
20+
employeeManager = new EmployeeManager();
21+
}
22+
23+
@Test
24+
public void testEmployeeManagement() {
25+
}
26+
// Create Employee objects
27+
28+
@Test
29+
public void addEmployee() { // Use addEmployee to add employees
30+
employeeManager.addEmployee(employee1);
31+
employeeManager.addEmployee(employee2);
32+
}
33+
34+
@Test// Invoke getEmployeeCount
35+
public void getEmployee() {
36+
int count = employeeManager.getEmployeeCount();
37+
assertThat(count).isEqualTo(2);
38+
39+
40+
41+
42+
Employee retrievedEmployee = employeeManager.getEmployee(1);
43+
assertThat(retrievedEmployee.getName()).isEqualTo("Nile");
44+
}
45+
46+
@Test
47+
public void updateEmployee() {
48+
employee1.setSalary(70000.00);
49+
employeeManager.updateEmployee(employee1);
50+
51+
52+
Employee updatedEmployee = employeeManager.getEmployee(1);
53+
assertThat(updatedEmployee.getSalary()).isEqualTo(70000.00);
54+
}
55+
56+
@Test
57+
public void getEmployeeCount() {
58+
employeeManager.removeEmployee(2);
59+
count = employeeManager.getEmployeeCount();
60+
}
61+
62+
63+
@Test
64+
public void getEmployees() {
65+
assertThat(count).isEqualTo(1);
66+
67+
68+
Map<Integer, Employee> employeeMap = employeeManager.getEmployees();
69+
assertThat(employeeMap.size()).isEqualTo(1);
70+
}
71+
72+
@Test
73+
public void setEmployees() {
74+
Map<Integer, Employee> newEmployees = new HashMap<>();
75+
newEmployees.put(3, new Employee(3, "Charlie", "HR", 75000.00));
76+
employeeManager.setEmployees(newEmployees);
77+
78+
79+
80+
assertThat(employeeManager.getEmployees().size()).isEqualTo(1);
81+
}
82+
@Test
83+
public void testGetDetails() {
84+
String actualDetails = employee1.getDetails();
85+
String expectedDetails = "id: 7 name: Nile department: SWE salary: 65000.0";
86+
assertEquals(expectedDetails, actualDetails);
87+
88+
}
89+
}
90+
91+

0 commit comments

Comments
 (0)