@Before public void beforeMethod() { channelMock = mock(Channel.class); channelPoolMock = mock(ChannelPool.class); eventLoopMock = mock(EventLoop.class); contentChunkMock = mock(HttpContent.class); callActiveHolder = new ObjectHolder<>(); callActiveHolder.heldObject = true; downstreamLastChunkSentHolder = new ObjectHolder<>(); downstreamLastChunkSentHolder.heldObject = false; spanForDownstreamCallMock = mock(Span.class); proxySpanTaggingStrategyMock = mock(ProxyRouterSpanNamingAndTaggingStrategy.class); streamingChannelSpy = spy(new StreamingChannel( channelMock, channelPoolMock, callActiveHolder, downstreamLastChunkSentHolder, null, null, spanForDownstreamCallMock, proxySpanTaggingStrategyMock )); writeAndFlushChannelFutureMock = mock(ChannelFuture.class); doReturn(eventLoopMock).when(channelMock).eventLoop(); doReturn(writeAndFlushChannelFutureMock).when(channelMock).writeAndFlush(contentChunkMock); channelIsBrokenAttrMock = mock(Attribute.class); doReturn(channelIsBrokenAttrMock).when(channelMock).attr(CHANNEL_IS_BROKEN_ATTR); streamChunkChannelPromiseMock = mock(ChannelPromise.class); doReturn(streamChunkChannelPromiseMock).when(channelMock).newPromise(); failedFutureMock = mock(ChannelFuture.class); doReturn(failedFutureMock).when(channelMock).newFailedFuture(any(Throwable.class)); }
@Test public void StreamingChannel_constructor_sets_fields_as_expected() { // given Deque<Span> spanStackMock = mock(Deque.class); Map<String, String> mdcInfoMock = mock(Map.class); // when StreamingChannel sc = new StreamingChannel( channelMock, channelPoolMock, callActiveHolder, downstreamLastChunkSentHolder, spanStackMock, mdcInfoMock, spanForDownstreamCallMock, proxySpanTaggingStrategyMock ); // then assertThat(sc.channel).isSameAs(channelMock); assertThat(sc.getChannel()).isSameAs(sc.channel); assertThat(sc.pool).isSameAs(channelPoolMock); assertThat(sc.callActiveHolder).isSameAs(callActiveHolder); assertThat(sc.downstreamLastChunkSentHolder).isSameAs(downstreamLastChunkSentHolder); assertThat(sc.distributedTracingSpanStack).isSameAs(spanStackMock); assertThat(sc.distributedTracingMdcInfo).isSameAs(mdcInfoMock); assertThat(sc.spanForDownstreamCall).isSameAs(spanForDownstreamCallMock); assertThat(sc.proxySpanTaggingStrategy).isSameAs(proxySpanTaggingStrategyMock); }
streamingChannel.complete(new StreamingChannel( ch, pool, callActiveHolder, lastChunkSentDownstreamHolder, distributedSpanStackToUse, mdcContextToUse, spanForDownstreamCall,
streamingChannel.complete(new StreamingChannel( ch, pool, callActiveHolder, lastChunkSentDownstreamHolder, distributedSpanStackToUse, mdcContextToUse, spanForDownstreamCall,