From 3f9c54bf941a331dcbf5c1d2ec395e7775784558 Mon Sep 17 00:00:00 2001 From: vaidehi4321 <56602405+vaidehi4321@users.noreply.github.com> Date: Wed, 13 Nov 2019 15:02:53 -0500 Subject: [PATCH] graded student done --- src/main/java/io/zipcoder/Classroom.java | 118 +++++++++++++ src/main/java/io/zipcoder/Student.java | 98 +++++++++- src/test/java/io/zipcoder/ClassroomTest.java | 167 ++++++++++++++++++ src/test/java/io/zipcoder/StudentTest.java | 93 ++++++++++ target/classes/io/zipcoder/Classroom.class | Bin 0 -> 4052 bytes target/classes/io/zipcoder/Student.class | Bin 0 -> 3628 bytes .../io/zipcoder/ClassroomTest.class | Bin 0 -> 5423 bytes .../io/zipcoder/StudentTest.class | Bin 0 -> 3434 bytes 8 files changed, 475 insertions(+), 1 deletion(-) create mode 100644 target/classes/io/zipcoder/Classroom.class create mode 100644 target/classes/io/zipcoder/Student.class create mode 100644 target/test-classes/io/zipcoder/ClassroomTest.class create mode 100644 target/test-classes/io/zipcoder/StudentTest.class diff --git a/src/main/java/io/zipcoder/Classroom.java b/src/main/java/io/zipcoder/Classroom.java index 64566f0..5632083 100644 --- a/src/main/java/io/zipcoder/Classroom.java +++ b/src/main/java/io/zipcoder/Classroom.java @@ -1,4 +1,122 @@ package io.zipcoder; +import java.util.*; + public class Classroom { + //declare the instance variables + + Student[] students; + int maxNumberOfStudents; + ArrayList studentList; + + //1st constructor + public Classroom(int max) { + this.maxNumberOfStudents = max; + students=new Student[max]; + studentList=new ArrayList<>(); + } + + + //2nd constructor + //here student is the object in Student[] + public Classroom(Student[] students) { + this.students = students; + } + + + //3rd constructor + public Classroom() { + studentList=new ArrayList<>(); + students=new Student[30]; + + + } + + //define a method getStudent() + public Student[] getStudents() { + return students; + } + + //get average exam score + public Double getAverageExamScore() { + + + double total = 0; + for (Student s : students) { + if (s != null) + total = total + s.averageExamScore(); + } + + Double average = total / students.length; + return average; + } + + //define method add student + + public void addStudent(Student student) { + + for (int i = 0; i < students.length; i++) { + if(students[i]==null){ + students[i]=student; + break; + } + } + } + + @Override + public String toString() { + return "Classroom{" + + "students=" + Arrays.toString(students) + + ", maxNumberOfStudents=" + maxNumberOfStudents + + '}'; + } + + + + public void removeStudent(String firstName ,String lastName) { + List studentsList = new ArrayList<>(); + if(this.students !=null) { + studentsList = new ArrayList<>(Arrays.asList(this.students)); + } + for(Student student : studentsList) { + if(student.getFirstName().equals(firstName) && student.getLastName().equals(lastName)) { + studentsList.remove(student); + break; + } + } + this.students = studentsList.toArray(new Student[]{}); + + } + public Student getStudentsByScore(Student[] students){ + Arrays.sort(students, Collections.reverseOrder()); + + + return null; + } + public Map getGradebook() { + Map gradebook = new HashMap<>(); + String grade = ""; + for (Student student : students) { + if (student.averageExamScore() >= 90) + grade = "A"; + else if (student.averageExamScore() >= 80) + grade = "B"; + else if (student.averageExamScore() >= 70) + grade = "C"; + else if (student.averageExamScore() >= 60) + grade = "D"; + else + grade = "F"; + gradebook.put(student, grade); + } + return gradebook; + } + + + + + } + + + diff --git a/src/main/java/io/zipcoder/Student.java b/src/main/java/io/zipcoder/Student.java index b543e36..1961dd5 100644 --- a/src/main/java/io/zipcoder/Student.java +++ b/src/main/java/io/zipcoder/Student.java @@ -1,4 +1,100 @@ package io.zipcoder; -public class Student { +import java.util.ArrayList; +import java.util.Arrays; + +public class Student implements Comparable{ + String firstName; + String lastName; + ArrayList examScore; + + + + Student(String firstName , String lastName , Double[] testScores){ + this.firstName=firstName; + this.lastName=lastName; + this.examScore= new ArrayList(Arrays.asList(testScores)); + + } + public String getFirstName() { + return firstName; + } + + public String getLastName() { + return lastName; + } + + public ArrayList getExamScore() { + return examScore; + } + + public void setFirstName(String firstName) { + this.firstName = firstName; + } + + public void setLastName(String lastName) { + this.lastName = lastName; + } + + + public Integer getNumberOfExamsTaken(){ + if(this.examScore!= null){ + return examScore.size(); + } + else return 0; + } + + + public String getExamScores() { + StringBuilder output=new StringBuilder(); + output.append("Exam Scores:\n"); + for(int i=0;i %s\n",i+1,Math.round(examScore.get(i)))); + } + return output.toString(); + } + + /* + public String getExamScores(){ + String output="Exam Scores:\n"; + for(int i=0;i %s\n",i+1,Math.round(examScore.get(i))); + } + System.out.println(output); + return output; + } + */ + + public void addExamScore(Double examScore){ + this.examScore.add(examScore); + + } + public void setExamScore(int examNumber, double newScore){ + this.examScore.set(examNumber-1,newScore); + } + + + public Integer averageExamScore(){ + Double sum=0.0; + for(int i=0;i Average Score: "+averageExamScore()+"\n> "+getExamScores(); + + + } + + + ArrayListstudentArrayList=new ArrayList<>(); + + @Override + public int compareTo(Student o) { + return 0; + } } diff --git a/src/test/java/io/zipcoder/ClassroomTest.java b/src/test/java/io/zipcoder/ClassroomTest.java index 7bac1ff..ae3bead 100644 --- a/src/test/java/io/zipcoder/ClassroomTest.java +++ b/src/test/java/io/zipcoder/ClassroomTest.java @@ -1,4 +1,171 @@ package io.zipcoder; +import org.junit.Assert; +import org.junit.Test; + +import java.util.Arrays; +import java.util.Map; + public class ClassroomTest { + @Test + public void ClassroomTest() { + Double[] s1Scores = {100.0, 150.0}; + Double[] s2Scores = {225.0, 25.0}; + Student s1 = new Student("student", "one", s1Scores); + Student s2 = new Student("student", "two", s2Scores); + Student[] students = new Student[]{s1, s2}; + Classroom classroom = new Classroom(students); + Student[] actual = classroom.getStudents(); + Assert.assertEquals(students, actual); + } + + @Test + public void getAverageExamScoreTest() { + Double[] s1Scores = {100.0, 150.0}; + Double[] s2Scores = {225.0, 25.0}; + + Student s1 = new Student("Rose", "Petal", s1Scores); + Student s2 = new Student("Subhash", "Bose", s2Scores); + Student[] students = new Student[]{s1, s2}; + Classroom classroom = new Classroom(students); + Double expected = 125.0; + Double actual = classroom.getAverageExamScore(); + + + Assert.assertEquals(expected, actual); + + } + + @Test + public void test2getAverageExamScore() { + Double[] s1Scores = {100.0, 95.0}; + Double[] s2Scores = {100.0, 96.0}; + Student s1 = new Student("Student", "one", s1Scores); + Student s2 = new Student("Student", "two", s2Scores); + Student[] students = new Student[]{s1, s2}; + Classroom classroom = new Classroom(students); + Double actual = classroom.getAverageExamScore(); + System.out.println(actual); + Assert.assertNotEquals(100, classroom.getAverageExamScore(), 0.00009); + + } + + @Test + public void addStudentTest() { + // : Given + int maxNumberOfStudents = 1; + Classroom classroom = new Classroom(maxNumberOfStudents); + Double[] examScores = {100.0, 150.0, 250.0, 0.0}; + Student student = new Student("Leon", "Hunter", examScores); + + // When + Student[] preEnrollment = classroom.getStudents(); + System.out.println(classroom.toString()); + classroom.addStudent(student); + Student[] postEnrollment = classroom.getStudents(); + + // Then + String preEnrollmentAsString = Arrays.toString(preEnrollment); + String postEnrollmentAsString = Arrays.toString(postEnrollment); + + System.out.println("==========================="); + System.out.println(preEnrollmentAsString); + System.out.println("==========================="); + System.out.println(postEnrollmentAsString); + } + + + @Test + public void removeStudentTest() { + Double[] s1Scores = {100.0, 150.0}; + Double[] s2Scores = {225.0, 25.0}; + Double[] s3Scores = {98.0, 112.0}; + Double[] s4Scores = {220.0, 45.0}; + Student s1 = new Student("Student", "one", s1Scores); + Student s2 = new Student("Rose", "Petal", s2Scores); + Student s3 = new Student("Student", "three", s3Scores); + Student s4 = new Student("Student", "four", s4Scores); + + String firstName = "Rose"; + String lastName = "Petal"; + Classroom classroom = new Classroom(); + classroom.addStudent(s1); + classroom.addStudent(s2); + classroom.addStudent(s3); + classroom.addStudent(s4); + Student[] students = new Student[]{s1, s2, s3, s4}; + + + classroom.removeStudent("Rose", "Petal"); + Student[] expected = classroom.getStudents(); + Assert.assertEquals(s1, expected[0]); + Assert.assertEquals(s3, expected[1]); + Assert.assertEquals(s4, expected[2]); + Assert.assertEquals(expected[3], null); + // System.out.println(expected[3]); + //Assert.assertEquals(expected[3]); + + + } + + /* + @Test + public void getStudentByScoreTest(){ + Double[] s1Scores = { 100.0, 150.0 }; + Double[] s2Scores = { 225.0, 25.0 }; + Double[] s3Scores = { 98.0, 112.0 }; + Double[] s4Scores = { 220.0, 45.0 }; + Student s1=new Student("Student", "one", s1Scores); + Student s2=new Student("Student", "two", s2Scores); + Student s3=new Student("Student", "tree", s1Scores); + Student s4=new Student("Student", "four", s2Scores); + Student[] students=new Student[]{s1,s2,s3,s4}; + Classroom classroom =new Classroom(students); + Student[] expected = {s4, s2,s1,s3}; + Student[] actual=classroom.getStudentsByScore( Student[] Students); + Assert.assertArrayEquals(expected, actual); + + }*/ + @Test + public void getStudentsByScoreTest() { + Double[] scores1 = new Double[]{45.0, 50.0, 55.0}; + Double[] scores2 = new Double[]{60.0, 65.0}; + Double[] scores3 = new Double[]{70.0, 70.0}; + Student student1 = new Student("Jimmy", "John", scores1); + Student student2 = new Student("Tammy", "Tohn", scores2); + Student student3 = new Student("Jack", "Tohn", scores3); + Student[] newStudents = {student1, student2, student3}; + Classroom classroom = new Classroom(newStudents); + + } + @Test + public void getGradebookTest() { + /* int n = 20; + Student[] students = new Student[n]; + for (int i = 1; i<=n; i++) { + students[i-1] = new Student("","",new Double[] {100.0,5.0*i}); + } + Classroom classroom = new Classroom(students);*/ + Double[] scores1 = new Double[] {45.0, 50.0, 55.0}; + Double[] scores2 = new Double[] {60.0, 65.0}; + Double[] scores3 = new Double[] {70.0, 70.0}; + Double[] scores4 = new Double[] {95.0, 90.0, 95.0}; + Double[] scores5 = new Double[] {80.0, 85.0}; + Student student1 = new Student("Jimmy", "John", scores1 ); + Student student2 = new Student("Tammy", "Tohn", scores2 ); + Student student3 = new Student("Jack", "Tohn", scores3 ); + Student student4 = new Student("Rhett", "Ale", scores4 ); + Student student5 = new Student("Amy", "Roberts", scores5 ); + Student[] newStudents = {student1, student2, student3, student4, student5}; + Classroom classroom = new Classroom(newStudents); + + Map gradebook = classroom.getGradebook(); + + Assert.assertEquals(gradebook.get(student1),"F"); + Assert.assertEquals(gradebook.get(student2),"D"); + Assert.assertEquals(gradebook.get(student3),"C"); + Assert.assertEquals(gradebook.get(student4),"A"); + Assert.assertEquals(gradebook.get(student5),"B"); + + } } diff --git a/src/test/java/io/zipcoder/StudentTest.java b/src/test/java/io/zipcoder/StudentTest.java index a9fedec..ef0f7ce 100644 --- a/src/test/java/io/zipcoder/StudentTest.java +++ b/src/test/java/io/zipcoder/StudentTest.java @@ -1,5 +1,98 @@ package io.zipcoder; +import org.junit.Assert; +import org.junit.Test; + public class StudentTest { + @Test + public void testDefaultConstructor() { + // Given + String expectedfirstName = "Rose"; + String expectedlastName = "Petal"; + // ArrayList examScore = new ArrayList<>(); + Double[] examScores = { 100.0, 95.0, 123.0, 96.0 }; + String examScoresStr = "Exam Scores:\n" + + "\tExam 1 -> 100\n" + + "\tExam 2 -> 95\n" + + "\tExam 3 -> 123\n" + + "\tExam 4 -> 96\n"; + + // When + Student student = new Student(expectedfirstName,expectedlastName, examScores); + + // Then + String actualFirstName = student.getFirstName(); + String actualLastName = student.getLastName(); + String actualScore = student.getExamScores(); + + Assert.assertEquals(expectedfirstName, actualFirstName); + Assert.assertEquals(expectedlastName, actualLastName); + Assert.assertEquals(examScoresStr, actualScore); + } + + @Test + public void addExamScoreTest(){ + String expectedFirstName = "Leon"; + String expectedLastName = "Hunter"; + Double[] expectedExamScores = { }; + Student student = new Student(expectedFirstName,expectedLastName, expectedExamScores); + student.addExamScore(100.0); + String actual = student.getExamScores(); + System.out.println(actual); + String expected="Exam Scores:\n"+"\tExam 1 -> 100\n"; + System.out.println(expected); + Assert.assertEquals(expected,actual); + + } + @Test + public void setExamScoreTest(){ + String expectedFirstName = "Leon"; + String expectedLastName = "Hunter"; + Double[] expectedExamScores = { 100.0,50.0,23.0}; + Student student = new Student(expectedFirstName,expectedLastName,expectedExamScores); + student.setExamScore(2, 150.0); + String actual = student.getExamScores(); + System.out.println(actual); + String expected="Exam Scores:\n"+"\tExam 1 -> 100\n"+"\tExam 2 -> 150\n"+"\tExam 3 -> 23\n"; + Assert.assertEquals(expected,actual); + } + + @Test + public void getExamScoreTest(){ + String firstName="Lad"; + String lastName="Drummand"; + Double[] examScores = { 100.0,95.0,123.0,96.0}; + Student student = new Student(firstName,lastName,examScores); + String actual=student.getExamScores(); + System.out.println(actual); + String expected="Exam Scores:\n"+"\tExam 1 -> 100\n"+"\tExam 2 -> 95\n"+"\tExam 3 -> 123\n"+"\tExam 4 -> 96\n"; + System.out.println(expected); + Assert.assertEquals(expected,actual); + + + } + @Test + public void getAverageExamScoreTest(){ + String expectedFirstName = "Leon"; + String expectedLastName = "Hunter"; + Double[] expectedExamScores = { 100.0, 150.0, 250.0,0.0 }; + Student student = new Student(expectedFirstName, expectedLastName,expectedExamScores); + int expected=125; + int actual = student.averageExamScore(); + System.out.println(actual); + Assert.assertEquals(expected,actual); + } + + @Test + public void toStringTest() { + String firstName = "Leon"; + String lastName = "Hunter"; + Double[] examScores = {100.0, 150.0, 250.0, 0.0 }; + Student student = new Student(firstName, lastName, examScores); + String actual = student.toString(); + String expected="Student Name: Leon Hunter\n"+"> Average Score: 125\n"+"> Exam Scores:\n" + +"\tExam 1 -> 100\n"+"\tExam 2 -> 150\n"+"\tExam 3 -> 250\n"+"\tExam 4 -> 0\n"; + Assert.assertEquals(expected,actual); + } } \ No newline at end of file diff --git a/target/classes/io/zipcoder/Classroom.class b/target/classes/io/zipcoder/Classroom.class new file mode 100644 index 0000000000000000000000000000000000000000..9d5caede8f6e1e1ab2961300644181d35f7bf5d7 GIT binary patch literal 4052 zcma)9`F9i775+xsNb-0=!3M>~F)6NvWW^1ol-R}z*f_Yg<+Mskfzoy?kL3YL<47YH zNa+?RO}eis-9s05Z_)-~hlJ)QdQSg|p8gj-Ih?xRdo$9=M#<^%(Jc49d+&Geckg}U zfByINI{*&itte73BS_+$iu2-LP*IE`=m<+u_+dq{f@h;BqoTr&q77ykRdHX9;xo7q z#zpaRNnD;2m(L3EWntuVZTLLC(1tJKOXBjpFn1-2tN5~bx+Ye?A}%keNJsG^zA7}o zrsC^S>=jvm zqdbyz7RD4jP}DDEs>KDPJip{hxm}r2(B^8-niX3?_v|@+RUfI^W?|%LxvXClV(Le- zX1=7`)v}>rxYeHVmX0T=8X7lCrahq`keJzjlDA1>Q_wkUmJA2d)A~YzlGv=3(+el{ zvMJtOVZdHCiFDT%^OFU=QYl+jk>>r3OhG)+I&$IApAgr!ykUEh?@sJ*t-w@q4 ztmlp67xZE_XNjP9CiXjF7xYqoWXh@%BE2ib*1ZLrm-C=)*?NI{rWB~UV^KsYGrZMI zd)C%-=jZel88wMj5Y-nKU0VuvCtCUtaVaLPyBx9>Y%6P*%~F0lVn<5E?Pa5Atr`u} zLy0Cp?ymbK!c%0)ELZG|UX)yUQ8Y}4NsGI#xri!GS#>!UWm&lu)w7lDiz{`;hqmo~ zr^-_Cl8PTPp-sddyXexDey4h9nMVa0jXYV_7mWqWIRmg;D9$|Hg=jg#(( zhDR{MGH)>`Gz=rnr4}M3djbCsq+P=w@h5Vx;m`PshF9>a zhQDH->C^Bxyr$u%P^gKgTUb}Iq2YDh*6;@2B(+{}C-llP*;4?v(NX@6@i)oeG|A9# z2Y+XCH>ar)je;&O=J|zlMvk+y!?WyEeasWg*c>Rf#gw#rLg~B7kW&k^?GB5k@zY%| z30X8VCELgwWfr9qO|y_Qz%1D(^+J{WbM$eI7bnK5*f77u025O!CtFBgSuskB z3eqhGM6-s2+NGS39BK4jCapq&M4DDwyTy>1 z_GW0vc($q+!~xQrVRyH%CXTGx#z+l0gPTrmOCHS%5-r1Qk!$+!%Fc_EzO}N!lc{3N zmu189Tx=R(lU8v>mvu|@fr?dTpu??vw$>3@^siK@bht%?O*GeIzF)-8pCrG`z^^2T z;lwM%{E~N0BzEorKKt-~MEQIWAK>*6B|0^Hyzfcgf|BgL3171JP55sjki3oHsapu$ zg!-yf{UEPB{73`Z5kLnb=)?|mp^w+Ya!ne-V;JQdO=64yI40-o$Ts&BJo_rXdDC_Ah=HS)5%`x zMsp0fZWK)5ao4yL01!;RhQKRS_Ce$!Bozjml!FcBCvenNeuIuw?tY@hiVAd5V@8+aV4m%ZT@RWDBQVbts|OA3%`Epw_n;D zCWzOEa*PKzX_5ncu3M~FF84eN#dk;7nzScrf{6tCa6D+Cu#Ep*L&dKB%MJO zGkz8Q3Uj&VKjc}#hwx!Hl55;6N^8)6q)#Hd0eSB`@DH>LL0>AnhR78kvHx4-+kyL_ z1Te~P{4wlg5%l5+vp$M_1SOyjaGwtkW0qlvvKVX-J%~BNS0q4w``?34>3v&*;wk5X zI!hfveCjsZSgBg9y@n0}W*wb;igh`!z8ZFPU9KTk!vh|JPPI+3evdO_Q%y{!8caTg zk2tQBZUPm#th(iu5pM1xCSDznJ8z*oliolNze@t~zy@|HxQ;{OX}5y6;2#afgEhoc zH9UA7z2dodSUz{Av(7#1B#dHs3i9cYxk29R*!s- zG{8g}U4522d}1&u8M+m{bM-d%lH7-9WAB+0ncmt&%k?I5+NbOE%ZSAG&8^|_dPj9V zB}9W14L3y7LiApW;tkQb5DifjiY4Y!@zC%F_A?W*8DC0?P#gv(n0GNX!&qQd=a}0? zPFI8MEU}34Y?)=|&mLw!0U7sR{JkfB8 zKC(=O$Aws1;F{p#QK*}ok|DONikyl?w{P#^Ar(d}7V~WqC%f5QriwHEmuMi*Hy@V& E2cgNW_W%F@ literal 0 HcmV?d00001 diff --git a/target/classes/io/zipcoder/Student.class b/target/classes/io/zipcoder/Student.class new file mode 100644 index 0000000000000000000000000000000000000000..a28dd84faec4e13190de638d2a761958b39bb136 GIT binary patch literal 3628 zcmZ`*X?Gjd8Gf#|ktP$zR-8Biw-s$nWIMr7S}1m6>ew;Zbz&N2ArQf*0|Eh zK)RQ$3s9iY9cbx7KlB4VhbV42?cqaDKlCs3pY)tA&wJ-u8ac`b-MMq`yFBmnE~9_` z_b-0~@EQEU#sDr^c+y4!mvT4+SC$o7$~IQv$;FzyR%CbChL0;2uG(;LDT}H+*R!Zu z2;_dl!dGnUMcqaNp^YXsZ9IjiMeG?7xF)w>mEG4wLdg zdCtP~@_fOyX&4pe(8$4=}uJLT4kaX*8N&#N+DZyx9@Y_)9!ky9Mmbh zFOqGBesyA|UU#2a@*5$=b0xo0bHk>{jP{Z_7IQKeG*_zL)HL<_8)0+RtA%Y_3P*aY z`@zIDf1@0%dUc}IO4>r^m|ye5X@$vR%!P^L=99-`M+V2}d4<$04J+(f@@wAd=K6|P zKkE{skQ0>M>Up>B%ey&Dg_r$?kkJd2f*pE|P!mR>y*)fCI2A9P@1$U`Xh`c$!Y)cJ zweui4Cp)Pa+Sa)#8RNZgZjl0~(FJ8+4;qD`T@>qJ*+(o9Ps?k9sd3i5>eWcewrd^8 zLM`+vUY&W~T?*au)l=?TY^XLK;b~KXN`<9RK@Eq+{-IhymB}tcMry*H^;G)S#4kH@mNpm z(pYvWXx7W#ye~!Un1;Da8r{L&_%7>GH+^^QIJgVr4i2N}U=&3Q-*fPN{6I8baxf-$ zFXI&pKXmXaUQ-y_IXFy?m~UaK5cR;M?cjC%h~1Ubrz4HR(doiS!zQmC15ua`-oTq( z=TX`m{1`v6@KXmr!_O`JLIC{I!dnjB#ybu!VA8>_@M}4K*THY_TL-_x?-lw?lrSqW-(yaB?cgLPNm7pnckn1KDhzg@ck)5yqSR6pSBG3y zc*bqWtW+2&#wWsd(xdch4Kq>?nnu)Tvq81W;_!polpa?N{~Gg3XDpV14ieLF3f87u zZFvzn&W$d1-7f{T3VAOs#zD)Wd@MR#_j0`r8Lqpj{si{W>>$^J=qHFg|NDRgLL0_saUb6V zo&Z&PCr}f5cRxOdBu^i}q=7WSr%0v8K0x|?ZX$OXeK@F1JCT4ftuWP7IkQvwKu_gk zI8GNrM%;65r}A(Q<%r{HqInRX=PE{~X-q=PXbL-Y$-gq7fHbow^z4tM+Vo@$Jqk0u zZDn@aIz(F|x3DDy3ymi*YjB;>@4ygg&HV#?@@T={!mjs|vJg^I=e3Vd$(F?o=2=Dp zHX?k;fSuE_Do=}?i^l$+sUV8yK7_*}+PyTM?`vVth2-&J9lk)C3nLuV3@{z@ct{g`&S1{s6duL`!3uf@iT_~0!lL>&6Q=M5ESWG)P)ibJ3oyDqcwr~) zCy}G=P73XI3T-lWigpxEW7*g{V;Zbq?A@MPEpFkq7H+@E>H?!#Y)1h0(RSbTGq#6l zP0qfEGeoE4^JMIQK>I@bd>;)j#mO!Z{a`n}Ws%XW{%iY^CGcXfh2d9@4|i2T#PeyE z*fOi&5!S;p`=i9-JgZSkcUvs7ZJy^1-n5nw7G|h>PG_ObxMkry89&ThexpqUo{k8Z zGKG`>7;{hDX+H8FkMavgK%StSWPiq*!V{{)WXP4Q<)fuoH3O!WBE(? JvUdE${{dl31*HH0 literal 0 HcmV?d00001 diff --git a/target/test-classes/io/zipcoder/ClassroomTest.class b/target/test-classes/io/zipcoder/ClassroomTest.class new file mode 100644 index 0000000000000000000000000000000000000000..0883d331468f0ffcf490b4c52daa4d16209ff677 GIT binary patch literal 5423 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 literal 0 HcmV?d00001 diff --git a/target/test-classes/io/zipcoder/StudentTest.class b/target/test-classes/io/zipcoder/StudentTest.class new file mode 100644 index 0000000000000000000000000000000000000000..456c015f7162bf3f2af443c88bb78a03349e86cf GIT binary patch literal 3434 zcmbVNTUQfT6#j-JlMqM17{qv~@rFUc2ntG23>Z)_1T+|p_koNtG#5-J6m9L@-mgEU zeNb1s+STVi^rb(beeAF3>UU-)lL67yC9E}b&YpA5{w{l;{QmDxzXCXc@BKK6v=8$> zT=60!$FmIc&kr}Q%JHke88bP4yD_+C1mMFpFS35L+@PoACa(4=R2X@Q|m?jT%}yotMx^_QkAepTV2)` zbuD+VP_5}HwPYk&QdiVyQ7z|rOtnzX^MsDZ!lK$(=hs%%QhKpc)tG(jjbw9IqEaV3 z?%Ld3!jmL;YbGoSog1O$j&^lXudBt$CY&}ilC<+~G6P0t(!N|T>xGh*Dbxx~I#w=M zbX6~qBta)D)qHfRPHm%>5*=zTH_^Z?Vh#-)No~5#w1I{K_I75FO)L_8jjzmF({y`{ znW7{ALa5cDxUVT{7gvt0XjL_@tvf@SlA!1n(-HGnf4WkyE^3nnQ5zi&%Z~~#6hv{1 z#dNt+<7dyDrmICRTW^zsI#wi{7wN*LoiTr_G3yWajfVS=9kZqbVmdr%&5j!%2aa3Q z6UN6OKTBbQIuuymQm~4L3Lc5a+j!{3I|?4-T|!K1l`_S=Kr6MXg7@&g7au725FdH* zv4SV~M8d9D0aWlQK9ex~sx>AjgGB#egOkC6B-naMHAf#4)q1I80QXNnmM_YVv*_?pOUpoYH3h_h=0d95mI zT06V2#I|O`t*FJiHhYf^7fJMN)S|J7BWkt#i;)ewTU=BMtJTpp!H6@3eRpi)s%9T; zcJ_j3(q@m2)oNOms1?;1Og!LCz!is_5KU$y4v1F7z~k(0!P&9Qx|GB+M-QYQ)^x2z z_bYWK?ljj^;W^%WIvHqciMP^LL)o=qin}Zp66_X91-fNRG43*1>( z5T57ornBxKe8#{Ngx?s*K`3I73be)CKchW+q_^)GI%1xX=P9=7iEn_Y#4o!Gn}~HYX|xe*C(dF!CK196c3>X6a2>mG7jGbsJqDMX zCSHq+i$B9Baf+N|EMSOQn472e;0#8|b`twIJH_=g*ointUgim6 zj3Xb$iAgAT&d@2*&9*v!*5^Er!o zH#wNh2dJpYe4OT*%u_UYBjy)v=KomCZwK}#0|)+pJFJypt^aMW@ZVHmlnR`s0&$k^ z7}<~W{~XyT$bJGDa=S&`O$Bb-3fw@F8VT>Ov7F7~k6Oh)!n$fG(C|L>67N&C0)JTw zWKHj1xDfUo${0CINZDex{XdwlKcz_ zqVO*~^;pSG;;V~d#94 z&)LNPu!tvLo46o-B<2b9Zcys`Sb88E7qY}~om_8_>rGmIi#FfEMc#2ugOfJTDcj&l f%iuoVgXZlvjI9>WIPX%k#1k(m@k`9!g3JE_U(vU9 literal 0 HcmV?d00001