package com.alibaba.rocketmq.storm.spout.factory; import static org.hamcrest.core.IsInstanceOf.instanceOf; import static org.hamcrest.core.Is.isA; import static org.junit.Assert.assertThat; import org.junit.Test; import backtype.storm.topology.IRichSpout; import com.alibaba.rocketmq.storm.domain.RocketMQSpouts; import com.alibaba.rocketmq.storm.spout.BatchMessageSpout; import com.alibaba.rocketmq.storm.spout.SimpleMessageSpout; import com.alibaba.rocketmq.storm.spout.StreamMessageSpout; /** * @author Von Gosling */ public class RocketMQSpoutFactoryTest { @Test(expected = java.lang.NullPointerException.class) public void getNullSpoutTest() throws Exception { RocketMQSpoutFactory.getSpout(null); } @Test public void getSpoutTest() throws Exception { IRichSpout richSpout = RocketMQSpoutFactory.getSpout(RocketMQSpouts.SIMPLE.getValue()); assertThat(richSpout, isA(IRichSpout.class)); assertThat(richSpout, instanceOf(SimpleMessageSpout.class)); richSpout = RocketMQSpoutFactory.getSpout(RocketMQSpouts.BATCH.getValue()); assertThat(richSpout, instanceOf(BatchMessageSpout.class)); richSpout = RocketMQSpoutFactory.getSpout(RocketMQSpouts.STREAM.getValue()); assertThat(richSpout, instanceOf(StreamMessageSpout.class)); } }