Skip to content

Commit 1b38071

Browse files
committed
Increase test coverage
1 parent dce9d8d commit 1b38071

File tree

2 files changed

+74
-1
lines changed

2 files changed

+74
-1
lines changed

opentelemetry-declarative-config/src/lib.rs

Lines changed: 66 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ use crate::{
2121
MetricsPullExporterFactory,
2222
PeriodicExporterFactory,
2323
PullExporterFactory,
24-
exporters::prometheus_pull_exporter::PrometheusMetricsPullExporterFactory,
2524
},
2625
telemetry_config::TelemetryConfig,
2726
};
@@ -262,4 +261,70 @@ mod tests {
262261
let providers = TelemetryProviders::new();
263262
assert!(providers.shutdown().is_ok());
264263
}
264+
265+
#[test]
266+
fn test_configurator_default() -> Result<(), Box<dyn std::error::Error>> {
267+
let config = Configurator::default();
268+
let telemetry_config = TelemetryConfig::default();
269+
let telemetry_providers = config.configure_telemetry(telemetry_config)?;
270+
271+
assert!(telemetry_providers.meter_provider().is_none());
272+
assert!(telemetry_providers.traces_provider().is_none());
273+
assert!(telemetry_providers.logs_provider().is_none());
274+
275+
assert!(telemetry_providers.shutdown().is_ok());
276+
Ok(())
277+
}
278+
279+
#[test]
280+
fn test_configurator_from_yaml() -> Result<(), Box<dyn std::error::Error>> {
281+
let config = Configurator::new();
282+
let yaml_str = r#"
283+
resource:
284+
service.name: test-service
285+
metrics:
286+
readers:
287+
- periodic:
288+
exporter:
289+
name: stdout
290+
logs:
291+
processors:
292+
- batch:
293+
exporter:
294+
name: otlp
295+
"#;
296+
let telemetry_providers = config.configure_telemetry_from_yaml(yaml_str.into())?;
297+
298+
assert!(telemetry_providers.meter_provider().is_some());
299+
assert!(telemetry_providers.logs_provider().is_some());
300+
assert!(telemetry_providers.traces_provider().is_none());
301+
302+
assert!(telemetry_providers.shutdown().is_ok());
303+
Ok(())
304+
}
305+
306+
#[test]
307+
fn test_telemetry_providers_default() {
308+
let providers = TelemetryProviders::default();
309+
assert!(providers.meter_provider().is_none());
310+
assert!(providers.traces_provider().is_none());
311+
assert!(providers.logs_provider().is_none());
312+
}
313+
314+
#[test]
315+
fn test_telemetry_providers_getters() {
316+
let meter_provider = SdkMeterProvider::builder().build();
317+
let logs_provider = SdkLoggerProvider::builder().build();
318+
let traces_provider = SdkTracerProvider::builder().build();
319+
320+
let providers = TelemetryProviders::new()
321+
.with_logs_provider(logs_provider)
322+
.with_meter_provider(meter_provider)
323+
.with_traces_provider(traces_provider);
324+
325+
assert!(providers.meter_provider().is_some());
326+
assert!(providers.traces_provider().is_some());
327+
assert!(providers.logs_provider().is_some());
328+
providers.shutdown().unwrap();
329+
}
265330
}

opentelemetry-declarative-config/src/metrics/exporters.rs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,4 +67,12 @@ mod tests {
6767
panic!("Expected error for unknown temporality");
6868
}
6969
}
70+
71+
#[test]
72+
fn test_deserialize_no_temporality() {
73+
let yaml_cumulative = r#"
74+
"#;
75+
let temporality_holder: MockTemporalityHolder = serde_yaml::from_str(yaml_cumulative).unwrap();
76+
assert_eq!(temporality_holder.temporality, None);
77+
}
7078
}

0 commit comments

Comments
 (0)