Skip to content

Commit a88392e

Browse files
committed
refine tests
1 parent 2ad2e19 commit a88392e

File tree

2 files changed

+15
-119
lines changed

2 files changed

+15
-119
lines changed

sdk/logs/src/test/java/io/opentelemetry/sdk/logs/SdkLogRecordBuilderTest.java

Lines changed: 14 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@
1111
import static io.opentelemetry.api.common.AttributeKey.stringKey;
1212
import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.assertThat;
1313
import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.equalTo;
14+
import static org.mockito.ArgumentMatchers.eq;
15+
import static org.mockito.Mockito.mock;
16+
import static org.mockito.Mockito.verify;
1417
import static org.mockito.Mockito.when;
1518

1619
import io.opentelemetry.api.common.AttributeKey;
@@ -124,75 +127,23 @@ void emit_NoFields() {
124127
}
125128

126129
@Test
127-
void emit_WithMinimumSeverityConfiguration() {
128-
LoggerConfig config =
129-
LoggerConfig.builder().setMinimumSeverity(Severity.INFO.getSeverityNumber()).build();
130-
SdkLogger logger = new SdkLogger(loggerSharedState, SCOPE_INFO, config);
130+
void emit_ChecksLoggerIsEnabled() {
131+
SdkLogger logger = mock(SdkLogger.class);
131132
builder = new SdkLogRecordBuilder(loggerSharedState, SCOPE_INFO, logger);
132133

133-
builder.setBody("too-low").setSeverity(Severity.DEBUG).emit();
134-
assertThat(emittedLog.get()).isNull();
135-
136-
builder.setBody("allowed").setSeverity(Severity.INFO).emit();
137-
assertThat(emittedLog.get().toLogRecordData()).hasBody("allowed");
138-
}
139-
140-
@Test
141-
void emit_DropsUnsampledTraceWhenTraceBased() {
142-
LoggerConfig config = LoggerConfig.builder().setTraceBased(true).build();
143-
SdkLogger logger = new SdkLogger(loggerSharedState, SCOPE_INFO, config);
144-
builder = new SdkLogRecordBuilder(loggerSharedState, SCOPE_INFO, logger);
145-
146-
SpanContext unsampledSpanContext =
147-
SpanContext.create(
148-
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
149-
"bbbbbbbbbbbbbbbb",
150-
TraceFlags.getDefault(),
151-
TraceState.getDefault());
152-
builder
153-
.setBody("unsampled")
154-
.setContext(Span.wrap(unsampledSpanContext).storeInContext(Context.root()))
155-
.emit();
156-
assertThat(emittedLog.get()).isNull();
157-
158-
SpanContext sampledSpanContext =
159-
SpanContext.create(
160-
"cccccccccccccccccccccccccccccccc",
161-
"dddddddddddddddd",
162-
TraceFlags.getSampled(),
163-
TraceState.getDefault());
164-
builder
165-
.setBody("sampled")
166-
.setContext(Span.wrap(sampledSpanContext).storeInContext(Context.root()))
167-
.emit();
168-
assertThat(emittedLog.get().toLogRecordData())
169-
.hasSpanContext(sampledSpanContext)
170-
.hasBody("sampled");
171-
}
134+
Severity severity = Severity.WARN;
135+
Context context = Context.current();
172136

173-
@Test
174-
void emit_AllowsUndefinedSeverityWithMinimumSeverity() {
175-
LoggerConfig config =
176-
LoggerConfig.builder().setMinimumSeverity(Severity.WARN.getSeverityNumber()).build();
177-
SdkLogger logger = new SdkLogger(loggerSharedState, SCOPE_INFO, config);
178-
builder = new SdkLogRecordBuilder(loggerSharedState, SCOPE_INFO, logger);
137+
// Configure mock to return false (disabled)
138+
when(logger.isEnabled(severity, context)).thenReturn(false);
179139

180-
// Undefined severity should bypass the minimum severity filter
181-
builder.setBody("undefined-severity").setSeverity(Severity.UNDEFINED_SEVERITY_NUMBER).emit();
182-
assertThat(emittedLog.get().toLogRecordData())
183-
.hasBody("undefined-severity")
184-
.hasSeverity(Severity.UNDEFINED_SEVERITY_NUMBER);
185-
}
140+
builder.setSeverity(severity).setContext(context).emit();
186141

187-
@Test
188-
void emit_AllowsNoTraceContextWithTraceBased() {
189-
LoggerConfig config = LoggerConfig.builder().setTraceBased(true).build();
190-
SdkLogger logger = new SdkLogger(loggerSharedState, SCOPE_INFO, config);
191-
builder = new SdkLogRecordBuilder(loggerSharedState, SCOPE_INFO, logger);
142+
// Verify isEnabled was called with correct parameters
143+
verify(logger).isEnabled(eq(severity), eq(context));
192144

193-
// No trace context should bypass the trace-based filter
194-
builder.setBody("no-trace-context").emit();
195-
assertThat(emittedLog.get().toLogRecordData()).hasBody("no-trace-context");
145+
// Verify log was not processed (because isEnabled returned false)
146+
assertThat(emittedLog.get()).isNull();
196147
}
197148

198149
@Test

sdk/logs/src/test/java/io/opentelemetry/sdk/logs/SdkLoggerTest.java

Lines changed: 1 addition & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -141,20 +141,7 @@ void logRecordBuilder_AfterShutdown() {
141141
}
142142

143143
@Test
144-
void updateEnabled() {
145-
LogRecordProcessor logRecordProcessor = mock(LogRecordProcessor.class);
146-
SdkLoggerProvider loggerProvider =
147-
SdkLoggerProvider.builder().addLogRecordProcessor(logRecordProcessor).build();
148-
SdkLogger logger = (SdkLogger) loggerProvider.get("test");
149-
150-
logger.updateLoggerConfig(LoggerConfig.disabled());
151-
assertThat(logger.isEnabled(Severity.UNDEFINED_SEVERITY_NUMBER, Context.current())).isFalse();
152-
logger.updateLoggerConfig(LoggerConfig.enabled());
153-
assertThat(logger.isEnabled(Severity.UNDEFINED_SEVERITY_NUMBER, Context.current())).isTrue();
154-
}
155-
156-
@Test
157-
void updateLoggerConfig_UpdatesAllFields() {
144+
void updateLoggerConfig() {
158145
LogRecordProcessor logRecordProcessor = mock(LogRecordProcessor.class);
159146
SdkLoggerProvider loggerProvider =
160147
SdkLoggerProvider.builder().addLogRecordProcessor(logRecordProcessor).build();
@@ -235,46 +222,4 @@ void isEnabled_TraceBased() {
235222
Context unsampledContext = Span.wrap(unsampledSpanContext).storeInContext(Context.root());
236223
assertThat(logger.isEnabled(Severity.INFO, unsampledContext)).isFalse();
237224
}
238-
239-
@Test
240-
void isEnabled_MinimumSeverityAndTraceBased() {
241-
LogRecordProcessor logRecordProcessor = mock(LogRecordProcessor.class);
242-
SdkLoggerProvider loggerProvider =
243-
SdkLoggerProvider.builder().addLogRecordProcessor(logRecordProcessor).build();
244-
SdkLogger logger = (SdkLogger) loggerProvider.get("test");
245-
246-
LoggerConfig config =
247-
LoggerConfig.builder()
248-
.setMinimumSeverity(Severity.WARN.getSeverityNumber())
249-
.setTraceBased(true)
250-
.build();
251-
logger.updateLoggerConfig(config);
252-
253-
SpanContext sampledSpanContext =
254-
SpanContext.create(
255-
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
256-
"bbbbbbbbbbbbbbbb",
257-
TraceFlags.getSampled(),
258-
TraceState.getDefault());
259-
Context sampledContext = Span.wrap(sampledSpanContext).storeInContext(Context.root());
260-
261-
SpanContext unsampledSpanContext =
262-
SpanContext.create(
263-
"cccccccccccccccccccccccccccccccc",
264-
"dddddddddddddddd",
265-
TraceFlags.getDefault(),
266-
TraceState.getDefault());
267-
Context unsampledContext = Span.wrap(unsampledSpanContext).storeInContext(Context.root());
268-
269-
// Below minimum severity in sampled trace - should be disabled
270-
assertThat(logger.isEnabled(Severity.INFO, sampledContext)).isFalse();
271-
272-
// At or above minimum severity in sampled trace - should be enabled
273-
assertThat(logger.isEnabled(Severity.WARN, sampledContext)).isTrue();
274-
assertThat(logger.isEnabled(Severity.ERROR, sampledContext)).isTrue();
275-
276-
// At or above minimum severity in unsampled trace - should be disabled
277-
assertThat(logger.isEnabled(Severity.WARN, unsampledContext)).isFalse();
278-
assertThat(logger.isEnabled(Severity.ERROR, unsampledContext)).isFalse();
279-
}
280225
}

0 commit comments

Comments
 (0)