### Question:
DetachedChannelPipeline { public DetachedChannelPipeline addFirst(String name, Func0<ChannelHandler> handlerFactory) { return _guardedAddFirst(new HandlerHolder(name, handlerFactory)); } DetachedChannelPipeline();  DetachedChannelPipeline(final Action1<ChannelPipeline> nullableTail); private  DetachedChannelPipeline(final DetachedChannelPipeline copyFrom,
                                    final Action1<ChannelPipeline> nullableTail); ChannelInitializer<Channel> getChannelInitializer(); void addToChannel(Channel channel); DetachedChannelPipeline copy(); DetachedChannelPipeline copy(Action1<ChannelPipeline> newTail); DetachedChannelPipeline addFirst(String name, Func0<ChannelHandler> handlerFactory); DetachedChannelPipeline addFirst(EventExecutorGroup group,
                                    String name, Func0<ChannelHandler> handlerFactory); DetachedChannelPipeline addLast(String name, Func0<ChannelHandler> handlerFactory); DetachedChannelPipeline addLast(EventExecutorGroup group, String name, Func0<ChannelHandler> handlerFactory); DetachedChannelPipeline addBefore(String baseName, String name, Func0<ChannelHandler> handlerFactory); DetachedChannelPipeline addBefore(EventExecutorGroup group, String baseName, String name, Func0<ChannelHandler> handlerFactory); DetachedChannelPipeline addAfter(String baseName, String name, Func0<ChannelHandler> handlerFactory); DetachedChannelPipeline addAfter(EventExecutorGroup group, String baseName, String name, Func0<ChannelHandler> handlerFactory); @SafeVarargs final DetachedChannelPipeline addFirst(Func0<ChannelHandler>... handlerFactories); @SafeVarargs final DetachedChannelPipeline addFirst(EventExecutorGroup group, Func0<ChannelHandler>... handlerFactories); @SafeVarargs final DetachedChannelPipeline addLast(Func0<ChannelHandler>... handlerFactories); @SafeVarargs final DetachedChannelPipeline addLast(EventExecutorGroup group, Func0<ChannelHandler>... handlerFactories); DetachedChannelPipeline configure(Action1<ChannelPipeline> configurator); void copyTo(ChannelPipeline pipeline);  }### Answer:
@Test(timeout = 60000) public void testAddFirst() throws Exception { pipelineRule.pipeline.addFirst(HANDLER_1.getNameIfConfigured(), HANDLER_1.getHandlerFactoryIfConfigured()); pipelineRule.pipeline.addFirst(HANDLER_2.getNameIfConfigured(), HANDLER_2.getHandlerFactoryIfConfigured()); assertThat("Unexpected handlers count.", pipelineRule.pipeline.getHoldersInOrder(), hasSize(2)); assertThat("Unexpected handlers.", pipelineRule.pipeline.getHoldersInOrder(), contains(HANDLER_2, HANDLER_1)); }