Skip to content

Commit 70212d4

Browse files
committed
lesson 15 homework corrections
1 parent 4438381 commit 70212d4

File tree

4 files changed

+203
-86
lines changed

4 files changed

+203
-86
lines changed

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

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,4 +45,22 @@ public double getSalary() {
4545
public void setSalary(double salary) {
4646
this.salary = salary;
4747
}
48+
49+
public String getDetails() {
50+
return "Employee's ID: "
51+
+ id
52+
+ " Name: "
53+
+ name
54+
+ " Department: "
55+
+ department
56+
+ " Salary: "
57+
+ salary;
58+
}
59+
60+
public void setDetails(int id, String name, String department, double salary) {
61+
this.id = id;
62+
this.name = name;
63+
this.department = department;
64+
this.salary = salary;
65+
}
4866
}
Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
package com.codedifferently.lesson15;
2+
3+
import static org.assertj.core.api.Assertions.assertThat;
4+
5+
import org.junit.jupiter.api.BeforeEach;
6+
import org.junit.jupiter.api.Test;
7+
8+
public class EmployeeManagerTest {
9+
10+
private EmployeeManager employeeManager;
11+
12+
@BeforeEach
13+
public void setup() {
14+
// This will run before each test to set up a fresh EmployeeManager
15+
employeeManager = new EmployeeManager();
16+
}
17+
18+
@Test
19+
public void testLesson15() {
20+
assertThat(new Lesson15()).isNotNull();
21+
}
22+
23+
@Test
24+
public void testGetGreeting() {
25+
// Act
26+
Lesson15.main(null);
27+
}
28+
29+
@Test
30+
public void testAddEmployee() {
31+
// Arrange
32+
Employee employee = new Employee(101, "Robert Downey Jr.", "Engineering", 82345.12);
33+
34+
// Act
35+
employeeManager.addEmployee(employee);
36+
37+
// Assert
38+
assertThat(employeeManager.getEmployeeCount()).isEqualTo(1);
39+
assertThat(employeeManager.getEmployee(101)).isEqualTo(employee);
40+
}
41+
42+
@Test
43+
public void testGetEmployee() {
44+
// Arrange
45+
Employee employee = new Employee(202, "Scarlett Johansson", "HR", 63278.94);
46+
employeeManager.addEmployee(employee);
47+
48+
// Act
49+
Employee fetchedEmployee = employeeManager.getEmployee(202);
50+
51+
// Assert
52+
assertThat(fetchedEmployee).isEqualTo(employee);
53+
assertThat(fetchedEmployee.getName()).isEqualTo("Scarlett Johansson");
54+
assertThat(fetchedEmployee.getDepartment()).isEqualTo("HR");
55+
}
56+
57+
@Test
58+
public void testUpdateEmployee() {
59+
// Arrange
60+
Employee employee = new Employee(303, "Chris Hemsworth", "Engineering", 92000.50);
61+
employeeManager.addEmployee(employee);
62+
Employee updatedEmployee = new Employee(303, "Chris Hemsworth", "Marketing", 96542.30);
63+
64+
// Act
65+
employeeManager.updateEmployee(updatedEmployee);
66+
Employee fetchedEmployee = employeeManager.getEmployee(303);
67+
68+
// Assert
69+
assertThat(fetchedEmployee.getDepartment()).isEqualTo("Marketing");
70+
assertThat(fetchedEmployee.getSalary()).isEqualTo(96542.30);
71+
}
72+
73+
@Test
74+
public void testRemoveEmployee() {
75+
// Arrange
76+
Employee employee = new Employee(404, "Jennifer Lawrence", "Sales", 70450.77);
77+
employeeManager.addEmployee(employee);
78+
79+
// Act
80+
employeeManager.removeEmployee(404);
81+
82+
// Assert
83+
assertThat(employeeManager.getEmployeeCount()).isEqualTo(0);
84+
}
85+
86+
@Test
87+
public void testRemoveEmployeeThrowsExceptionIfNotExist() {
88+
// Act & Assert
89+
try {
90+
employeeManager.removeEmployee(505);
91+
} catch (IllegalArgumentException e) {
92+
assertThat(e).hasMessage("Employee does not in collection with id 505");
93+
}
94+
}
95+
96+
@Test
97+
public void testGetEmployeeThrowsExceptionIfNotExist() {
98+
// Act & Assert
99+
try {
100+
employeeManager.getEmployee(505);
101+
} catch (IllegalArgumentException e) {
102+
assertThat(e).hasMessage("Employee does not in collection with id 505");
103+
}
104+
}
105+
}
Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
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 testGetId() {
10+
Employee employee = new Employee(202, "Scarlett Johansson", "HR", 63278.94);
11+
int id = employee.getId();
12+
assertThat(id).isEqualTo(202);
13+
}
14+
15+
@Test
16+
public void testSetId() {
17+
Employee employee = new Employee(202, "Scarlett Johansson", "HR", 63278.94);
18+
employee.setId(202);
19+
assertThat(employee.getId()).isEqualTo(202);
20+
}
21+
22+
@Test
23+
public void testGetName() {
24+
Employee employee = new Employee(202, "Scarlett Johansson", "HR", 63278.94);
25+
String name = employee.getName();
26+
assertThat(name).isEqualTo("Scarlett Johansson");
27+
}
28+
29+
@Test
30+
public void testSetName() {
31+
Employee employee = new Employee(202, "Scarlett Johansson", "HR", 63278.94);
32+
employee.setName("Scarlett Johanson");
33+
assertThat(employee.getName()).isEqualTo("Scarlett Johanson");
34+
}
35+
36+
@Test
37+
public void testGetDepartment() {
38+
Employee employee = new Employee(202, "Scarlett Johansson", "HR", 63278.94);
39+
String department = employee.getDepartment();
40+
assertThat(department).isEqualTo("HR");
41+
}
42+
43+
@Test
44+
public void testSetDepartment() {
45+
Employee employee = new Employee(202, "Scarlett Johansson", "HR", 63278.94);
46+
employee.setDepartment("Accounting");
47+
assertThat(employee.getDepartment()).isEqualTo("Accounting");
48+
}
49+
50+
@Test
51+
public void testGetSalary() {
52+
Employee employee = new Employee(202, "Scarlett Johansson", "HR", 63278.94);
53+
double salary = employee.getSalary();
54+
assertThat(salary).isEqualTo(63278.94);
55+
}
56+
57+
@Test
58+
public void testSetSalary() {
59+
Employee employee = new Employee(202, "Scarlett Johansson", "HR", 63278.94);
60+
employee.setSalary(63278.94);
61+
assertThat(employee.getSalary()).isEqualTo(63278.94);
62+
}
63+
64+
@Test
65+
public void testGetDetails() {
66+
Employee employee = new Employee(202, "Scarlett Johansson", "HR", 63278.94);
67+
String details = employee.getDetails();
68+
assertThat(details)
69+
.isEqualTo("Employee's ID: 202 Name: Scarlett Johansson Department: HR Salary: 63278.94");
70+
}
71+
72+
@Test
73+
public void testSetDetails() {
74+
Employee employee = new Employee(202, "Scarlett Johansson", "HR", 63278.94);
75+
employee.setDetails(202, "Scarlett Johansson", "HR", 63278.94);
76+
String result = employee.getDetails();
77+
String expected = "Employee's ID: 202 Name: Scarlett Johansson Department: HR Salary: 63278.94";
78+
assertThat(result).isEqualTo(expected);
79+
}
80+
}

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

