From 9f6531ca4cc0e4bd006c3603b5530d2ca1865dfc Mon Sep 17 00:00:00 2001 From: charujamnis Date: Sat, 26 Sep 2020 20:05:05 -0400 Subject: [PATCH 1/2] Java Files added --- .../java/com/dtcc/projects/ClassRoom.java | 28 +++++++++++++++++ src/main/java/com/dtcc/projects/DelTech.java | 29 +++++++++++++++++ .../java/com/dtcc/projects/Instructor.java | 31 +++++++++++++++++++ .../java/com/dtcc/projects/JavaAcademy.java | 30 ++++++++++++++++++ src/main/java/com/dtcc/projects/Learner.java | 6 ++++ src/main/java/com/dtcc/projects/Person.java | 17 ++++++++++ src/main/java/com/dtcc/projects/Student.java | 24 ++++++++++++++ src/main/java/com/dtcc/projects/Teacher.java | 6 ++++ .../java/com/dtcc/projects/TestClassRoom.java | 2 ++ .../java/com/dtcc/projects/TestDelTech.java | 2 ++ .../com/dtcc/projects/TestInstructor.java | 2 ++ .../com/dtcc/projects/TestJavaAcademy.java | 2 ++ .../java/com/dtcc/projects/TestStudent.java | 2 ++ 13 files changed, 181 insertions(+) create mode 100644 src/main/java/com/dtcc/projects/ClassRoom.java create mode 100644 src/main/java/com/dtcc/projects/DelTech.java create mode 100644 src/main/java/com/dtcc/projects/Instructor.java create mode 100644 src/main/java/com/dtcc/projects/JavaAcademy.java create mode 100644 src/main/java/com/dtcc/projects/Learner.java create mode 100644 src/main/java/com/dtcc/projects/Student.java create mode 100644 src/main/java/com/dtcc/projects/Teacher.java create mode 100644 src/test/java/com/dtcc/projects/TestClassRoom.java create mode 100644 src/test/java/com/dtcc/projects/TestDelTech.java create mode 100644 src/test/java/com/dtcc/projects/TestInstructor.java create mode 100644 src/test/java/com/dtcc/projects/TestJavaAcademy.java create mode 100644 src/test/java/com/dtcc/projects/TestStudent.java diff --git a/src/main/java/com/dtcc/projects/ClassRoom.java b/src/main/java/com/dtcc/projects/ClassRoom.java new file mode 100644 index 0000000..c2807f1 --- /dev/null +++ b/src/main/java/com/dtcc/projects/ClassRoom.java @@ -0,0 +1,28 @@ +package com.dtcc.projects; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Map; + +public class ClassRoom { + private static ArrayList students =JavaAcademy.getStudents(); + private static ArrayList instructors=DelTech.getInstructors(); + + private HashMap hashmap=new HashMap<>(); + + public HashMap getRoster(){ + for(int i=0;i getHashmap() { + return hashmap; + } + //hs.forEach((k, v) -> {System.out.println("Key: " + k + ", Value: " + v);}); +} diff --git a/src/main/java/com/dtcc/projects/DelTech.java b/src/main/java/com/dtcc/projects/DelTech.java new file mode 100644 index 0000000..8475112 --- /dev/null +++ b/src/main/java/com/dtcc/projects/DelTech.java @@ -0,0 +1,29 @@ +package com.dtcc.projects; + +import java.util.ArrayList; +import java.util.List; + +public class DelTech { + + private static ArrayList instructorList=new ArrayList<>(); + + static { // static initializer + String[] instructorNames = { "Brian", "Kaleb", "Zan"}; + for (String instructorName : instructorNames) { + Instructor instructor = new Instructor(instructorName); + hire(instructor); + } + } + + public static void hire(Instructor instructor){ + instructorList.add(instructor); + } + + public static ArrayList getInstructors(){ + return instructorList; + } + + public static void fireStaff(){ + instructorList.clear(); + } +} diff --git a/src/main/java/com/dtcc/projects/Instructor.java b/src/main/java/com/dtcc/projects/Instructor.java new file mode 100644 index 0000000..28a317a --- /dev/null +++ b/src/main/java/com/dtcc/projects/Instructor.java @@ -0,0 +1,31 @@ +package com.dtcc.projects; + +public class Instructor extends Person implements Teacher { + + private String instructorName; + private double numberOfHoursPerStudent; + public Instructor(){ } + public Instructor(String instructorName){ + this.instructorName=instructorName; + } + @Override + public void teach(Student student, double numberOfHours) { + student.learn(numberOfHours); + } + + @Override + public void lecture(Student[] student, double numberOfHours) { + for(int i=0;i studentList=new ArrayList<>(); + static { // static initializer + String[] studentNames = { "Jessica", "Emad", "Cedric", "Lolu", "Apoorva", "Vara", "Craig", "Robert", + "Stephen", "Ferdinand", "Charu" }; + for (String studentName : studentNames) { + Student student = new Student(studentName); + studentList.add(student); + } + } + + public static ArrayList getStudents() { + return studentList; + } + + public static void recruitStudent(Student student){ + studentList.add(student); + } + + public static void removeStudents(){ + studentList.clear(); + } + +} diff --git a/src/main/java/com/dtcc/projects/Learner.java b/src/main/java/com/dtcc/projects/Learner.java new file mode 100644 index 0000000..282d7b9 --- /dev/null +++ b/src/main/java/com/dtcc/projects/Learner.java @@ -0,0 +1,6 @@ +package com.dtcc.projects; + +public interface Learner { + public void learn(double numberOfHours); +} + diff --git a/src/main/java/com/dtcc/projects/Person.java b/src/main/java/com/dtcc/projects/Person.java index ff9713e..d1915fa 100644 --- a/src/main/java/com/dtcc/projects/Person.java +++ b/src/main/java/com/dtcc/projects/Person.java @@ -1,4 +1,21 @@ package com.dtcc.projects; public class Person { + private String name; + + public Person(){ + } + + public Person(String name){ + this.name=name; + } + + public String getName(){ + return this.name; + } + + public void setName(String name){ + this.name=name; + } + } diff --git a/src/main/java/com/dtcc/projects/Student.java b/src/main/java/com/dtcc/projects/Student.java new file mode 100644 index 0000000..cd930f8 --- /dev/null +++ b/src/main/java/com/dtcc/projects/Student.java @@ -0,0 +1,24 @@ +package com.dtcc.projects; + +public class Student extends Person implements Learner{ + private double totalStudyTime; + private String studentName; + + public Student(){ + + } + public Student(String studentName){ + this.studentName=studentName; + } + public void learn(double numberOfHours) { + //body of learn method. + this.totalStudyTime=this.totalStudyTime+numberOfHours; + } + public double getTotalStudyTime(){ + return totalStudyTime; + } + + public String getStudentName() { + return studentName; + } +} diff --git a/src/main/java/com/dtcc/projects/Teacher.java b/src/main/java/com/dtcc/projects/Teacher.java new file mode 100644 index 0000000..870d580 --- /dev/null +++ b/src/main/java/com/dtcc/projects/Teacher.java @@ -0,0 +1,6 @@ +package com.dtcc.projects; + +public interface Teacher { + public void teach(Student student, double numberOfHours); + public void lecture(Student[] student, double numberOfHours); +} diff --git a/src/test/java/com/dtcc/projects/TestClassRoom.java b/src/test/java/com/dtcc/projects/TestClassRoom.java new file mode 100644 index 0000000..7043825 --- /dev/null +++ b/src/test/java/com/dtcc/projects/TestClassRoom.java @@ -0,0 +1,2 @@ +package com.dtcc.projects;public class TestClassRoom { +} diff --git a/src/test/java/com/dtcc/projects/TestDelTech.java b/src/test/java/com/dtcc/projects/TestDelTech.java new file mode 100644 index 0000000..ee9e3b7 --- /dev/null +++ b/src/test/java/com/dtcc/projects/TestDelTech.java @@ -0,0 +1,2 @@ +package com.dtcc.projects;public class TestDelTech { +} diff --git a/src/test/java/com/dtcc/projects/TestInstructor.java b/src/test/java/com/dtcc/projects/TestInstructor.java new file mode 100644 index 0000000..424b62f --- /dev/null +++ b/src/test/java/com/dtcc/projects/TestInstructor.java @@ -0,0 +1,2 @@ +package com.dtcc.projects;public class TestInstructor { +} diff --git a/src/test/java/com/dtcc/projects/TestJavaAcademy.java b/src/test/java/com/dtcc/projects/TestJavaAcademy.java new file mode 100644 index 0000000..a57f0c7 --- /dev/null +++ b/src/test/java/com/dtcc/projects/TestJavaAcademy.java @@ -0,0 +1,2 @@ +package com.dtcc.projects;public class TestJavaAcademy { +} diff --git a/src/test/java/com/dtcc/projects/TestStudent.java b/src/test/java/com/dtcc/projects/TestStudent.java new file mode 100644 index 0000000..a69e5be --- /dev/null +++ b/src/test/java/com/dtcc/projects/TestStudent.java @@ -0,0 +1,2 @@ +package com.dtcc.projects;public class TestStudent { +} From 8ac4001dce415984b7d7e680162e5b3792fea71b Mon Sep 17 00:00:00 2001 From: charujamnis Date: Sat, 26 Sep 2020 20:05:46 -0400 Subject: [PATCH 2/2] Test files added --- .../java/com/dtcc/projects/TestClassRoom.java | 36 +++++++++++++++++- .../java/com/dtcc/projects/TestDelTech.java | 30 ++++++++++++++- .../com/dtcc/projects/TestInstructor.java | 37 ++++++++++++++++++- .../com/dtcc/projects/TestJavaAcademy.java | 28 +++++++++++++- .../java/com/dtcc/projects/TestPerson.java | 25 +++++++++++++ .../java/com/dtcc/projects/TestStudent.java | 30 ++++++++++++++- 6 files changed, 181 insertions(+), 5 deletions(-) diff --git a/src/test/java/com/dtcc/projects/TestClassRoom.java b/src/test/java/com/dtcc/projects/TestClassRoom.java index 7043825..5a02c3b 100644 --- a/src/test/java/com/dtcc/projects/TestClassRoom.java +++ b/src/test/java/com/dtcc/projects/TestClassRoom.java @@ -1,2 +1,36 @@ -package com.dtcc.projects;public class TestClassRoom { +package com.dtcc.projects; + +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; + +import java.util.HashMap; +import java.util.Map; + +public class TestClassRoom { + ClassRoom classroom; + HashMap hs=new HashMap<>();; + @Before + public void setup(){ + classroom=new ClassRoom(); + hs=classroom.getRoster(); + } + + @Test + public void testGetRosterValues(){ + + for(Map.Entry entry:hs.entrySet()){ + String key = entry.getKey(); + Person p=entry.getValue(); + Assert.assertEquals(key,p.getName()); + } + } + + @Test + public void testGetRosterKeys(){ + Assert.assertEquals(14,hs.size()); + Assert.assertTrue(hs.containsKey("Charu")); + Assert.assertTrue(hs.containsKey("Zan")); + Assert.assertFalse(hs.containsKey("Roy")); + } } diff --git a/src/test/java/com/dtcc/projects/TestDelTech.java b/src/test/java/com/dtcc/projects/TestDelTech.java index ee9e3b7..8379ed1 100644 --- a/src/test/java/com/dtcc/projects/TestDelTech.java +++ b/src/test/java/com/dtcc/projects/TestDelTech.java @@ -1,2 +1,30 @@ -package com.dtcc.projects;public class TestDelTech { +package com.dtcc.projects; + +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; + +import java.util.ArrayList; + +public class TestDelTech { + DelTech deltech; + ArrayList list; + @Before + public void setup(){ + deltech=new DelTech(); + deltech.fireStaff(); + } + + @Test + public void testFireStaff(){ + Assert.assertEquals(0,DelTech.getInstructors().size()); + } + + @Test //Check later + public void testHireStaff(){ + String actual="Jennifer"; + deltech.hire(new Instructor(actual)); + list=DelTech.getInstructors(); + Assert.assertEquals("Jennifer",list.get(0).getInstructorName()); + } } diff --git a/src/test/java/com/dtcc/projects/TestInstructor.java b/src/test/java/com/dtcc/projects/TestInstructor.java index 424b62f..2d1d1d3 100644 --- a/src/test/java/com/dtcc/projects/TestInstructor.java +++ b/src/test/java/com/dtcc/projects/TestInstructor.java @@ -1,2 +1,37 @@ -package com.dtcc.projects;public class TestInstructor { +package com.dtcc.projects; + +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; + +public class TestInstructor { + + Instructor instructor; + @Before + public void setUp(){ + instructor=new Instructor(); + } + @Test + public void testImplementation(){ + Assert.assertTrue(instructor instanceof Teacher); + } + + @Test + public void testInheritance(){ + Assert.assertTrue(instructor instanceof Person); + } + @Test + public void testTeach(){ + Student student=new Student("Lorrie"); + instructor.teach(student,5); + Assert.assertEquals(5,student.getTotalStudyTime(),0); + } + + @Test + public void testLecture(){ + Student[] students={new Student("Albert"),new Student("Ross"), new Student("Tom")}; + instructor.lecture(students,9.00); + Assert.assertEquals(3.00,instructor.getNumberOfHoursPerStudent(),0); + + } } diff --git a/src/test/java/com/dtcc/projects/TestJavaAcademy.java b/src/test/java/com/dtcc/projects/TestJavaAcademy.java index a57f0c7..5f1c290 100644 --- a/src/test/java/com/dtcc/projects/TestJavaAcademy.java +++ b/src/test/java/com/dtcc/projects/TestJavaAcademy.java @@ -1,2 +1,28 @@ -package com.dtcc.projects;public class TestJavaAcademy { +package com.dtcc.projects; + +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; + +public class TestJavaAcademy { + JavaAcademy javaAcademy; + + @Before + public void setup(){ + javaAcademy=new JavaAcademy(); + javaAcademy.removeStudents(); + } + + @Test + public void testRemoveStudents(){ + Assert.assertTrue(JavaAcademy.getStudents().isEmpty()); + } + + @Test + public void testRecruitStudent(){ + Student student= new Student("Nisha"); + JavaAcademy.recruitStudent(student); + Assert.assertEquals("Nisha",JavaAcademy.getStudents().get(0).getStudentName()); + } } + diff --git a/src/test/java/com/dtcc/projects/TestPerson.java b/src/test/java/com/dtcc/projects/TestPerson.java index 040f78f..94eb72a 100644 --- a/src/test/java/com/dtcc/projects/TestPerson.java +++ b/src/test/java/com/dtcc/projects/TestPerson.java @@ -1,4 +1,29 @@ package com.dtcc.projects; +import org.junit.Assert; +import org.junit.Test; + public class TestPerson { + Person person; + //Create a testSetName method which ensures that a Person object's + // name variable is being set by invoking the .setName method. + @Test + public void testSetName(){ + person=new Person(); + String actual="Charu"; + person.setName(actual); + String expected=person.getName(); + Assert.assertEquals(actual,expected); + } + + //Create a testConstructor method which ensures that a Person object's + // ame variable is being set by invoking the Person constructor. + @Test + public void testConstructor(){ + person=new Person("Ellie"); + String actual="Ellie"; + String expected=person.getName(); + Assert.assertEquals(actual,expected); + } } + diff --git a/src/test/java/com/dtcc/projects/TestStudent.java b/src/test/java/com/dtcc/projects/TestStudent.java index a69e5be..ef54209 100644 --- a/src/test/java/com/dtcc/projects/TestStudent.java +++ b/src/test/java/com/dtcc/projects/TestStudent.java @@ -1,2 +1,30 @@ -package com.dtcc.projects;public class TestStudent { +package com.dtcc.projects; + +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; + +public class TestStudent { + Student student; + @Before + public void setUp(){ + student=new Student(); + } + @Test + public void testImplementation(){ + Assert.assertTrue(student instanceof Learner); + } + + @Test + public void testInheritance(){ + Assert.assertTrue(student instanceof Person); + } + + @Test + public void testLearn(){ + student.learn(2.00); + double actual=2.0; + double expected=student.getTotalStudyTime(); + Assert.assertEquals(actual,expected,0); + } }