package org.weso.wesearch.domain; import static org.junit.Assert.*; import java.util.Iterator; import org.junit.Before; import org.junit.Test; import org.weso.utils.WesearchException; import org.weso.wesearch.domain.Matter; import org.weso.wesearch.domain.Matters; import org.weso.wesearch.domain.impl.MatterImpl; import org.weso.wesearch.domain.impl.SubjectsImpl; public class TestSubjectsImpl { private Matters matters; @Before public void initialize() { matters = new SubjectsImpl(); Matter m = new MatterImpl("Matter test 1", "http://www.weso.es/testOntology#Person", "Descripcion for test"); matters.addMatter(m); m = new MatterImpl("Matter test 2", "http://www.weso.es/testOntology#Thing", "Descripcion for test"); matters.addMatter(m); m = new MatterImpl("Matter test 3", "http://www.weso.es/testOntology#Matter", "Descripcion for test"); matters.addMatter(m); m = new MatterImpl("Matter test 4", "http://www.weso.es/testOntology#Place", "Descripcion for test"); matters.addMatter(m); } @Test public void testIterator() { Iterator<Matter> iterator = matters.iterator(); assertNotNull(iterator); } @Test public void testSize() { assertEquals(4, matters.size()); Matter m = new MatterImpl("Label test", "http://www.weso.es/testOntology#Matter", "Descripcion for test"); matters.addMatter(m); assertEquals(5, matters.size()); Iterator<Matter> iterator = matters.iterator(); iterator.next(); iterator.remove(); assertEquals(4, matters.size()); } @Test(expected=IllegalArgumentException.class) public void testAddMatter() { Matter m = new MatterImpl("Label 1", "http://www.weso.es/testOntology#Matter", "Descripcion for test"); matters.addMatter(m); assertEquals(5, matters.size()); m = new MatterImpl("Label 2", "http://www.weso.es/testOntology#Matter", "Descripcion for test"); matters.addMatter(m); assertEquals(6, matters.size()); matters.addMatter(null); } @Test public void testFindMatterExpected() throws WesearchException { Matter expected = new MatterImpl("Matter test 3", "http://www.weso.es/testOntology#Matter", "Descripcion for test"); Matter actual = null; actual = matters.findMatter("Matter test 3"); assertTrue(actual.equals(expected)); } @Test public void testFindMatterIncorrectUnexpected() throws WesearchException { Matter unexpected = new MatterImpl("Matter test", "http://www.weso.es/testOntology#MatterTest", "Descripcion for test"); Matter actual = null; actual = matters.findMatter("Matter test 1"); assertFalse(actual.equals(unexpected)); } @Test(expected=WesearchException.class) public void testFindMatterNonExistent() throws WesearchException { matters.findMatter("Matter test 5"); } }