Lines changed: 0 additions & 86 deletions
Original file line numberDiff line numberDiff line change
@@ -2,19 +2,10 @@
22

33
import static org.assertj.core.api.Assertions.assertThat;
44

5-
import org.junit.jupiter.api.BeforeEach;
65
import org.junit.jupiter.api.Test;
76

87
class Lesson15Test {
98

10-
private EmployeeManager employeeManager;
11-
12-
@BeforeEach
13-
public void setup() {
14-
// This will run before each test to set up a fresh EmployeeManager
15-
employeeManager = new EmployeeManager();
16-
}
17-
189
@Test
1910
public void testLesson15() {
2011
assertThat(new Lesson15()).isNotNull();
@@ -25,81 +16,4 @@ public void testGetGreeting() {
2516
// Act
2617
Lesson15.main(null);
2718
}
28-
29-
@Test
30-
public void testAddEmployee() {
31-
// Arrange
32-
Employee employee = new Employee(101, "Robert Downey Jr.", "Engineering", 82345.12);
33-
34-
// Act
35-
employeeManager.addEmployee(employee);
36-
37-
// Assert
38-
assertThat(employeeManager.getEmployeeCount()).isEqualTo(1);
39-
assertThat(employeeManager.getEmployee(101)).isEqualTo(employee);
40-
}
41-
42-
@Test
43-
public void testGetEmployee() {
44-
// Arrange
45-
Employee employee = new Employee(202, "Scarlett Johansson", "HR", 63278.94);
46-
employeeManager.addEmployee(employee);
47-
48-
// Act
49-
Employee fetchedEmployee = employeeManager.getEmployee(202);
50-
51-
// Assert
52-
assertThat(fetchedEmployee).isEqualTo(employee);
53-
assertThat(fetchedEmployee.getName()).isEqualTo("Scarlett Johansson");
54-
assertThat(fetchedEmployee.getDepartment()).isEqualTo("HR");
55-
}
56-
57-
@Test
58-
public void testUpdateEmployee() {
59-
// Arrange
60-
Employee employee = new Employee(303, "Chris Hemsworth", "Engineering", 92000.50);
61-
employeeManager.addEmployee(employee);
62-
Employee updatedEmployee = new Employee(303, "Chris Hemsworth", "Marketing", 96542.30);
63-
64-
// Act
65-
employeeManager.updateEmployee(updatedEmployee);
66-
Employee fetchedEmployee = employeeManager.getEmployee(303);
67-
68-
// Assert
69-
assertThat(fetchedEmployee.getDepartment()).isEqualTo("Marketing");
70-
assertThat(fetchedEmployee.getSalary()).isEqualTo(96542.30);
71-
}
72-
73-
@Test
74-
public void testRemoveEmployee() {
75-
// Arrange
76-
Employee employee = new Employee(404, "Jennifer Lawrence", "Sales", 70450.77);
77-
employeeManager.addEmployee(employee);
78-
79-
// Act
80-
employeeManager.removeEmployee(404);
81-
82-
// Assert
83-
assertThat(employeeManager.getEmployeeCount()).isEqualTo(0);
84-
}
85-
86-
@Test
87-
public void testRemoveEmployeeThrowsExceptionIfNotExist() {
88-
// Act & Assert
89-
try {
90-
employeeManager.removeEmployee(505);
91-
} catch (IllegalArgumentException e) {
92-
assertThat(e).hasMessage("Employee does not in collection with id 505");
93-
}
94-
}
95-
96-
@Test
97-
public void testGetEmployeeThrowsExceptionIfNotExist() {
98-
// Act & Assert
99-
try {
100-
employeeManager.getEmployee(505);
101-
} catch (IllegalArgumentException e) {
102-
assertThat(e).hasMessage("Employee does not in collection with id 505");
103-
}
104-
}
10519
}

0 commit comments

Comments
 (0)