package com.thinkaurelius.faunus.formats; import com.thinkaurelius.faunus.formats.graphson.GraphSONInputFormat; import com.thinkaurelius.faunus.formats.graphson.GraphSONOutputFormat; import com.thinkaurelius.faunus.formats.noop.NoOpOutputFormat; import com.thinkaurelius.faunus.formats.script.ScriptInputFormat; import com.thinkaurelius.faunus.formats.script.ScriptOutputFormat; import com.thinkaurelius.faunus.formats.titan.cassandra.TitanCassandraInputFormat; import com.thinkaurelius.faunus.formats.titan.cassandra.TitanCassandraOutputFormat; import com.thinkaurelius.faunus.formats.titan.hbase.TitanHBaseInputFormat; import com.thinkaurelius.faunus.formats.titan.hbase.TitanHBaseOutputFormat; import junit.framework.TestCase; import org.apache.hadoop.mapreduce.lib.input.SequenceFileInputFormat; import org.apache.hadoop.mapreduce.lib.input.TextInputFormat; import org.apache.hadoop.mapreduce.lib.output.SequenceFileOutputFormat; /** * @author Marko A. Rodriguez (http://markorodriguez.com) */ public class InverterTest extends TestCase { public void testInputInversion() { assertEquals(Inverter.invertInputFormat(SequenceFileInputFormat.class), SequenceFileOutputFormat.class); assertEquals(Inverter.invertInputFormat(GraphSONInputFormat.class), GraphSONOutputFormat.class); assertEquals(Inverter.invertInputFormat(TitanHBaseInputFormat.class), TitanHBaseOutputFormat.class); assertEquals(Inverter.invertInputFormat(TitanCassandraInputFormat.class), TitanCassandraOutputFormat.class); assertEquals(Inverter.invertInputFormat(ScriptInputFormat.class), ScriptOutputFormat.class); try { Inverter.invertInputFormat(TextInputFormat.class); assertFalse(true); } catch (UnsupportedOperationException e) { assertTrue(true); } } public void testOutputInversion() { assertEquals(Inverter.invertOutputFormat(SequenceFileOutputFormat.class), SequenceFileInputFormat.class); assertEquals(Inverter.invertOutputFormat(GraphSONOutputFormat.class), GraphSONInputFormat.class); assertEquals(Inverter.invertOutputFormat(TitanCassandraOutputFormat.class), TitanCassandraInputFormat.class); assertEquals(Inverter.invertOutputFormat(TitanHBaseOutputFormat.class), TitanHBaseInputFormat.class); assertEquals(Inverter.invertOutputFormat(ScriptOutputFormat.class), ScriptInputFormat.class); try { Inverter.invertOutputFormat(NoOpOutputFormat.class); assertFalse(true); } catch (UnsupportedOperationException e) { assertTrue(true); } } }