forked from github/wulkanowy-mirror
Add school api (#11)
This commit is contained in:
@ -0,0 +1,33 @@
|
||||
package io.github.wulkanowy.api.school;
|
||||
|
||||
import org.junit.Assert;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
|
||||
public class SchoolInfoTest extends SchoolTest {
|
||||
|
||||
private SchoolInfo schoolInfo;
|
||||
|
||||
@Before
|
||||
public void setUp() throws Exception {
|
||||
super.setUp();
|
||||
schoolInfo = new SchoolInfo(school, snp);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getSchoolDataTest() throws Exception {
|
||||
SchoolData schoolData = schoolInfo.getSchoolData();
|
||||
|
||||
Assert.assertEquals("Zespół Szkół nr 64", schoolData.getName());
|
||||
Assert.assertEquals("ul. Wiśniowa 128, 01-234 Rogalowo, Nibylandia",
|
||||
schoolData.getAddress());
|
||||
Assert.assertEquals("55 5555555", schoolData.getPhoneNumber());
|
||||
Assert.assertEquals("Antoni Sobczyk", schoolData.getHeadmaster());
|
||||
Assert.assertArrayEquals(new String[]{
|
||||
"Zofia Czerwińska [ZC]",
|
||||
"Aleksander Krzemiński [AK]",
|
||||
"Karolina Kowalska [KK]",
|
||||
"Bartek Dąbrowski [BD]"
|
||||
}, schoolData.getPedagogues());
|
||||
}
|
||||
}
|
@ -0,0 +1,30 @@
|
||||
package io.github.wulkanowy.api.school;
|
||||
|
||||
import org.jsoup.Jsoup;
|
||||
import org.jsoup.nodes.Document;
|
||||
import org.jsoup.nodes.Element;
|
||||
import org.junit.Before;
|
||||
import org.mockito.Mockito;
|
||||
|
||||
import io.github.wulkanowy.api.FixtureHelper;
|
||||
import io.github.wulkanowy.api.StudentAndParent;
|
||||
|
||||
public class SchoolTest {
|
||||
|
||||
protected School school;
|
||||
protected StudentAndParent snp;
|
||||
private String fixtureFileName = "Szkola.html";
|
||||
|
||||
@Before
|
||||
public void setUp() throws Exception {
|
||||
String input = FixtureHelper.getAsString(getClass().getResourceAsStream(fixtureFileName));
|
||||
|
||||
Document schoolPageDocument = Jsoup.parse(input);
|
||||
|
||||
school = Mockito.mock(School.class);
|
||||
Mockito.when(school.getSchoolPageDocument()).thenReturn(schoolPageDocument);
|
||||
snp = Mockito.mock(StudentAndParent.class);
|
||||
Mockito.when(snp.getRowDataChildValue(Mockito.any(Element.class),
|
||||
Mockito.anyInt())).thenCallRealMethod();
|
||||
}
|
||||
}
|
@ -0,0 +1,44 @@
|
||||
package io.github.wulkanowy.api.school;
|
||||
|
||||
import org.junit.Assert;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class TeachersInfoTest extends SchoolTest {
|
||||
|
||||
private TeachersInfo teachersInfo;
|
||||
|
||||
@Before
|
||||
public void setUp() throws Exception {
|
||||
super.setUp();
|
||||
teachersInfo = new TeachersInfo(school);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getTeachersDataTest() throws Exception {
|
||||
TeachersData teachersData = teachersInfo.getTeachersData();
|
||||
|
||||
Assert.assertEquals("1a", teachersData.getClassName());
|
||||
Assert.assertArrayEquals(new String[]{
|
||||
"Karolina Kowalska [AN]",
|
||||
"Antoni Sobczyk [AS]"
|
||||
}, teachersData.getClassTeacher());
|
||||
|
||||
List<Subject> subjects = teachersData.getSubjects();
|
||||
|
||||
Assert.assertEquals("Biologia", subjects.get(0).getName());
|
||||
Assert.assertArrayEquals(new String[]{"Karolina Kowalska [AN]"},
|
||||
subjects.get(0).getTeachers());
|
||||
Assert.assertEquals("Karolina Kowalska [AN]",
|
||||
subjects.get(0).getTeachers()[0]);
|
||||
|
||||
Assert.assertEquals("Język angielski", subjects.get(6).getName());
|
||||
Assert.assertArrayEquals(new String[]{
|
||||
"Karolina Kowalska [AN]",
|
||||
"Mateusz Kowal [MK]",
|
||||
"Amelia Mazur [AM]"
|
||||
}, subjects.get(6).getTeachers());
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user