From a767252967086ee7d9beb17e3a63de9b990b5166 Mon Sep 17 00:00:00 2001 From: Yong Choi Date: Fri, 5 May 2023 14:26:06 -0500 Subject: [PATCH 1/2] initial --- src/test/java/Student.java | 43 ++++++++++++++++++++++++++++++++++ src/test/java/StudentTest.java | 36 ++++++++++++++++++++++++++++ 2 files changed, 79 insertions(+) create mode 100644 src/test/java/Student.java create mode 100644 src/test/java/StudentTest.java diff --git a/src/test/java/Student.java b/src/test/java/Student.java new file mode 100644 index 00000000..cb3c0853 --- /dev/null +++ b/src/test/java/Student.java @@ -0,0 +1,43 @@ +import java.util.ArrayList; + +public class Student { + + long id; + String name; + ArrayList grades; + + public Student(long id, String name, ArrayList grade) { + this.id = id; + this.name = name; + this.grades = grade; + } + + + public long getId(){ + return this.id; + } + // returns the student's name + public String getName(){ + return this.name; + } + + public ArrayList getGrades() { + return grades; + } + + // adds the given grade to the grades list + public void addGrade(ArrayList grade) { + grade = this.grades; + } + + // returns the average of the students grades + public double getGradeAverage(){ + double sum = 0; + for(double ave : grades){ + sum += ave; + } + double average = sum/grades.size(); + return average; + } + +} diff --git a/src/test/java/StudentTest.java b/src/test/java/StudentTest.java new file mode 100644 index 00000000..1e3522f4 --- /dev/null +++ b/src/test/java/StudentTest.java @@ -0,0 +1,36 @@ +import static org.junit.Assert.*; +import java.util.ArrayList; +import org.junit.Before; +import org.junit.Test; + + + +public class StudentTest { + Student student1; + @Before + public void setUp() { + ArrayList grades = new ArrayList<>(); + grades.add(90); + grades.add(88); + grades.add(87); + student1 = new Student(1, "Yong", grades); + } + @Test + public void TestId(){ + + assertEquals(1, student1.getId()); + + } + @Test + public void TestName(){ + assertEquals("Yong", student1.getName()); + } + @Test + public void testGetAverage(){ + double expectedAverage = (90 + 88 + 87) / 3.0; + double actualAverage = student1.getGradeAverage(); + + assertEquals(expectedAverage, actualAverage, 0.01); + } + +} From a647a0537b47d16d1d3f5dccaa61184e5f00a08b Mon Sep 17 00:00:00 2001 From: Yong Choi Date: Fri, 5 May 2023 15:39:20 -0500 Subject: [PATCH 2/2] Junit testing --- src/main/java/Cohort.java | 27 ++++++++++ src/main/java/Student.java | 38 +++++++++++++ src/test/java/CohortTest.java | 2 + src/test/java/Student.java | 43 --------------- src/test/java/StudentTest.java | 98 ++++++++++++++++++++++++++-------- 5 files changed, 142 insertions(+), 66 deletions(-) create mode 100644 src/main/java/Cohort.java create mode 100644 src/main/java/Student.java create mode 100644 src/test/java/CohortTest.java delete mode 100644 src/test/java/Student.java diff --git a/src/main/java/Cohort.java b/src/main/java/Cohort.java new file mode 100644 index 00000000..4baa092f --- /dev/null +++ b/src/main/java/Cohort.java @@ -0,0 +1,27 @@ +import java.util.ArrayList; +import java.util.List; + +public class Cohort { + + private List students; + + public Cohort() { + this.students = new ArrayList<>(); + } + + public double getCohortAverage() { + double avg = 0; + for (Student student: this.getStudents()) { + avg += student.getGradeAverage(); + } + return avg / this.getStudents().size(); + } + + public void addStudent(Student student){ + students.add(student); + } + + public List getStudents() { + return students; + } +} \ No newline at end of file diff --git a/src/main/java/Student.java b/src/main/java/Student.java new file mode 100644 index 00000000..686e1ca6 --- /dev/null +++ b/src/main/java/Student.java @@ -0,0 +1,38 @@ +import java.util.ArrayList; + +public class Student { + + private long id; + private String name; + private ArrayList grades; + + public Student(long id, String name){ + this.id = id; + this.name = name; + this.grades = new ArrayList<>(); + } + + public long getId() { + return this.id; + } + + public String getName(){ + return this.name; + } + + public void addGrade(int grade) { + grades.add(grade); + } + + public ArrayList getGrades() { + return this.grades; + } + + public double getGradeAverage() { + double sum = 0; + for (int grade : this.grades) { + sum += grade; + } + return sum / getGrades().size(); + } +} \ No newline at end of file diff --git a/src/test/java/CohortTest.java b/src/test/java/CohortTest.java new file mode 100644 index 00000000..9de5c0ed --- /dev/null +++ b/src/test/java/CohortTest.java @@ -0,0 +1,2 @@ +public class CohortTest { +} diff --git a/src/test/java/Student.java b/src/test/java/Student.java deleted file mode 100644 index cb3c0853..00000000 --- a/src/test/java/Student.java +++ /dev/null @@ -1,43 +0,0 @@ -import java.util.ArrayList; - -public class Student { - - long id; - String name; - ArrayList grades; - - public Student(long id, String name, ArrayList grade) { - this.id = id; - this.name = name; - this.grades = grade; - } - - - public long getId(){ - return this.id; - } - // returns the student's name - public String getName(){ - return this.name; - } - - public ArrayList getGrades() { - return grades; - } - - // adds the given grade to the grades list - public void addGrade(ArrayList grade) { - grade = this.grades; - } - - // returns the average of the students grades - public double getGradeAverage(){ - double sum = 0; - for(double ave : grades){ - sum += ave; - } - double average = sum/grades.size(); - return average; - } - -} diff --git a/src/test/java/StudentTest.java b/src/test/java/StudentTest.java index 1e3522f4..9d4bb6b3 100644 --- a/src/test/java/StudentTest.java +++ b/src/test/java/StudentTest.java @@ -1,36 +1,88 @@ -import static org.junit.Assert.*; -import java.util.ArrayList; -import org.junit.Before; import org.junit.Test; - - +import static org.junit.Assert.*; public class StudentTest { - Student student1; - @Before - public void setUp() { - ArrayList grades = new ArrayList<>(); - grades.add(90); - grades.add(88); - grades.add(87); - student1 = new Student(1, "Yong", grades); - } + @Test - public void TestId(){ + public void testIfStudentCanBeCreated(){ + Student fer = new Student(1L, "fer"); + Student nullStudent = null; + assertNotNull(fer); + assertNull(nullStudent); + } - assertEquals(1, student1.getId()); + @Test + public void testIfFieldsAreSet(){ + Student fer = new Student(1L, "fer"); + assertEquals(1L, fer.getId()); + assertEquals("fer", fer.getName()); + Student rosie = new Student(40L, "Rosie"); + assertEquals(40L, rosie.getId()); + assertEquals("Rosie", rosie.getName()); } + @Test - public void TestName(){ - assertEquals("Yong", student1.getName()); + public void testIfAddGradeWorks(){ + Student fer = new Student(1L, "fer"); + assertEquals(0, fer.getGrades().size()); + fer.addGrade(90); + assertEquals(1, fer.getGrades().size()); + fer.addGrade(70); + assertEquals(2, fer.getGrades().size()); } + @Test - public void testGetAverage(){ - double expectedAverage = (90 + 88 + 87) / 3.0; - double actualAverage = student1.getGradeAverage(); + public void testIfGetGradesWorks(){ + Student fer = new Student(1L, "fer"); + fer.addGrade(90); + fer.addGrade(70); + assertSame(90, fer.getGrades().get(0)); + assertSame(70, fer.getGrades().get(1)); + } - assertEquals(expectedAverage, actualAverage, 0.01); + @Test + public void testIfGetAVGWorks(){ + Student fer = new Student(1L, "fer"); + fer.addGrade(90); + fer.addGrade(70); // 160 / 2 = 80 + assertEquals(80, fer.getGradeAverage(), 0); + fer.addGrade(50); // 210 / 3 = 70 + assertEquals(70, fer.getGradeAverage(), 0); } -} + @Test + public void testCreateStudent(){ + Student fer = new Student(1L, "fer"); + Student ryan = null; + assertNull(ryan); + assertNotNull(fer); + } + + @Test + public void testStudentFields(){ + Student fer = new Student(1L, "fer"); + assertSame(1L, fer.getId()); + assertSame("fer", fer.getName()); + assertSame(0, fer.getGrades().size()); + } + + + @Test + public void testAddGrade(){ + Student fer = new Student(1L, "fer"); + fer.addGrade(100); + assertSame(100, fer.getGrades().get(0)); + fer.addGrade(80); + assertSame(80, fer.getGrades().get(1)); + } + + @Test + public void testAverageGrade(){ + Student fer = new Student(1L, "fer"); + fer.addGrade(100); + fer.addGrade(80); + assertEquals(90, fer.getGradeAverage(), 0); + } + +} \ No newline at end of file