-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[#219] Handlers call getEffectiveValues(). Create tests for handlers
- Loading branch information
Showing
15 changed files
with
458 additions
and
46 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
63 changes: 63 additions & 0 deletions
63
s-pipes-core/src/test/java/cz/cvut/spipes/modules/handlers/BooleanHandlerTest.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,63 @@ | ||
package cz.cvut.spipes.modules.handlers; | ||
|
||
import cz.cvut.spipes.engine.ExecutionContext; | ||
import org.apache.jena.rdf.model.*; | ||
import org.junit.jupiter.api.BeforeEach; | ||
import org.junit.jupiter.api.Test; | ||
import static org.mockito.Mockito.*; | ||
|
||
public class BooleanHandlerTest { | ||
|
||
private BooleanHandler booleanHandler; | ||
private Resource mockResource; | ||
private ExecutionContext mockExecutionContext; | ||
private Setter<Boolean> mockSetter; | ||
private Property mockProperty; | ||
private Model model; | ||
|
||
@BeforeEach | ||
public void setUp() { | ||
mockResource = mock(Resource.class); | ||
mockExecutionContext = mock(ExecutionContext.class); | ||
mockSetter = mock(Setter.class); | ||
mockProperty = mock(Property.class); | ||
model = ModelFactory.createDefaultModel(); | ||
|
||
booleanHandler = new BooleanHandler(mockResource, mockExecutionContext, mockSetter); | ||
} | ||
|
||
@Test | ||
public void testSetValueByPropertyWithBooleanLiteral() { | ||
RDFNode booleanLiteralNode = model.createLiteral(String.valueOf(true)); | ||
Statement mockStatement = mock(Statement.class); | ||
|
||
when(mockResource.getProperty(mockProperty)).thenReturn(mockStatement); | ||
when(mockStatement.getObject()).thenReturn(booleanLiteralNode); | ||
|
||
booleanHandler.setValueByProperty(mockProperty); | ||
|
||
verify(mockSetter).addValue(true); | ||
} | ||
|
||
@Test | ||
public void testSetValueByPropertyWithNonLiteralNode() { | ||
RDFNode nonLiteralNode = model.createResource(); | ||
Statement mockStatement = mock(Statement.class); | ||
|
||
when(mockResource.getProperty(mockProperty)).thenReturn(mockStatement); | ||
when(mockStatement.getObject()).thenReturn(nonLiteralNode); | ||
|
||
booleanHandler.setValueByProperty(mockProperty); | ||
|
||
verify(mockSetter, never()).addValue(anyBoolean()); | ||
} | ||
|
||
@Test | ||
public void testSetValueByPropertyWithNullNode() { | ||
when(mockResource.getProperty(mockProperty)).thenReturn(null); | ||
|
||
booleanHandler.setValueByProperty(mockProperty); | ||
|
||
verify(mockSetter, never()).addValue(anyBoolean()); | ||
} | ||
} |
52 changes: 52 additions & 0 deletions
52
s-pipes-core/src/test/java/cz/cvut/spipes/modules/handlers/HandlerTest.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,52 @@ | ||
package cz.cvut.spipes.modules.handlers; | ||
|
||
import cz.cvut.spipes.engine.ExecutionContext; | ||
import org.apache.jena.rdf.model.Property; | ||
import org.apache.jena.rdf.model.RDFNode; | ||
import org.apache.jena.rdf.model.Resource; | ||
import org.apache.jena.rdf.model.Statement; | ||
import org.apache.jena.rdf.model.Model; | ||
import org.apache.jena.rdf.model.ModelFactory; | ||
import org.junit.jupiter.api.BeforeEach; | ||
import org.junit.jupiter.api.Test; | ||
import static org.junit.jupiter.api.Assertions.*; | ||
import static org.mockito.Mockito.*; | ||
|
||
public class HandlerTest { | ||
|
||
private Handler<Object> handler; | ||
private Resource mockResource; | ||
private ExecutionContext mockExecutionContext; | ||
private Setter<Object> mockSetter; | ||
private Property mockProperty; | ||
private Model model; | ||
|
||
@BeforeEach | ||
public void setUp() { | ||
mockResource = mock(Resource.class); | ||
mockExecutionContext = mock(ExecutionContext.class); | ||
mockSetter = mock(Setter.class); | ||
mockProperty = mock(Property.class); | ||
model = ModelFactory.createDefaultModel(); | ||
|
||
handler = new Handler<Object>(mockResource, mockExecutionContext, mockSetter) { | ||
@Override | ||
public void setValueByProperty(Property property) { | ||
|
||
} | ||
}; | ||
} | ||
|
||
@Test | ||
public void testGetEffectiveValueWhenNotExpression() { | ||
RDFNode expectedNode = model.createLiteral("value"); | ||
Statement mockStatement = mock(Statement.class); | ||
|
||
when(mockResource.getProperty(mockProperty)).thenReturn(mockStatement); | ||
when(mockStatement.getObject()).thenReturn(expectedNode); | ||
|
||
RDFNode result = handler.getEffectiveValue(mockProperty); | ||
|
||
assertEquals(expectedNode, result); | ||
} | ||
} |
64 changes: 64 additions & 0 deletions
64
s-pipes-core/src/test/java/cz/cvut/spipes/modules/handlers/IntegerHandlerTest.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,64 @@ | ||
package cz.cvut.spipes.modules.handlers; | ||
|
||
import cz.cvut.spipes.engine.ExecutionContext; | ||
import org.apache.jena.rdf.model.*; | ||
import org.junit.jupiter.api.BeforeEach; | ||
import org.junit.jupiter.api.Test; | ||
import static org.mockito.Mockito.*; | ||
|
||
public class IntegerHandlerTest { | ||
|
||
private IntegerHandler integerHandler; | ||
private Resource mockResource; | ||
private ExecutionContext mockExecutionContext; | ||
private Setter<Integer> mockSetter; | ||
private Property mockProperty; | ||
private Model model; | ||
|
||
@BeforeEach | ||
public void setUp() { | ||
mockResource = mock(Resource.class); | ||
mockExecutionContext = mock(ExecutionContext.class); | ||
mockSetter = mock(Setter.class); | ||
mockProperty = mock(Property.class); | ||
model = ModelFactory.createDefaultModel(); | ||
|
||
integerHandler = new IntegerHandler(mockResource, mockExecutionContext, mockSetter); | ||
} | ||
|
||
@Test | ||
public void testSetValueByPropertyWithIntegerLiteral() { | ||
RDFNode integerLiteralNode = model.createLiteral(String.valueOf(42)); | ||
Statement mockStatement = mock(Statement.class); | ||
|
||
when(mockResource.getProperty(mockProperty)).thenReturn(mockStatement); | ||
when(mockStatement.getObject()).thenReturn(integerLiteralNode); | ||
|
||
integerHandler.setValueByProperty(mockProperty); | ||
|
||
verify(mockSetter).addValue(42); | ||
} | ||
|
||
@Test | ||
public void testSetValueByPropertyWithNonLiteralNode() { | ||
RDFNode nonLiteralNode = model.createResource(); | ||
Statement mockStatement = mock(Statement.class); | ||
|
||
when(mockResource.getProperty(mockProperty)).thenReturn(mockStatement); | ||
when(mockStatement.getObject()).thenReturn(nonLiteralNode); | ||
|
||
integerHandler.setValueByProperty(mockProperty); | ||
|
||
verify(mockSetter, never()).addValue(anyInt()); | ||
} | ||
|
||
@Test | ||
public void testSetValueByPropertyWithNullNode() { | ||
|
||
when(mockResource.getProperty(mockProperty)).thenReturn(null); | ||
|
||
integerHandler.setValueByProperty(mockProperty); | ||
|
||
verify(mockSetter, never()).addValue(anyInt()); | ||
} | ||
} |
Oops, something went wrong.