|
27 | 27 | import org.apache.pulsar.client.api.ReaderBuilder;
|
28 | 28 | import org.apache.pulsar.client.api.interceptor.ProducerInterceptor;
|
29 | 29 | import org.apache.pulsar.common.schema.SchemaType;
|
30 |
| -import org.assertj.core.api.InstanceOfAssertFactories; |
31 |
| -import org.junit.jupiter.api.Disabled; |
32 | 30 | import org.junit.jupiter.api.Nested;
|
33 | 31 | import org.junit.jupiter.api.Test;
|
34 | 32 | import org.junit.jupiter.api.condition.EnabledForJreRange;
|
@@ -285,24 +283,29 @@ void injectsExpectedBeans() {
|
285 | 283 | }
|
286 | 284 |
|
287 | 285 | @Test
|
288 |
| - @Disabled("Changes in https://github.com/spring-projects/spring-pulsar/issues/593 prevent introspection of the interceptors") |
289 |
| - void whenHasUseDefinedProducerInterceptorInjectsBean() { |
| 286 | + <T> void whenHasUseDefinedProducerInterceptorInjectsBean() { |
290 | 287 | ProducerInterceptor interceptor = mock(ProducerInterceptor.class);
|
291 | 288 | this.contextRunner.withBean("customProducerInterceptor", ProducerInterceptor.class, () -> interceptor)
|
292 |
| - .run((context) -> assertThat(context).getBean(PulsarTemplate.class) |
293 |
| - .extracting("interceptorsCustomizers") |
294 |
| - .asInstanceOf(InstanceOfAssertFactories.LIST) |
295 |
| - .contains(interceptor)); |
| 289 | + .run((context) -> { |
| 290 | + PulsarTemplate<?> pulsarTemplate = context.getBean(PulsarTemplate.class); |
| 291 | + Customizers<ProducerBuilderCustomizer<T>, ProducerBuilder<T>> customizers = Customizers |
| 292 | + .of(ProducerBuilder.class, ProducerBuilderCustomizer::customize); |
| 293 | + assertThat(customizers.fromField(pulsarTemplate, "interceptorsCustomizers")) |
| 294 | + .callsInOrder(ProducerBuilder::intercept, interceptor); |
| 295 | + }); |
296 | 296 | }
|
297 | 297 |
|
298 | 298 | @Test
|
299 |
| - @Disabled("Changes in https://github.com/spring-projects/spring-pulsar/issues/593 prevent introspection of the interceptors") |
300 |
| - void whenHasUseDefinedProducerInterceptorsInjectsBeansInCorrectOrder() { |
301 |
| - this.contextRunner.withUserConfiguration(InterceptorTestConfiguration.class) |
302 |
| - .run((context) -> assertThat(context).getBean(PulsarTemplate.class) |
303 |
| - .extracting("interceptorsCustomizers") |
304 |
| - .asInstanceOf(InstanceOfAssertFactories.LIST) |
305 |
| - .containsExactly(context.getBean("interceptorBar"), context.getBean("interceptorFoo"))); |
| 299 | + <T> void whenHasUseDefinedProducerInterceptorsInjectsBeansInCorrectOrder() { |
| 300 | + this.contextRunner.withUserConfiguration(InterceptorTestConfiguration.class).run((context) -> { |
| 301 | + ProducerInterceptor interceptorFoo = context.getBean("interceptorFoo", ProducerInterceptor.class); |
| 302 | + ProducerInterceptor interceptorBar = context.getBean("interceptorBar", ProducerInterceptor.class); |
| 303 | + PulsarTemplate<?> pulsarTemplate = context.getBean(PulsarTemplate.class); |
| 304 | + Customizers<ProducerBuilderCustomizer<T>, ProducerBuilder<T>> customizers = Customizers |
| 305 | + .of(ProducerBuilder.class, ProducerBuilderCustomizer::customize); |
| 306 | + assertThat(customizers.fromField(pulsarTemplate, "interceptorsCustomizers")) |
| 307 | + .callsInOrder(ProducerBuilder::intercept, interceptorBar, interceptorFoo); |
| 308 | + }); |
306 | 309 | }
|
307 | 310 |
|
308 | 311 | @Test
|
|
0 commit comments