我对storm是个新手,正在尝试如何编写一个测试 execute(Tuple tuple) 子类中的方法 BaseRichBolt .问题是看起来 Tuple 是不可变的,我没有看到任何方法或生成器来创建新元组。我怎样才能创造我自己的 Tuple ,或者如何使用测试输入测试螺栓?我实际上使用的是scala,而不是java,但答案应该很容易翻译。
execute(Tuple tuple)
BaseRichBolt
Tuple
mnemlml81#
模拟tuple对象是StormStarter项目的一个很好的解决方案。很简单:
package storm.starter.tools; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; import backtype.storm.Constants; import backtype.storm.tuple.Tuple; public final class MockTupleHelpers { private MockTupleHelpers() { } public static Tuple mockTickTuple() { return mockTuple(Constants.SYSTEM_COMPONENT_ID, Constants.SYSTEM_TICK_STREAM_ID); } public static Tuple mockTuple(String componentId, String streamId) { Tuple tuple = mock(Tuple.class); when(tuple.getSourceComponent()).thenReturn(componentId); when(tuple.getSourceStreamId()).thenReturn(streamId); return tuple; } }
1条答案
按热度按时间mnemlml81#
模拟tuple对象是StormStarter项目的一个很好的解决方案。很简单: