Skip to content

Commit 10224fa

Browse files
committed
Use tokioTest helper for should_panic test with correct panic message
1 parent bf994e5 commit 10224fa

File tree

2 files changed

+16
-17
lines changed

2 files changed

+16
-17
lines changed

aws/codegen-aws-sdk/src/test/kotlin/software/amazon/smithy/rustsdk/EndpointOverrideMetricDecoratorTest.kt

Lines changed: 14 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@
66
package software.amazon.smithy.rustsdk
77

88
import org.junit.jupiter.api.Test
9-
import software.amazon.smithy.rust.codegen.core.rustlang.CargoDependency
109
import software.amazon.smithy.rust.codegen.core.rustlang.Feature
10+
import software.amazon.smithy.rust.codegen.core.rustlang.rust
1111
import software.amazon.smithy.rust.codegen.core.rustlang.rustTemplate
1212
import software.amazon.smithy.rust.codegen.core.smithy.RuntimeType
1313
import software.amazon.smithy.rust.codegen.core.smithy.RuntimeType.Companion.preludeScope
@@ -213,18 +213,17 @@ class EndpointOverrideMetricDecoratorTest {
213213
}
214214

215215
// Add a should_panic test to verify assert_ua_contains_metric_values panics when metric is not present
216-
rustTemplate(
217-
"""
218-
##[#{tokio}::test]
219-
##[should_panic(expected = "not found")]
220-
async fn assert_panics_when_metric_not_present() {
216+
rust("##[should_panic(expected = \"metric values\")]")
217+
tokioTest("assert_panics_when_metric_not_present") {
218+
rustTemplate(
219+
"""
221220
use $moduleName::config::{Credentials, Region, SharedCredentialsProvider};
222221
use $moduleName::{Config, Client};
223222
use #{capture_request};
224223
use #{assert_ua_contains_metric_values};
225-
224+
226225
let (http_client, rcvr) = capture_request(None);
227-
226+
228227
let config = Config::builder()
229228
.credentials_provider(SharedCredentialsProvider::new(Credentials::for_tests()))
230229
.region(Region::new("us-east-1"))
@@ -235,16 +234,15 @@ class EndpointOverrideMetricDecoratorTest {
235234
let _ = client.some_operation().send().await;
236235
let request = rcvr.expect_request();
237236
let user_agent = request.headers().get("x-amz-user-agent").unwrap();
238-
237+
239238
// This should panic because 'N' is not present
240239
assert_ua_contains_metric_values(user_agent, &["N"]);
241-
}
242-
""",
243-
*preludeScope,
244-
"capture_request" to RuntimeType.captureRequest(rc),
245-
"assert_ua_contains_metric_values" to AwsRuntimeType.awsRuntime(rc).resolve("user_agent::test_util::assert_ua_contains_metric_values"),
246-
"tokio" to CargoDependency.Tokio.toType(),
247-
)
240+
""",
241+
*preludeScope,
242+
"capture_request" to RuntimeType.captureRequest(rc),
243+
"assert_ua_contains_metric_values" to AwsRuntimeType.awsRuntime(rc).resolve("user_agent::test_util::assert_ua_contains_metric_values"),
244+
)
245+
}
248246
}
249247
}
250248
}

rust-runtime/aws-smithy-observability/src/lib.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,8 @@ mod error;
2525
pub use error::{ErrorKind, GlobalTelemetryProviderError, ObservabilityError};
2626
pub mod global;
2727
pub mod meter;
28-
mod noop;
28+
#[doc(hidden)]
29+
pub mod noop;
2930
mod provider;
3031
pub use provider::{TelemetryProvider, TelemetryProviderBuilder};
3132
pub mod instruments;

0 commit comments

Comments
 (0)