package com.ontology2.bakemono.sumRDF; import org.apache.hadoop.io.FloatWritable; import org.apache.hadoop.io.LongWritable; import org.apache.hadoop.io.Text; import org.apache.hadoop.mapreduce.Mapper; import org.junit.Before; import org.junit.Test; import java.io.IOException; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.verifyNoMoreInteractions; public class MapperTest { SumRDFMapper mapper; Mapper<LongWritable,Text,Text,FloatWritable>.Context context; @Before public void setup() { mapper=new SumRDFMapper(); context=mock(Mapper.Context.class); } @Test public void tryOne() throws IOException, InterruptedException { Text triple=new Text("<http://example.com/>\t<http://rdf.basekb.com/public/subjectiveEye3D>\t\"3.14159\"^^xsd:float\t."); mapper.map(new LongWritable(99),triple,context); verify(context).write(new Text("<http://example.com/>"),new FloatWritable(3.14159F)); } @Test public void rejectsOtherPredicate() throws IOException, InterruptedException { Text triple=new Text("<http://example.com/>\t<http://rdf.basekb.com/public/subjectiveEye4D>\t\"3.14159\"^^xsd:float\t."); mapper.map(new LongWritable(99),triple,context); verifyNoMoreInteractions(context); } }