Make BytesEncoder back off without an Encoding bean
Issue: 46153
This commit is contained in:
		
							parent
							
								
									da03d91ce8
								
							
						
					
					
						commit
						dd08a1b3d1
					
				| 
						 | 
				
			
			@ -83,6 +83,7 @@ public class ZipkinTracingAutoConfiguration {
 | 
			
		|||
	static class OpenTelemetryConfiguration {
 | 
			
		||||
 | 
			
		||||
		@Bean
 | 
			
		||||
		@ConditionalOnBean(Encoding.class)
 | 
			
		||||
		@ConditionalOnMissingBean(value = Span.class, parameterizedContainer = BytesEncoder.class)
 | 
			
		||||
		BytesEncoder<Span> spanBytesEncoder(Encoding encoding) {
 | 
			
		||||
			return SpanBytesEncoder.forEncoding(encoding);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -42,6 +42,15 @@ class ZipkinConfigurationsOpenTelemetryConfigurationTests {
 | 
			
		|||
	private final ApplicationContextRunner contextRunner = new ApplicationContextRunner()
 | 
			
		||||
		.withConfiguration(AutoConfigurations.of(DefaultEncodingConfiguration.class, OpenTelemetryConfiguration.class));
 | 
			
		||||
 | 
			
		||||
	@Test
 | 
			
		||||
	void backsOffWithoutEncoding() {
 | 
			
		||||
		new ApplicationContextRunner().withUserConfiguration(OpenTelemetryConfiguration.class).run((context) -> {
 | 
			
		||||
			assertThat(context).hasNotFailed();
 | 
			
		||||
			assertThat(context).doesNotHaveBean(ZipkinSpanExporter.class);
 | 
			
		||||
			assertThat(context).doesNotHaveBean(BytesEncoder.class);
 | 
			
		||||
		});
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@Test
 | 
			
		||||
	void shouldSupplyBeans() {
 | 
			
		||||
		this.contextRunner.withUserConfiguration(SenderConfiguration.class, CustomEncoderConfiguration.class)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue