Skip to content

Commit 8667213

Browse files
add tests
1 parent 472b077 commit 8667213

File tree

3 files changed

+35
-4
lines changed

3 files changed

+35
-4
lines changed

dogstatsd/src/aggregator.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ use crate::constants;
77
use crate::datadog::{self, Metric as MetricToShip, Series};
88
use crate::errors;
99
use crate::metric::{self, Metric, MetricValue, SortedTags};
10-
use crate::metrics_origins::get_metric_origin;
10+
use crate::origins::get_origin;
1111
use std::time;
1212

1313
use datadog_protos::metrics::{Dogsketch, Sketch, SketchPayload, Metadata};
@@ -270,7 +270,7 @@ fn build_sketch(now: i64, entry: &Metric, mut base_tag_vec: SortedTags) -> Optio
270270
}
271271
sketch.set_tags(base_tag_vec.to_chars());
272272

273-
let metadata: Option<Metadata> = get_metric_origin(&name);
273+
let metadata: Option<Metadata> = get_origin(&name);
274274
if let Some(metadata) = metadata {
275275
sketch.set_metadata(metadata);
276276
}

dogstatsd/src/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,4 @@ pub mod dogstatsd;
88
pub mod errors;
99
pub mod flusher;
1010
pub mod metric;
11-
pub mod metrics_origins;
11+
pub mod origins;

dogstatsd/src/metrics_origins.rs renamed to dogstatsd/src/origins.rs

Lines changed: 32 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ impl From<OriginService> for u32 {
5353
}
5454
}
5555

56-
pub fn get_metric_origin(name: &str) -> Option<Metadata> {
56+
pub fn get_origin(name: &str) -> Option<Metadata> {
5757
let prefix = name.split('.').take(2).collect::<Vec<&str>>().join(".");
5858

5959
match prefix {
@@ -105,3 +105,34 @@ pub fn get_metric_origin(name: &str) -> Option<Metadata> {
105105
_ => None,
106106
}
107107
}
108+
109+
#[cfg(test)]
110+
mod tests {
111+
use super::*;
112+
113+
#[test]
114+
fn test_origin_product() {
115+
let origin_product: u32 = OriginProduct::Serverless.into();
116+
assert_eq!(origin_product, 1);
117+
}
118+
119+
#[test]
120+
fn test_origin_category() {
121+
let origin_category: u32 = OriginCategory::LambdaMetrics.into();
122+
assert_eq!(origin_category, 38);
123+
}
124+
125+
#[test]
126+
fn test_origin_service() {
127+
let origin_service: u32 = OriginService::Other.into();
128+
assert_eq!(origin_service, 0);
129+
}
130+
131+
#[test]
132+
fn test_get_origin() {
133+
let origin = get_origin("aws.lambda.enhanced.invocations");
134+
assert_eq!(origin.as_ref().unwrap().origin.as_ref().unwrap().origin_product, 1);
135+
assert_eq!(origin.as_ref().unwrap().origin.as_ref().unwrap().origin_category, 38);
136+
assert_eq!(origin.as_ref().unwrap().origin.as_ref().unwrap().origin_service, 0);
137+
}
138+
}

0 commit comments

Comments
 (0)