diff --git a/lesson_15/tdd/tdd_app/src/main/java/com/codedifferently/lesson15/Employee.java b/lesson_15/tdd/tdd_app/src/main/java/com/codedifferently/lesson15/Employee.java index 49aaabbd7..e5282c675 100644 --- a/lesson_15/tdd/tdd_app/src/main/java/com/codedifferently/lesson15/Employee.java +++ b/lesson_15/tdd/tdd_app/src/main/java/com/codedifferently/lesson15/Employee.java @@ -45,4 +45,8 @@ public double getSalary() { public void setSalary(double salary) { this.salary = salary; } + + public String getDetails() { + return "id: " + id + "name: " + name + "department: " + department + "salary: " + salary; + } } diff --git a/lesson_15/tdd/tdd_app/src/test/java/com/codedifferently/lesson15/EmployeeManagerTest.java b/lesson_15/tdd/tdd_app/src/test/java/com/codedifferently/lesson15/EmployeeManagerTest.java new file mode 100644 index 000000000..89e8bdcec --- /dev/null +++ b/lesson_15/tdd/tdd_app/src/test/java/com/codedifferently/lesson15/EmployeeManagerTest.java @@ -0,0 +1,76 @@ +package com.codedifferently.lesson15; + +import static org.assertj.core.api.Assertions.assertThatThrownBy; +import static org.junit.jupiter.api.Assertions.assertEquals; + +import java.util.ArrayList; +import java.util.List; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +public class EmployeeManagerTest { + + EmployeeManager employeeManager; + List employees; + + // Set up + @BeforeEach + void setUp() { + employeeManager = new EmployeeManager(); + Employee employee = new Employee(0, "Nitsua", "Sales", 65000.00); + employeeManager.addEmployee(employee); + employees = new ArrayList(); + employees.add(employee); + } + + @Test + public void testAddEmployee() { + // Arrange + Employee employee1 = new Employee(1, "Penny", "Sales", 65000.00); + // Act & Assert + employeeManager.addEmployee(employee1); + assertEquals(employee1, employeeManager.getEmployee(1)); + } + + @Test + public void testGetEmployee() { + // Arrange + Employee employee = new Employee(0, "Nitsua", "Sales", 65000.00); + Employee expectedEmployee = employeeManager.getEmployee(employee.getId()); + // Act + Employee actualEmployee = employeeManager.getEmployee(0); + // Assert + assertEquals(expectedEmployee, actualEmployee); + } + + @Test + public void testUpdateEmployee() { + // Arrange + Employee expectedEmployeeUpdate = new Employee(0, "Nitsua", "Tech", 100000.00); + // Act + employeeManager.updateEmployee(expectedEmployeeUpdate); + // Act + assertEquals(expectedEmployeeUpdate, employeeManager.getEmployee(0)); + } + + @Test + public void testRemoveEmployee() { + // Arange + Employee employee = new Employee(0, "Nitsua", "Sales", 65000.00); + employeeManager.addEmployee(employee); + // Act + employeeManager.removeEmployee(0); + // Assert + assertThatThrownBy(() -> employeeManager.removeEmployee(0)) + .isInstanceOf(IllegalArgumentException.class) + .hasMessage("Employee does not in collection with id " + employee.getId()); + } + + @Test + public void testGetEmployeeCount() { + // Act + int actualEmployeeCount = employeeManager.getEmployeeCount(); + // Assert(recieved help from Vicente on employees array) + assertEquals(employees.size(), actualEmployeeCount); + } +} diff --git a/lesson_15/tdd/tdd_app/src/test/java/com/codedifferently/lesson15/EmployeeTest.java b/lesson_15/tdd/tdd_app/src/test/java/com/codedifferently/lesson15/EmployeeTest.java new file mode 100644 index 000000000..3361a5f57 --- /dev/null +++ b/lesson_15/tdd/tdd_app/src/test/java/com/codedifferently/lesson15/EmployeeTest.java @@ -0,0 +1,116 @@ +package com.codedifferently.lesson15; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +public class EmployeeTest { + + Employee employee; + + // Set up + @BeforeEach + void setUp() { + employee = new Employee(19, "Chigazo", "Finance", 50000.00); + } + + @Test + // Method being tested + public void testGetId() { + // Execersise + int actualId = employee.getId(); + + int expectedId = 19; + // Assert(Checking the value) + assertEquals(expectedId, actualId); + } + + @Test + public void testSetID() { + // Arrange + int expectedSetId = 91; + // Act + employee.setId(expectedSetId); + // Assert + assertEquals(expectedSetId, employee.getId()); + } + + @Test + public void testGetName() { + // Arrange + String expectedName = "Chigazo"; + // Act + String actualName = employee.getName(); + // Assert + assertEquals(expectedName, actualName); + } + + @Test + public void testSetName() { + // Arrange + String expectedSetName = "Austin"; + // Act + employee.setName(expectedSetName); + // Assert + assertEquals(expectedSetName, employee.getName()); + } + + @Test + public void testGetDepartment() { + // Arrange + String actualDepartment = "Finance"; + // Act + String expectedDepartment = employee.getDepartment(); + // Assert + assertEquals(expectedDepartment, actualDepartment); + } + + @Test + public void testSetDepartment() { + // Arrange + String expectedSetDepartment = "Tech"; + // Act + employee.setDepartment(expectedSetDepartment); + // Assert + assertEquals(expectedSetDepartment, employee.getDepartment()); + } + + @Test + public void testGetSalary() { + // Arrange + double actualSalary = 50000.00; + // Act + double expectedSalary = employee.getSalary(); + // Assert + assertEquals(expectedSalary, actualSalary); + } + + @Test + public void testSetSalary() { + // Arrange + double expectedSetSalary = 100000.00; + // Act + employee.setSalary(expectedSetSalary); + // Assert + assertEquals(expectedSetSalary, employee.getSalary()); + } + + @Test + public void testGetDetails() { + // Arrange + String actualDetails = + "id: " + + employee.getId() + + "name: " + + employee.getName() + + "department: " + + employee.getDepartment() + + "salary: " + + employee.getSalary(); + // Act + String expectedDetails = employee.getDetails(); + // Assert + assertEquals(expectedDetails, actualDetails); + } +}