@DataProvider(value = { "true | true | true", "true | false | true", "false | true | true", "false | false | true", "true | true | false", "true | false | false", "false | true | false", "false | false | false", }, splitBy = "\\|") @Test public void pair_constructor_sets_fields_as_expected( boolean nullSpanStack, boolean nullMdcInfo, boolean useStaticFactory ) { Deque<Span> spanStackMock = (nullSpanStack) ? null : mock(Deque.class); Map<String, String> mdcInfoMock = (nullMdcInfo) ? null : mock(Map.class); BiFunctionWithTracing instance = (useStaticFactory) ? withTracing(biFunctionMock, Pair.of(spanStackMock, mdcInfoMock)) : new BiFunctionWithTracing(biFunctionMock, Pair.of(spanStackMock, mdcInfoMock) ); assertThat(instance.origBiFunction).isSameAs(biFunctionMock); assertThat(instance.spanStackForExecution).isEqualTo(spanStackMock); assertThat(instance.mdcContextMapForExecution).isEqualTo(mdcInfoMock); }
public static <T, U, R> BiFunctionWithTracing<T, U, R> withTracing(BiFunction<T, U, R> origBiFunction) { return new BiFunctionWithTracing<>(origBiFunction); }
BiFunctionWithTracing implements BiFunction<T, U, R> { public static <T, U, R> BiFunctionWithTracing<T, U, R> withTracing(BiFunction<T, U, R> origBiFunction) { return new BiFunctionWithTracing<>(origBiFunction); } }
BiFunctionWithTracing implements BiFunction<T, U, R> { public static <T, U, R> BiFunctionWithTracing<T, U, R> withTracing(BiFunction<T, U, R> origBiFunction) { return new BiFunctionWithTracing<>(origBiFunction); } BiFunctionWithTracing(BiFunction<T, U, R> origBiFunction);  BiFunctionWithTracing(BiFunction<T, U, R> origBiFunction,
                                 Pair<Deque<Span>, Map<String, String>> originalThreadInfo);  BiFunctionWithTracing(BiFunction<T, U, R> origBiFunction,
                                 Deque<Span> spanStackForExecution,
                                 Map<String, String> mdcContextMapForExecution); }
BiFunctionWithTracing implements BiFunction<T, U, R> { public static <T, U, R> BiFunctionWithTracing<T, U, R> withTracing(BiFunction<T, U, R> origBiFunction) { return new BiFunctionWithTracing<>(origBiFunction); } BiFunctionWithTracing(BiFunction<T, U, R> origBiFunction);  BiFunctionWithTracing(BiFunction<T, U, R> origBiFunction,
                                 Pair<Deque<Span>, Map<String, String>> originalThreadInfo);  BiFunctionWithTracing(BiFunction<T, U, R> origBiFunction,
                                 Deque<Span> spanStackForExecution,
                                 Map<String, String> mdcContextMapForExecution); static BiFunctionWithTracing<T, U, R> withTracing(BiFunction<T, U, R> origBiFunction); static BiFunctionWithTracing<T, U, R> withTracing(
        BiFunction<T, U, R> origBiFunction,
        Pair<Deque<Span>, Map<String, String>> originalThreadInfo
    ); static BiFunctionWithTracing<T, U, R> withTracing(BiFunction<T, U, R> origBiFunction,
                                                                       Deque<Span> spanStackForExecution,
                                                                       Map<String, String> mdcContextMapForExecution); @Override R apply(T t, U u); }
BiFunctionWithTracing implements BiFunction<T, U, R> { public static <T, U, R> BiFunctionWithTracing<T, U, R> withTracing(BiFunction<T, U, R> origBiFunction) { return new BiFunctionWithTracing<>(origBiFunction); } BiFunctionWithTracing(BiFunction<T, U, R> origBiFunction);  BiFunctionWithTracing(BiFunction<T, U, R> origBiFunction,
                                 Pair<Deque<Span>, Map<String, String>> originalThreadInfo);  BiFunctionWithTracing(BiFunction<T, U, R> origBiFunction,
                                 Deque<Span> spanStackForExecution,
                                 Map<String, String> mdcContextMapForExecution); static BiFunctionWithTracing<T, U, R> withTracing(BiFunction<T, U, R> origBiFunction); static BiFunctionWithTracing<T, U, R> withTracing(
        BiFunction<T, U, R> origBiFunction,
        Pair<Deque<Span>, Map<String, String>> originalThreadInfo
    ); static BiFunctionWithTracing<T, U, R> withTracing(BiFunction<T, U, R> origBiFunction,
                                                                       Deque<Span> spanStackForExecution,
                                                                       Map<String, String> mdcContextMapForExecution); @Override R apply(T t, U u);  }