Skip to content

Commit 2aa314e

Browse files
committed
fix: adapt tests to current main API (remove stale with_sampling_result usage)
1 parent 05c30aa commit 2aa314e

1 file changed

Lines changed: 49 additions & 81 deletions

File tree

opentelemetry-sdk/src/trace/span.rs

Lines changed: 49 additions & 81 deletions
Original file line numberDiff line numberDiff line change
@@ -568,7 +568,7 @@ mod tests {
568568
};
569569
use crate::trace::{SdkTracer, SpanEvents, SpanLinks, SpanProcessor};
570570
use opentelemetry::trace::{
571-
self, SamplingResult, Span as _, SpanBuilder, TraceFlags, TraceId, Tracer, TracerProvider,
571+
Span as _, SpanBuilder, SpanKind, TraceFlags, TraceId, Tracer, TracerProvider,
572572
};
573573
use std::time::Duration;
574574
use std::vec;
@@ -579,7 +579,7 @@ mod tests {
579579
let data = SpanData {
580580
parent_span_id: SpanId::from(0),
581581
parent_span_is_remote: false,
582-
span_kind: trace::SpanKind::Internal,
582+
span_kind: SpanKind::Internal,
583583
name: "opentelemetry".into(),
584584
start_time: opentelemetry::time::now(),
585585
end_time: opentelemetry::time::now(),
@@ -998,80 +998,60 @@ mod tests {
998998
assert_eq!(event_vec.len(), DEFAULT_MAX_EVENT_PER_SPAN as usize);
999999
}
10001000

1001-
fn make_test_span(tracer: &SdkTracer, sampling_decision: trace::SamplingDecision) -> Span {
1002-
tracer
1003-
.span_builder("test_span")
1004-
.with_sampling_result(SamplingResult {
1005-
decision: sampling_decision,
1006-
attributes: vec![],
1007-
trace_state: Default::default(),
1008-
})
1009-
.with_attributes(vec![KeyValue::new("k", "v")])
1010-
.with_kind(SpanKind::Client)
1011-
.with_events(vec![Event::with_name("test_event")])
1012-
.with_links(vec![Link::with_context(SpanContext::new(
1013-
TraceId::from_bytes((1234_u128).to_ne_bytes()),
1014-
SpanId::from_bytes((5678_u64).to_ne_bytes()),
1015-
Default::default(),
1016-
false,
1017-
Default::default(),
1018-
))])
1019-
.with_span_id(SpanId::from_bytes((1337_u64).to_ne_bytes()))
1020-
.start(tracer)
1001+
fn make_test_span(tracer: &SdkTracer) -> Span {
1002+
let mut span = tracer.start("test_span");
1003+
span.set_attribute(KeyValue::new("k", "v"));
1004+
span.add_event("test_event", vec![]);
1005+
span
10211006
}
10221007

10231008
#[test]
1024-
fn test_readable_span() {
1009+
fn test_readable_span_recording() {
10251010
use super::ReadableSpan;
10261011

10271012
let provider = crate::trace::SdkTracerProvider::builder()
10281013
.with_simple_exporter(NoopSpanExporter::new())
10291014
.build();
10301015
let tracer = provider.tracer("test");
1031-
{
1032-
// ReadableSpan trait methods for recording span
1033-
let span = make_test_span(&tracer, trace::SamplingDecision::RecordOnly);
1034-
1035-
assert_eq!(
1036-
span.context().span_id(),
1037-
SpanId::from_bytes((1337_u64).to_ne_bytes())
1038-
);
1039-
1040-
assert_eq!(span.name(), Some("test_span"));
1041-
assert_eq!(span.span_kind(), SpanKind::Client);
1042-
assert!(span.start_time().is_some());
1043-
assert!(span.end_time().is_some());
1044-
assert_eq!(span.attributes(), &[KeyValue::new("k", "v")]);
1045-
assert_eq!(span.dropped_attributes_count(), 0);
1046-
assert_eq!(span.events().len(), 1);
1047-
assert_eq!(span.events()[0].name, "test_event");
1048-
assert_eq!(span.dropped_events_count(), 0);
1049-
assert_eq!(span.links().len(), 1);
1050-
}
10511016

1052-
{
1053-
// ReadableSpan trait methods for non-recording span
1054-
let span = make_test_span(&tracer, trace::SamplingDecision::Drop);
1055-
1056-
assert_eq!(
1057-
span.context().span_id(),
1058-
SpanId::from_bytes((1337_u64).to_ne_bytes())
1059-
);
1060-
1061-
assert_eq!(span.name(), None);
1062-
assert_eq!(span.span_kind(), SpanKind::Internal);
1063-
assert!(span.start_time().is_none());
1064-
assert!(span.end_time().is_none());
1065-
assert_eq!(span.attributes(), &[]);
1066-
assert_eq!(span.dropped_attributes_count(), 0);
1067-
assert_eq!(span.events().len(), 0);
1068-
assert_eq!(span.dropped_events_count(), 0);
1069-
assert_eq!(span.links().len(), 0);
1070-
assert_eq!(
1071-
span.context().span_id(),
1072-
SpanId::from_bytes((1337_u64).to_ne_bytes())
1073-
);
1074-
}
1017+
// ReadableSpan trait methods for recording span
1018+
let span = make_test_span(&tracer);
1019+
1020+
assert!(span.context().span_id() != SpanId::INVALID);
1021+
assert_eq!(span.name(), Some("test_span"));
1022+
assert!(span.start_time().is_some());
1023+
assert!(span.end_time().is_some());
1024+
assert_eq!(span.attributes(), &[KeyValue::new("k", "v")]);
1025+
assert_eq!(span.dropped_attributes_count(), 0);
1026+
assert_eq!(span.events().len(), 1);
1027+
assert_eq!(span.events()[0].name, "test_event");
1028+
assert_eq!(span.dropped_events_count(), 0);
1029+
}
1030+
1031+
#[test]
1032+
fn test_readable_span_non_recording() {
1033+
use super::ReadableSpan;
1034+
use crate::trace::Sampler;
1035+
1036+
let provider = crate::trace::SdkTracerProvider::builder()
1037+
.with_sampler(Sampler::AlwaysOff)
1038+
.with_simple_exporter(NoopSpanExporter::new())
1039+
.build();
1040+
let tracer = provider.tracer("test");
1041+
1042+
// Non-recording span (sampler dropped it)
1043+
let span = make_test_span(&tracer);
1044+
1045+
assert!(span.context().span_id() != SpanId::INVALID);
1046+
assert_eq!(span.name(), None);
1047+
assert_eq!(span.span_kind(), SpanKind::Internal);
1048+
assert!(span.start_time().is_none());
1049+
assert!(span.end_time().is_none());
1050+
assert_eq!(span.attributes(), &[]);
1051+
assert_eq!(span.dropped_attributes_count(), 0);
1052+
assert_eq!(span.events().len(), 0);
1053+
assert_eq!(span.dropped_events_count(), 0);
1054+
assert_eq!(span.links().len(), 0);
10751055
}
10761056

10771057
#[test]
@@ -1103,21 +1083,15 @@ mod tests {
11031083
struct TestSpanProcessor;
11041084
impl SpanProcessor for TestSpanProcessor {
11051085
fn on_end(&self, span: &mut FinishedSpan) {
1106-
assert_eq!(
1107-
span.context().span_id(),
1108-
SpanId::from_bytes((1337_u64).to_ne_bytes())
1109-
);
1110-
1086+
assert!(span.context().span_id() != SpanId::INVALID);
11111087
assert_eq!(span.name(), Some("test_span"));
1112-
assert_eq!(span.span_kind(), SpanKind::Client);
11131088
assert!(span.start_time().is_some());
11141089
assert!(span.end_time().is_some());
11151090
assert_eq!(span.attributes(), &[KeyValue::new("k", "v")]);
11161091
assert_eq!(span.dropped_attributes_count(), 0);
11171092
assert_eq!(span.events().len(), 1);
11181093
assert_eq!(span.events()[0].name, "test_event");
11191094
assert_eq!(span.dropped_events_count(), 0);
1120-
assert_eq!(span.links().len(), 1);
11211095

11221096
let _ = span.consume();
11231097
}
@@ -1137,10 +1111,7 @@ mod tests {
11371111
.with_span_processor(TestSpanProcessor)
11381112
.with_span_processor(TestSpanProcessor)
11391113
.build();
1140-
drop(make_test_span(
1141-
&provider.tracer("test"),
1142-
trace::SamplingDecision::RecordAndSample,
1143-
));
1114+
drop(make_test_span(&provider.tracer("test")));
11441115
let res = provider.shutdown();
11451116
println!("{:?}", res);
11461117
assert!(res.is_ok());
@@ -1170,10 +1141,7 @@ mod tests {
11701141
let provider = crate::trace::SdkTracerProvider::builder()
11711142
.with_span_processor(TestSpanProcessor)
11721143
.build();
1173-
drop(make_test_span(
1174-
&provider.tracer("test"),
1175-
trace::SamplingDecision::RecordAndSample,
1176-
));
1144+
drop(make_test_span(&provider.tracer("test")));
11771145

11781146
let res = provider.shutdown();
11791147
println!("{:?}", res);

0 commit comments

Comments
 (0)