Client Test

Client Test

rev. 9f5fb9826a6af51ebfb3736d0a778b00ec7b08b3

Files changed:

tmp-codegen-diff/codegen-client-test/rest_xml/rust-client-codegen/src/operation/timestamp_format_headers.rs

@@ -194,194 +311,312 @@
  214    214   
        let params = crate::config::endpoint::Params::builder().build().map_err(|err| {
  215    215   
            ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  216    216   
        })?;
  217    217   
        cfg.interceptor_state()
  218    218   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
  219    219   
        ::std::result::Result::Ok(())
  220    220   
    }
  221    221   
}
  222    222   
#[allow(unreachable_code, unused_variables)]
  223    223   
#[cfg(test)]
  224         -
mod timestamp_format_headers_request_test {
         224  +
mod timestamp_format_headers_test {
         225  +
  225    226   
    /// Tests how timestamp request headers are serialized
  226    227   
    /// Test ID: TimestampFormatHeaders
  227    228   
    #[::tokio::test]
  228         -
    #[allow(unused_mut)]
         229  +
    #[::tracing_test::traced_test]
  229    230   
    async fn timestamp_format_headers_request() {
  230    231   
        let (http_client, request_receiver) = ::aws_smithy_runtime::client::http::test_util::capture_request(None);
  231    232   
        let config_builder = crate::config::Config::builder().with_test_defaults().endpoint_url("https://example.com");
  232    233   
  233    234   
        let client = crate::Client::from_conf(config_builder.http_client(http_client).build());
  234    235   
        let result = client
  235    236   
            .timestamp_format_headers()
  236    237   
            .set_member_epoch_seconds(::std::option::Option::Some(::aws_smithy_types::DateTime::from_fractional_secs(
  237    238   
                1576540098, 0_f64,
  238    239   
            )))
  239    240   
            .set_member_http_date(::std::option::Option::Some(::aws_smithy_types::DateTime::from_fractional_secs(
  240    241   
                1576540098, 0_f64,
  241    242   
            )))
  242    243   
            .set_member_date_time(::std::option::Option::Some(::aws_smithy_types::DateTime::from_fractional_secs(
  243    244   
                1576540098, 0_f64,
  244    245   
            )))
  245    246   
            .set_default_format(::std::option::Option::Some(::aws_smithy_types::DateTime::from_fractional_secs(
  246    247   
                1576540098, 0_f64,
  247    248   
            )))
  248    249   
            .set_target_epoch_seconds(::std::option::Option::Some(::aws_smithy_types::DateTime::from_fractional_secs(
  249    250   
                1576540098, 0_f64,
  250    251   
            )))
  251    252   
            .set_target_http_date(::std::option::Option::Some(::aws_smithy_types::DateTime::from_fractional_secs(
  252    253   
                1576540098, 0_f64,
  253    254   
            )))
  254    255   
            .set_target_date_time(::std::option::Option::Some(::aws_smithy_types::DateTime::from_fractional_secs(
  255    256   
                1576540098, 0_f64,
  256    257   
            )))
  257    258   
            .send()
  258    259   
            .await;
  259    260   
        let _ = dbg!(result);
  260    261   
        let http_request = request_receiver.expect_request();
  261    262   
        let expected_headers = [
  262    263   
            ("X-defaultFormat", "Mon, 16 Dec 2019 23:48:18 GMT"),
  263    264   
            ("X-memberDateTime", "2019-12-16T23:48:18Z"),
  264    265   
            ("X-memberEpochSeconds", "1576540098"),
  265    266   
            ("X-memberHttpDate", "Mon, 16 Dec 2019 23:48:18 GMT"),
  266    267   
            ("X-targetDateTime", "2019-12-16T23:48:18Z"),
  267    268   
            ("X-targetEpochSeconds", "1576540098"),
  268    269   
            ("X-targetHttpDate", "Mon, 16 Dec 2019 23:48:18 GMT"),
  269    270   
        ];
  270    271   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_headers(http_request.headers(), expected_headers));
  271    272   
        let body = http_request.body().bytes().expect("body should be strict");
  272    273   
        // No body
  273    274   
        ::pretty_assertions::assert_eq!(::std::str::from_utf8(body).unwrap(), "");
  274    275   
        let uri: ::http::Uri = http_request.uri().parse().expect("invalid URI sent");
  275    276   
        ::pretty_assertions::assert_eq!(http_request.method(), "POST", "method was incorrect");
  276    277   
        ::pretty_assertions::assert_eq!(uri.path(), "/TimestampFormatHeaders", "path was incorrect");
  277    278   
    }
  278    279   
    /// Tests how timestamp response headers are serialized
  279    280   
    /// Test ID: TimestampFormatHeaders
  280    281   
    #[::tokio::test]
  281         -
    #[allow(unused_mut)]
         282  +
    #[::tracing_test::traced_test]
  282    283   
    async fn timestamp_format_headers_response() {
  283    284   
        let expected_output = crate::operation::timestamp_format_headers::TimestampFormatHeadersOutput::builder()
  284    285   
            .set_member_epoch_seconds(::std::option::Option::Some(::aws_smithy_types::DateTime::from_fractional_secs(
  285    286   
                1576540098, 0_f64,
  286    287   
            )))
  287    288   
            .set_member_http_date(::std::option::Option::Some(::aws_smithy_types::DateTime::from_fractional_secs(
  288    289   
                1576540098, 0_f64,
  289    290   
            )))
  290    291   
            .set_member_date_time(::std::option::Option::Some(::aws_smithy_types::DateTime::from_fractional_secs(
  291    292   
                1576540098, 0_f64,

tmp-codegen-diff/codegen-client-test/rest_xml/rust-client-codegen/src/operation/xml_attributes.rs

@@ -191,191 +313,314 @@
  211    211   
        let params = crate::config::endpoint::Params::builder().build().map_err(|err| {
  212    212   
            ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  213    213   
        })?;
  214    214   
        cfg.interceptor_state()
  215    215   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
  216    216   
        ::std::result::Result::Ok(())
  217    217   
    }
  218    218   
}
  219    219   
#[allow(unreachable_code, unused_variables)]
  220    220   
#[cfg(test)]
  221         -
mod xml_attributes_request_test {
         221  +
mod xml_attributes_test {
         222  +
  222    223   
    /// Serializes XML attributes on the synthesized document
  223    224   
    /// Test ID: XmlAttributes
  224    225   
    #[::tokio::test]
  225         -
    #[allow(unused_mut)]
         226  +
    #[::tracing_test::traced_test]
  226    227   
    async fn xml_attributes_request() {
  227    228   
        let (http_client, request_receiver) = ::aws_smithy_runtime::client::http::test_util::capture_request(None);
  228    229   
        let config_builder = crate::config::Config::builder().with_test_defaults().endpoint_url("https://example.com");
  229    230   
  230    231   
        let client = crate::Client::from_conf(config_builder.http_client(http_client).build());
  231    232   
        let result = client
  232    233   
            .xml_attributes()
  233    234   
            .set_foo(::std::option::Option::Some("hi".to_owned()))
  234    235   
            .set_attr(::std::option::Option::Some("test".to_owned()))
  235    236   
            .send()
  236    237   
            .await;
  237    238   
        let _ = dbg!(result);
  238    239   
        let http_request = request_receiver.expect_request();
  239    240   
        let expected_headers = [("Content-Type", "application/xml")];
  240    241   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_headers(http_request.headers(), expected_headers));
  241    242   
        let body = http_request.body().bytes().expect("body should be strict");
  242    243   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_body(
  243    244   
            body,
  244    245   
            "<XmlAttributesRequest test=\"test\">\n    <foo>hi</foo>\n</XmlAttributesRequest>\n",
  245    246   
            ::aws_smithy_protocol_test::MediaType::from("application/xml"),
  246    247   
        ));
  247    248   
        let uri: ::http::Uri = http_request.uri().parse().expect("invalid URI sent");
  248    249   
        ::pretty_assertions::assert_eq!(http_request.method(), "PUT", "method was incorrect");
  249    250   
        ::pretty_assertions::assert_eq!(uri.path(), "/XmlAttributes", "path was incorrect");
  250    251   
    }
  251    252   
    /// Serializes XML attributes with escaped characters on the synthesized document
  252    253   
    /// Test ID: XmlAttributesWithEscaping
  253    254   
    #[::tokio::test]
  254         -
    #[allow(unused_mut)]
         255  +
    #[::tracing_test::traced_test]
  255    256   
    async fn xml_attributes_with_escaping_request() {
  256    257   
        let (http_client, request_receiver) = ::aws_smithy_runtime::client::http::test_util::capture_request(None);
  257    258   
        let config_builder = crate::config::Config::builder().with_test_defaults().endpoint_url("https://example.com");
  258    259   
  259    260   
        let client = crate::Client::from_conf(config_builder.http_client(http_client).build());
  260    261   
        let result = client
  261    262   
            .xml_attributes()
  262    263   
            .set_foo(::std::option::Option::Some("hi".to_owned()))
  263    264   
            .set_attr(::std::option::Option::Some("<test&mock>".to_owned()))
  264    265   
            .send()
  265    266   
            .await;
  266    267   
        let _ = dbg!(result);
  267    268   
        let http_request = request_receiver.expect_request();
  268    269   
        let expected_headers = [("Content-Type", "application/xml")];
  269    270   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_headers(http_request.headers(), expected_headers));
  270    271   
        let body = http_request.body().bytes().expect("body should be strict");
  271    272   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_body(
  272    273   
            body,
  273    274   
            "<XmlAttributesRequest test=\"&lt;test&amp;mock&gt;\">\n    <foo>hi</foo>\n</XmlAttributesRequest>\n",
  274    275   
            ::aws_smithy_protocol_test::MediaType::from("application/xml"),
  275    276   
        ));
  276    277   
        let uri: ::http::Uri = http_request.uri().parse().expect("invalid URI sent");
  277    278   
        ::pretty_assertions::assert_eq!(http_request.method(), "PUT", "method was incorrect");
  278    279   
        ::pretty_assertions::assert_eq!(uri.path(), "/XmlAttributes", "path was incorrect");
  279    280   
    }
  280    281   
    /// Serializes simple scalar properties
  281    282   
    /// Test ID: XmlAttributes
  282    283   
    #[::tokio::test]
  283         -
    #[allow(unused_mut)]
         284  +
    #[::tracing_test::traced_test]
  284    285   
    async fn xml_attributes_response() {
  285    286   
        let expected_output = crate::operation::xml_attributes::XmlAttributesOutput::builder()
  286    287   
            .set_foo(::std::option::Option::Some("hi".to_owned()))
  287    288   
            .set_attr(::std::option::Option::Some("test".to_owned()))
  288    289   
            .build();
  289    290   
        let mut http_response = ::aws_smithy_runtime_api::http::Response::try_from(
  290    291   
            ::http::response::Builder::new()
  291    292   
                .header("Content-Type", "application/xml")
  292    293   
                .status(200)
  293    294   
                .body(::aws_smithy_types::body::SdkBody::from(

tmp-codegen-diff/codegen-client-test/rest_xml/rust-client-codegen/src/operation/xml_attributes_on_payload.rs

@@ -199,199 +296,297 @@
  219    219   
        let params = crate::config::endpoint::Params::builder().build().map_err(|err| {
  220    220   
            ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  221    221   
        })?;
  222    222   
        cfg.interceptor_state()
  223    223   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
  224    224   
        ::std::result::Result::Ok(())
  225    225   
    }
  226    226   
}
  227    227   
#[allow(unreachable_code, unused_variables)]
  228    228   
#[cfg(test)]
  229         -
mod xml_attributes_on_payload_request_test {
         229  +
mod xml_attributes_on_payload_test {
         230  +
  230    231   
    /// Serializes XML attributes on the synthesized document
  231    232   
    /// Test ID: XmlAttributesOnPayload
  232    233   
    #[::tokio::test]
  233         -
    #[allow(unused_mut)]
         234  +
    #[::tracing_test::traced_test]
  234    235   
    async fn xml_attributes_on_payload_request() {
  235    236   
        let (http_client, request_receiver) = ::aws_smithy_runtime::client::http::test_util::capture_request(None);
  236    237   
        let config_builder = crate::config::Config::builder().with_test_defaults().endpoint_url("https://example.com");
  237    238   
  238    239   
        let client = crate::Client::from_conf(config_builder.http_client(http_client).build());
  239    240   
        let result = client
  240    241   
            .xml_attributes_on_payload()
  241    242   
            .set_payload(::std::option::Option::Some(
  242    243   
                crate::types::XmlAttributesPayloadRequest::builder()
  243    244   
                    .set_foo(::std::option::Option::Some("hi".to_owned()))
  244    245   
                    .set_attr(::std::option::Option::Some("test".to_owned()))
  245    246   
                    .build(),
  246    247   
            ))
  247    248   
            .send()
  248    249   
            .await;
  249    250   
        let _ = dbg!(result);
  250    251   
        let http_request = request_receiver.expect_request();
  251    252   
        let expected_headers = [("Content-Type", "application/xml")];
  252    253   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_headers(http_request.headers(), expected_headers));
  253    254   
        let body = http_request.body().bytes().expect("body should be strict");
  254    255   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_body(
  255    256   
            body,
  256    257   
            "<XmlAttributesPayloadRequest test=\"test\">\n    <foo>hi</foo>\n</XmlAttributesPayloadRequest>\n",
  257    258   
            ::aws_smithy_protocol_test::MediaType::from("application/xml"),
  258    259   
        ));
  259    260   
        let uri: ::http::Uri = http_request.uri().parse().expect("invalid URI sent");
  260    261   
        ::pretty_assertions::assert_eq!(http_request.method(), "PUT", "method was incorrect");
  261    262   
        ::pretty_assertions::assert_eq!(uri.path(), "/XmlAttributesOnPayload", "path was incorrect");
  262    263   
    }
  263    264   
    /// Serializes simple scalar properties
  264    265   
    /// Test ID: XmlAttributesOnPayload
  265    266   
    #[::tokio::test]
  266         -
    #[allow(unused_mut)]
         267  +
    #[::tracing_test::traced_test]
  267    268   
    async fn xml_attributes_on_payload_response() {
  268    269   
        let expected_output = crate::operation::xml_attributes_on_payload::XmlAttributesOnPayloadOutput::builder()
  269    270   
            .set_payload(::std::option::Option::Some(
  270    271   
                crate::types::XmlAttributesPayloadResponse::builder()
  271    272   
                    .set_foo(::std::option::Option::Some("hi".to_owned()))
  272    273   
                    .set_attr(::std::option::Option::Some("test".to_owned()))
  273    274   
                    .build(),
  274    275   
            ))
  275    276   
            .build();
  276    277   
        let mut http_response = ::aws_smithy_runtime_api::http::Response::try_from(

tmp-codegen-diff/codegen-client-test/rest_xml/rust-client-codegen/src/operation/xml_blobs.rs

@@ -184,184 +276,277 @@
  204    204   
        let params = crate::config::endpoint::Params::builder().build().map_err(|err| {
  205    205   
            ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  206    206   
        })?;
  207    207   
        cfg.interceptor_state()
  208    208   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
  209    209   
        ::std::result::Result::Ok(())
  210    210   
    }
  211    211   
}
  212    212   
#[allow(unreachable_code, unused_variables)]
  213    213   
#[cfg(test)]
  214         -
mod xml_blobs_request_test {
         214  +
mod xml_blobs_test {
         215  +
  215    216   
    /// Blobs are base64 encoded
  216    217   
    /// Test ID: XmlBlobs
  217    218   
    #[::tokio::test]
  218         -
    #[allow(unused_mut)]
         219  +
    #[::tracing_test::traced_test]
  219    220   
    async fn xml_blobs_request() {
  220    221   
        let (http_client, request_receiver) = ::aws_smithy_runtime::client::http::test_util::capture_request(None);
  221    222   
        let config_builder = crate::config::Config::builder().with_test_defaults().endpoint_url("https://example.com");
  222    223   
  223    224   
        let client = crate::Client::from_conf(config_builder.http_client(http_client).build());
  224    225   
        let result = client
  225    226   
            .xml_blobs()
  226    227   
            .set_data(::std::option::Option::Some(::aws_smithy_types::Blob::new("value")))
  227    228   
            .send()
  228    229   
            .await;
  229    230   
        let _ = dbg!(result);
  230    231   
        let http_request = request_receiver.expect_request();
  231    232   
        let expected_headers = [("Content-Type", "application/xml")];
  232    233   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_headers(http_request.headers(), expected_headers));
  233    234   
        let body = http_request.body().bytes().expect("body should be strict");
  234    235   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_body(
  235    236   
            body,
  236    237   
            "<XmlBlobsRequest>\n    <data>dmFsdWU=</data>\n</XmlBlobsRequest>\n",
  237    238   
            ::aws_smithy_protocol_test::MediaType::from("application/xml"),
  238    239   
        ));
  239    240   
        let uri: ::http::Uri = http_request.uri().parse().expect("invalid URI sent");
  240    241   
        ::pretty_assertions::assert_eq!(http_request.method(), "POST", "method was incorrect");
  241    242   
        ::pretty_assertions::assert_eq!(uri.path(), "/XmlBlobs", "path was incorrect");
  242    243   
    }
  243    244   
    /// Blobs are base64 encoded
  244    245   
    /// Test ID: XmlBlobs
  245    246   
    #[::tokio::test]
  246         -
    #[allow(unused_mut)]
         247  +
    #[::tracing_test::traced_test]
  247    248   
    async fn xml_blobs_response() {
  248    249   
        let expected_output = crate::operation::xml_blobs::XmlBlobsOutput::builder()
  249    250   
            .set_data(::std::option::Option::Some(::aws_smithy_types::Blob::new("value")))
  250    251   
            .build();
  251    252   
        let mut http_response = ::aws_smithy_runtime_api::http::Response::try_from(
  252    253   
            ::http::response::Builder::new()
  253    254   
                .header("Content-Type", "application/xml")
  254    255   
                .status(200)
  255    256   
                .body(::aws_smithy_types::body::SdkBody::from(
  256    257   
                    "<XmlBlobsResponse>\n    <data>dmFsdWU=</data>\n</XmlBlobsResponse>\n",

tmp-codegen-diff/codegen-client-test/rest_xml/rust-client-codegen/src/operation/xml_empty_blobs.rs

@@ -191,191 +294,295 @@
  211    211   
        let params = crate::config::endpoint::Params::builder().build().map_err(|err| {
  212    212   
            ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  213    213   
        })?;
  214    214   
        cfg.interceptor_state()
  215    215   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
  216    216   
        ::std::result::Result::Ok(())
  217    217   
    }
  218    218   
}
  219    219   
#[allow(unreachable_code, unused_variables)]
  220    220   
#[cfg(test)]
  221         -
mod xml_empty_blobs_request_test {
         221  +
mod xml_empty_blobs_test {
         222  +
  222    223   
    /// Empty blobs are deserialized as empty string
  223    224   
    /// Test ID: XmlEmptyBlobs
  224    225   
    #[::tokio::test]
  225         -
    #[allow(unused_mut)]
         226  +
    #[::tracing_test::traced_test]
  226    227   
    async fn xml_empty_blobs_response() {
  227    228   
        let expected_output = crate::operation::xml_empty_blobs::XmlEmptyBlobsOutput::builder()
  228    229   
            .set_data(::std::option::Option::Some(::aws_smithy_types::Blob::new("")))
  229    230   
            .build();
  230    231   
        let mut http_response = ::aws_smithy_runtime_api::http::Response::try_from(
  231    232   
            ::http::response::Builder::new()
  232    233   
                .header("Content-Type", "application/xml")
  233    234   
                .status(200)
  234    235   
                .body(::aws_smithy_types::body::SdkBody::from(
  235    236   
                    "<XmlEmptyBlobsResponse>\n    <data></data>\n</XmlEmptyBlobsResponse>\n",
  236    237   
                ))
  237    238   
                .unwrap(),
  238    239   
        )
  239    240   
        .unwrap();
  240    241   
        use ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugin;
  241    242   
        use ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse;
  242    243   
  243    244   
        let op = crate::operation::xml_empty_blobs::XmlEmptyBlobs::new();
  244    245   
        let config = op.config().expect("the operation has config");
  245    246   
        let de = config
  246    247   
            .load::<::aws_smithy_runtime_api::client::ser_de::SharedResponseDeserializer>()
  247    248   
            .expect("the config must have a deserializer");
  248    249   
  249    250   
        let parsed = de.deserialize_streaming(&mut http_response);
  250    251   
        let parsed = parsed.unwrap_or_else(|| {
  251    252   
            let http_response =
  252    253   
                http_response.map(|body| ::aws_smithy_types::body::SdkBody::from(::bytes::Bytes::copy_from_slice(body.bytes().unwrap())));
  253    254   
            de.deserialize_nonstreaming(&http_response)
  254    255   
        });
  255    256   
        let parsed = parsed
  256    257   
            .expect("should be successful response")
  257    258   
            .downcast::<crate::operation::xml_empty_blobs::XmlEmptyBlobsOutput>()
  258    259   
            .unwrap();
  259    260   
        ::pretty_assertions::assert_eq!(parsed.data, expected_output.data, "Unexpected value for `data`");
  260    261   
    }
  261    262   
    /// Empty self closed blobs are deserialized as empty string
  262    263   
    /// Test ID: XmlEmptySelfClosedBlobs
  263    264   
    #[::tokio::test]
  264         -
    #[allow(unused_mut)]
         265  +
    #[::tracing_test::traced_test]
  265    266   
    async fn xml_empty_self_closed_blobs_response() {
  266    267   
        let expected_output = crate::operation::xml_empty_blobs::XmlEmptyBlobsOutput::builder()
  267    268   
            .set_data(::std::option::Option::Some(::aws_smithy_types::Blob::new("")))
  268    269   
            .build();
  269    270   
        let mut http_response = ::aws_smithy_runtime_api::http::Response::try_from(
  270    271   
            ::http::response::Builder::new()
  271    272   
                .header("Content-Type", "application/xml")
  272    273   
                .status(200)
  273    274   
                .body(::aws_smithy_types::body::SdkBody::from(
  274    275   
                    "<XmlEmptyBlobsResponse>\n    <data/>\n</XmlEmptyBlobsResponse>\n",

tmp-codegen-diff/codegen-client-test/rest_xml/rust-client-codegen/src/operation/xml_empty_lists.rs

@@ -191,191 +284,285 @@
  211    211   
        let params = crate::config::endpoint::Params::builder().build().map_err(|err| {
  212    212   
            ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  213    213   
        })?;
  214    214   
        cfg.interceptor_state()
  215    215   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
  216    216   
        ::std::result::Result::Ok(())
  217    217   
    }
  218    218   
}
  219    219   
#[allow(unreachable_code, unused_variables)]
  220    220   
#[cfg(test)]
  221         -
mod xml_empty_lists_request_test {
         221  +
mod xml_empty_lists_test {
         222  +
  222    223   
    /// Serializes Empty XML lists
  223    224   
    /// Test ID: XmlEmptyLists
  224    225   
    #[::tokio::test]
  225         -
    #[allow(unused_mut)]
         226  +
    #[::tracing_test::traced_test]
  226    227   
    async fn xml_empty_lists_request() {
  227    228   
        let (http_client, request_receiver) = ::aws_smithy_runtime::client::http::test_util::capture_request(None);
  228    229   
        let config_builder = crate::config::Config::builder().with_test_defaults().endpoint_url("https://example.com");
  229    230   
  230    231   
        let client = crate::Client::from_conf(config_builder.http_client(http_client).build());
  231    232   
        let result = client
  232    233   
            .xml_empty_lists()
  233    234   
            .set_string_list(::std::option::Option::Some(vec![]))
  234    235   
            .set_string_set(::std::option::Option::Some(vec![]))
  235    236   
            .send()
  236    237   
            .await;
  237    238   
        let _ = dbg!(result);
  238    239   
        let http_request = request_receiver.expect_request();
  239    240   
        let expected_headers = [("Content-Type", "application/xml")];
  240    241   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_headers(http_request.headers(), expected_headers));
  241    242   
        let body = http_request.body().bytes().expect("body should be strict");
  242    243   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_body(
  243    244   
            body,
  244    245   
            "<XmlEmptyListsRequest>\n        <stringList></stringList>\n        <stringSet></stringSet>\n</XmlEmptyListsRequest>\n",
  245    246   
            ::aws_smithy_protocol_test::MediaType::from("application/xml"),
  246    247   
        ));
  247    248   
        let uri: ::http::Uri = http_request.uri().parse().expect("invalid URI sent");
  248    249   
        ::pretty_assertions::assert_eq!(http_request.method(), "PUT", "method was incorrect");
  249    250   
        ::pretty_assertions::assert_eq!(uri.path(), "/XmlEmptyLists", "path was incorrect");
  250    251   
    }
  251    252   
    /// Deserializes Empty XML lists
  252    253   
    /// Test ID: XmlEmptyLists
  253    254   
    #[::tokio::test]
  254         -
    #[allow(unused_mut)]
         255  +
    #[::tracing_test::traced_test]
  255    256   
    async fn xml_empty_lists_response() {
  256    257   
        let expected_output = crate::operation::xml_empty_lists::XmlEmptyListsOutput::builder()
  257    258   
            .set_string_list(::std::option::Option::Some(vec![]))
  258    259   
            .set_string_set(::std::option::Option::Some(vec![]))
  259    260   
            .build();
  260    261   
        let mut http_response = ::aws_smithy_runtime_api::http::Response::try_from(
  261    262   
            ::http::response::Builder::new()
  262    263   
                .header("Content-Type", "application/xml")
  263    264   
                .status(200)
  264    265   
                .body(::aws_smithy_types::body::SdkBody::from(

tmp-codegen-diff/codegen-client-test/rest_xml/rust-client-codegen/src/operation/xml_empty_maps.rs

@@ -191,191 +322,323 @@
  211    211   
        let params = crate::config::endpoint::Params::builder().build().map_err(|err| {
  212    212   
            ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  213    213   
        })?;
  214    214   
        cfg.interceptor_state()
  215    215   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
  216    216   
        ::std::result::Result::Ok(())
  217    217   
    }
  218    218   
}
  219    219   
#[allow(unreachable_code, unused_variables)]
  220    220   
#[cfg(test)]
  221         -
mod xml_empty_maps_request_test {
         221  +
mod xml_empty_maps_test {
         222  +
  222    223   
    /// Serializes Empty XML maps
  223    224   
    /// Test ID: XmlEmptyMaps
  224    225   
    #[::tokio::test]
  225         -
    #[allow(unused_mut)]
         226  +
    #[::tracing_test::traced_test]
  226    227   
    async fn xml_empty_maps_request() {
  227    228   
        let (http_client, request_receiver) = ::aws_smithy_runtime::client::http::test_util::capture_request(None);
  228    229   
        let config_builder = crate::config::Config::builder().with_test_defaults().endpoint_url("https://example.com");
  229    230   
  230    231   
        let client = crate::Client::from_conf(config_builder.http_client(http_client).build());
  231    232   
        let result = client
  232    233   
            .xml_empty_maps()
  233    234   
            .set_my_map(::std::option::Option::Some(::std::collections::HashMap::new()))
  234    235   
            .send()
  235    236   
            .await;
  236    237   
        let _ = dbg!(result);
  237    238   
        let http_request = request_receiver.expect_request();
  238    239   
        let expected_headers = [("Content-Type", "application/xml")];
  239    240   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_headers(http_request.headers(), expected_headers));
  240    241   
        let body = http_request.body().bytes().expect("body should be strict");
  241    242   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_body(
  242    243   
            body,
  243    244   
            "<XmlEmptyMapsRequest>\n    <myMap></myMap>\n</XmlEmptyMapsRequest>\n",
  244    245   
            ::aws_smithy_protocol_test::MediaType::from("application/xml"),
  245    246   
        ));
  246    247   
        let uri: ::http::Uri = http_request.uri().parse().expect("invalid URI sent");
  247    248   
        ::pretty_assertions::assert_eq!(http_request.method(), "POST", "method was incorrect");
  248    249   
        ::pretty_assertions::assert_eq!(uri.path(), "/XmlEmptyMaps", "path was incorrect");
  249    250   
    }
  250    251   
    /// Deserializes Empty XML maps
  251    252   
    /// Test ID: XmlEmptyMaps
  252    253   
    #[::tokio::test]
  253         -
    #[allow(unused_mut)]
         254  +
    #[::tracing_test::traced_test]
  254    255   
    async fn xml_empty_maps_response() {
  255    256   
        let expected_output = crate::operation::xml_empty_maps::XmlEmptyMapsOutput::builder()
  256    257   
            .set_my_map(::std::option::Option::Some(::std::collections::HashMap::new()))
  257    258   
            .build();
  258    259   
        let mut http_response = ::aws_smithy_runtime_api::http::Response::try_from(
  259    260   
            ::http::response::Builder::new()
  260    261   
                .header("Content-Type", "application/xml")
  261    262   
                .status(200)
  262    263   
                .body(::aws_smithy_types::body::SdkBody::from(
  263    264   
                    "<XmlEmptyMapsResponse>\n    <myMap></myMap>\n</XmlEmptyMapsResponse>\n",
  264    265   
                ))
  265    266   
                .unwrap(),
  266    267   
        )
  267    268   
        .unwrap();
  268    269   
        use ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugin;
  269    270   
        use ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse;
  270    271   
  271    272   
        let op = crate::operation::xml_empty_maps::XmlEmptyMaps::new();
  272    273   
        let config = op.config().expect("the operation has config");
  273    274   
        let de = config
  274    275   
            .load::<::aws_smithy_runtime_api::client::ser_de::SharedResponseDeserializer>()
  275    276   
            .expect("the config must have a deserializer");
  276    277   
  277    278   
        let parsed = de.deserialize_streaming(&mut http_response);
  278    279   
        let parsed = parsed.unwrap_or_else(|| {
  279    280   
            let http_response =
  280    281   
                http_response.map(|body| ::aws_smithy_types::body::SdkBody::from(::bytes::Bytes::copy_from_slice(body.bytes().unwrap())));
  281    282   
            de.deserialize_nonstreaming(&http_response)
  282    283   
        });
  283    284   
        let parsed = parsed
  284    285   
            .expect("should be successful response")
  285    286   
            .downcast::<crate::operation::xml_empty_maps::XmlEmptyMapsOutput>()
  286    287   
            .unwrap();
  287    288   
        ::pretty_assertions::assert_eq!(parsed.my_map, expected_output.my_map, "Unexpected value for `my_map`");
  288    289   
    }
  289    290   
    /// Deserializes Empty Self-closed XML maps
  290    291   
    /// Test ID: XmlEmptySelfClosedMaps
  291    292   
    #[::tokio::test]
  292         -
    #[allow(unused_mut)]
         293  +
    #[::tracing_test::traced_test]
  293    294   
    async fn xml_empty_self_closed_maps_response() {
  294    295   
        let expected_output = crate::operation::xml_empty_maps::XmlEmptyMapsOutput::builder()
  295    296   
            .set_my_map(::std::option::Option::Some(::std::collections::HashMap::new()))
  296    297   
            .build();
  297    298   
        let mut http_response = ::aws_smithy_runtime_api::http::Response::try_from(
  298    299   
            ::http::response::Builder::new()
  299    300   
                .header("Content-Type", "application/xml")
  300    301   
                .status(200)
  301    302   
                .body(::aws_smithy_types::body::SdkBody::from(
  302    303   
                    "<XmlEmptyMapsResponse>\n    <myMap/>\n</XmlEmptyMapsResponse>\n",

tmp-codegen-diff/codegen-client-test/rest_xml/rust-client-codegen/src/operation/xml_empty_strings.rs

@@ -191,191 +322,323 @@
  211    211   
        let params = crate::config::endpoint::Params::builder().build().map_err(|err| {
  212    212   
            ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  213    213   
        })?;
  214    214   
        cfg.interceptor_state()
  215    215   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
  216    216   
        ::std::result::Result::Ok(())
  217    217   
    }
  218    218   
}
  219    219   
#[allow(unreachable_code, unused_variables)]
  220    220   
#[cfg(test)]
  221         -
mod xml_empty_strings_request_test {
         221  +
mod xml_empty_strings_test {
         222  +
  222    223   
    /// Serializes xml empty strings
  223    224   
    /// Test ID: XmlEmptyStrings
  224    225   
    #[::tokio::test]
  225         -
    #[allow(unused_mut)]
         226  +
    #[::tracing_test::traced_test]
  226    227   
    async fn xml_empty_strings_request() {
  227    228   
        let (http_client, request_receiver) = ::aws_smithy_runtime::client::http::test_util::capture_request(None);
  228    229   
        let config_builder = crate::config::Config::builder().with_test_defaults().endpoint_url("https://example.com");
  229    230   
  230    231   
        let client = crate::Client::from_conf(config_builder.http_client(http_client).build());
  231    232   
        let result = client
  232    233   
            .xml_empty_strings()
  233    234   
            .set_empty_string(::std::option::Option::Some("".to_owned()))
  234    235   
            .send()
  235    236   
            .await;
  236    237   
        let _ = dbg!(result);
  237    238   
        let http_request = request_receiver.expect_request();
  238    239   
        let expected_headers = [("Content-Type", "application/xml")];
  239    240   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_headers(http_request.headers(), expected_headers));
  240    241   
        let body = http_request.body().bytes().expect("body should be strict");
  241    242   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_body(
  242    243   
            body,
  243    244   
            "<XmlEmptyStringsRequest>\n    <emptyString></emptyString>\n</XmlEmptyStringsRequest>\n",
  244    245   
            ::aws_smithy_protocol_test::MediaType::from("application/xml"),
  245    246   
        ));
  246    247   
        let uri: ::http::Uri = http_request.uri().parse().expect("invalid URI sent");
  247    248   
        ::pretty_assertions::assert_eq!(http_request.method(), "PUT", "method was incorrect");
  248    249   
        ::pretty_assertions::assert_eq!(uri.path(), "/XmlEmptyStrings", "path was incorrect");
  249    250   
    }
  250    251   
    /// Deserializes xml empty strings
  251    252   
    /// Test ID: XmlEmptyStrings
  252    253   
    #[::tokio::test]
  253         -
    #[allow(unused_mut)]
         254  +
    #[::tracing_test::traced_test]
  254    255   
    async fn xml_empty_strings_response() {
  255    256   
        let expected_output = crate::operation::xml_empty_strings::XmlEmptyStringsOutput::builder()
  256    257   
            .set_empty_string(::std::option::Option::Some("".to_owned()))
  257    258   
            .build();
  258    259   
        let mut http_response = ::aws_smithy_runtime_api::http::Response::try_from(
  259    260   
            ::http::response::Builder::new()
  260    261   
                .header("Content-Type", "application/xml")
  261    262   
                .status(200)
  262    263   
                .body(::aws_smithy_types::body::SdkBody::from(
  263    264   
                    "<XmlEmptyStringsResponse>\n    <emptyString></emptyString>\n</XmlEmptyStringsResponse>\n",
  264    265   
                ))
  265    266   
                .unwrap(),
  266    267   
        )
  267    268   
        .unwrap();
  268    269   
        use ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugin;
  269    270   
        use ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse;
  270    271   
  271    272   
        let op = crate::operation::xml_empty_strings::XmlEmptyStrings::new();
  272    273   
        let config = op.config().expect("the operation has config");
  273    274   
        let de = config
  274    275   
            .load::<::aws_smithy_runtime_api::client::ser_de::SharedResponseDeserializer>()
  275    276   
            .expect("the config must have a deserializer");
  276    277   
  277    278   
        let parsed = de.deserialize_streaming(&mut http_response);
  278    279   
        let parsed = parsed.unwrap_or_else(|| {
  279    280   
            let http_response =
  280    281   
                http_response.map(|body| ::aws_smithy_types::body::SdkBody::from(::bytes::Bytes::copy_from_slice(body.bytes().unwrap())));
  281    282   
            de.deserialize_nonstreaming(&http_response)
  282    283   
        });
  283    284   
        let parsed = parsed
  284    285   
            .expect("should be successful response")
  285    286   
            .downcast::<crate::operation::xml_empty_strings::XmlEmptyStringsOutput>()
  286    287   
            .unwrap();
  287    288   
        ::pretty_assertions::assert_eq!(parsed.empty_string, expected_output.empty_string, "Unexpected value for `empty_string`");
  288    289   
    }
  289    290   
    /// Empty self closed string are deserialized as empty string
  290    291   
    /// Test ID: XmlEmptySelfClosedStrings
  291    292   
    #[::tokio::test]
  292         -
    #[allow(unused_mut)]
         293  +
    #[::tracing_test::traced_test]
  293    294   
    async fn xml_empty_self_closed_strings_response() {
  294    295   
        let expected_output = crate::operation::xml_empty_strings::XmlEmptyStringsOutput::builder()
  295    296   
            .set_empty_string(::std::option::Option::Some("".to_owned()))
  296    297   
            .build();
  297    298   
        let mut http_response = ::aws_smithy_runtime_api::http::Response::try_from(
  298    299   
            ::http::response::Builder::new()
  299    300   
                .header("Content-Type", "application/xml")
  300    301   
                .status(200)
  301    302   
                .body(::aws_smithy_types::body::SdkBody::from(
  302    303   
                    "<XmlEmptyStringsResponse>\n    <emptyString/>\n</XmlEmptyStringsResponse>\n",

tmp-codegen-diff/codegen-client-test/rest_xml/rust-client-codegen/src/operation/xml_enums.rs

@@ -184,184 +302,303 @@
  204    204   
        let params = crate::config::endpoint::Params::builder().build().map_err(|err| {
  205    205   
            ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  206    206   
        })?;
  207    207   
        cfg.interceptor_state()
  208    208   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
  209    209   
        ::std::result::Result::Ok(())
  210    210   
    }
  211    211   
}
  212    212   
#[allow(unreachable_code, unused_variables)]
  213    213   
#[cfg(test)]
  214         -
mod xml_enums_request_test {
         214  +
mod xml_enums_test {
         215  +
  215    216   
    /// Serializes simple scalar properties
  216    217   
    /// Test ID: XmlEnums
  217    218   
    #[::tokio::test]
  218         -
    #[allow(unused_mut)]
         219  +
    #[::tracing_test::traced_test]
  219    220   
    async fn xml_enums_request() {
  220    221   
        let (http_client, request_receiver) = ::aws_smithy_runtime::client::http::test_util::capture_request(None);
  221    222   
        let config_builder = crate::config::Config::builder().with_test_defaults().endpoint_url("https://example.com");
  222    223   
  223    224   
        let client = crate::Client::from_conf(config_builder.http_client(http_client).build());
  224    225   
        let result = client
  225    226   
            .xml_enums()
  226    227   
            .set_foo_enum1(::std::option::Option::Some(
  227    228   
                "Foo".parse::<crate::types::FooEnum>().expect("static value validated to member"),
  228    229   
            ))
  229    230   
            .set_foo_enum2(::std::option::Option::Some(
  230    231   
                "0".parse::<crate::types::FooEnum>().expect("static value validated to member"),
  231    232   
            ))
  232    233   
            .set_foo_enum3(::std::option::Option::Some(
  233    234   
                "1".parse::<crate::types::FooEnum>().expect("static value validated to member"),
  234    235   
            ))
  235    236   
            .set_foo_enum_list(::std::option::Option::Some(vec![
  236    237   
                "Foo".parse::<crate::types::FooEnum>().expect("static value validated to member"),
  237    238   
                "0".parse::<crate::types::FooEnum>().expect("static value validated to member"),
  238    239   
            ]))
  239    240   
            .set_foo_enum_set(::std::option::Option::Some(vec![
  240    241   
                "Foo".parse::<crate::types::FooEnum>().expect("static value validated to member"),
  241    242   
                "0".parse::<crate::types::FooEnum>().expect("static value validated to member"),
  242    243   
            ]))
  243    244   
            .set_foo_enum_map(::std::option::Option::Some({
  244    245   
                let mut ret = ::std::collections::HashMap::new();
  245    246   
                ret.insert(
  246    247   
                    "hi".to_owned(),
  247    248   
                    "Foo".parse::<crate::types::FooEnum>().expect("static value validated to member"),
  248    249   
                );
  249    250   
                ret.insert(
  250    251   
                    "zero".to_owned(),
  251    252   
                    "0".parse::<crate::types::FooEnum>().expect("static value validated to member"),
  252    253   
                );
  253    254   
                ret
  254    255   
            }))
  255    256   
            .send()
  256    257   
            .await;
  257    258   
        let _ = dbg!(result);
  258    259   
        let http_request = request_receiver.expect_request();
  259    260   
        let expected_headers = [("Content-Type", "application/xml")];
  260    261   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_headers(http_request.headers(), expected_headers));
  261    262   
        let body = http_request.body().bytes().expect("body should be strict");
  262    263   
        ::aws_smithy_protocol_test::assert_ok(
  263    264   
        ::aws_smithy_protocol_test::validate_body(body, "<XmlEnumsRequest>\n    <fooEnum1>Foo</fooEnum1>\n    <fooEnum2>0</fooEnum2>\n    <fooEnum3>1</fooEnum3>\n    <fooEnumList>\n        <member>Foo</member>\n        <member>0</member>\n    </fooEnumList>\n    <fooEnumSet>\n        <member>Foo</member>\n        <member>0</member>\n    </fooEnumSet>\n    <fooEnumMap>\n        <entry>\n            <key>hi</key>\n            <value>Foo</value>\n        </entry>\n        <entry>\n            <key>zero</key>\n            <value>0</value>\n        </entry>\n    </fooEnumMap>\n</XmlEnumsRequest>\n", ::aws_smithy_protocol_test::MediaType::from("application/xml"))
  264    265   
        );
  265    266   
        let uri: ::http::Uri = http_request.uri().parse().expect("invalid URI sent");
  266    267   
        ::pretty_assertions::assert_eq!(http_request.method(), "PUT", "method was incorrect");
  267    268   
        ::pretty_assertions::assert_eq!(uri.path(), "/XmlEnums", "path was incorrect");
  268    269   
    }
  269    270   
    /// Serializes simple scalar properties
  270    271   
    /// Test ID: XmlEnums
  271    272   
    #[::tokio::test]
  272         -
    #[allow(unused_mut)]
         273  +
    #[::tracing_test::traced_test]
  273    274   
    async fn xml_enums_response() {
  274    275   
        let expected_output = crate::operation::xml_enums::XmlEnumsOutput::builder()
  275    276   
            .set_foo_enum1(::std::option::Option::Some(
  276    277   
                "Foo".parse::<crate::types::FooEnum>().expect("static value validated to member"),
  277    278   
            ))
  278    279   
            .set_foo_enum2(::std::option::Option::Some(
  279    280   
                "0".parse::<crate::types::FooEnum>().expect("static value validated to member"),
  280    281   
            ))
  281    282   
            .set_foo_enum3(::std::option::Option::Some(
  282    283   
                "1".parse::<crate::types::FooEnum>().expect("static value validated to member"),

tmp-codegen-diff/codegen-client-test/rest_xml/rust-client-codegen/src/operation/xml_int_enums.rs

@@ -190,190 +290,291 @@
  210    210   
        let params = crate::config::endpoint::Params::builder().build().map_err(|err| {
  211    211   
            ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  212    212   
        })?;
  213    213   
        cfg.interceptor_state()
  214    214   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
  215    215   
        ::std::result::Result::Ok(())
  216    216   
    }
  217    217   
}
  218    218   
#[allow(unreachable_code, unused_variables)]
  219    219   
#[cfg(test)]
  220         -
mod xml_int_enums_request_test {
         220  +
mod xml_int_enums_test {
         221  +
  221    222   
    /// Serializes simple scalar properties
  222    223   
    /// Test ID: XmlIntEnums
  223    224   
    #[::tokio::test]
  224         -
    #[allow(unused_mut)]
         225  +
    #[::tracing_test::traced_test]
  225    226   
    async fn xml_int_enums_request() {
  226    227   
        let (http_client, request_receiver) = ::aws_smithy_runtime::client::http::test_util::capture_request(None);
  227    228   
        let config_builder = crate::config::Config::builder().with_test_defaults().endpoint_url("https://example.com");
  228    229   
  229    230   
        let client = crate::Client::from_conf(config_builder.http_client(http_client).build());
  230    231   
        let result = client
  231    232   
            .xml_int_enums()
  232    233   
            .set_int_enum1(::std::option::Option::Some(1))
  233    234   
            .set_int_enum2(::std::option::Option::Some(2))
  234    235   
            .set_int_enum3(::std::option::Option::Some(3))
  235    236   
            .set_int_enum_list(::std::option::Option::Some(vec![1, 2]))
  236    237   
            .set_int_enum_set(::std::option::Option::Some(vec![1, 2]))
  237    238   
            .set_int_enum_map(::std::option::Option::Some({
  238    239   
                let mut ret = ::std::collections::HashMap::new();
  239    240   
                ret.insert("a".to_owned(), 1);
  240    241   
                ret.insert("b".to_owned(), 2);
  241    242   
                ret
  242    243   
            }))
  243    244   
            .send()
  244    245   
            .await;
  245    246   
        let _ = dbg!(result);
  246    247   
        let http_request = request_receiver.expect_request();
  247    248   
        let expected_headers = [("Content-Type", "application/xml")];
  248    249   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_headers(http_request.headers(), expected_headers));
  249    250   
        let body = http_request.body().bytes().expect("body should be strict");
  250    251   
        ::aws_smithy_protocol_test::assert_ok(
  251    252   
        ::aws_smithy_protocol_test::validate_body(body, "<XmlIntEnumsRequest>\n    <intEnum1>1</intEnum1>\n    <intEnum2>2</intEnum2>\n    <intEnum3>3</intEnum3>\n    <intEnumList>\n        <member>1</member>\n        <member>2</member>\n    </intEnumList>\n    <intEnumSet>\n        <member>1</member>\n        <member>2</member>\n    </intEnumSet>\n    <intEnumMap>\n        <entry>\n            <key>a</key>\n            <value>1</value>\n        </entry>\n        <entry>\n            <key>b</key>\n            <value>2</value>\n        </entry>\n    </intEnumMap>\n</XmlIntEnumsRequest>\n", ::aws_smithy_protocol_test::MediaType::from("application/xml"))
  252    253   
        );
  253    254   
        let uri: ::http::Uri = http_request.uri().parse().expect("invalid URI sent");
  254    255   
        ::pretty_assertions::assert_eq!(http_request.method(), "PUT", "method was incorrect");
  255    256   
        ::pretty_assertions::assert_eq!(uri.path(), "/XmlIntEnums", "path was incorrect");
  256    257   
    }
  257    258   
    /// Serializes simple scalar properties
  258    259   
    /// Test ID: XmlIntEnums
  259    260   
    #[::tokio::test]
  260         -
    #[allow(unused_mut)]
         261  +
    #[::tracing_test::traced_test]
  261    262   
    async fn xml_int_enums_response() {
  262    263   
        let expected_output = crate::operation::xml_int_enums::XmlIntEnumsOutput::builder()
  263    264   
            .set_int_enum1(::std::option::Option::Some(1))
  264    265   
            .set_int_enum2(::std::option::Option::Some(2))
  265    266   
            .set_int_enum3(::std::option::Option::Some(3))
  266    267   
            .set_int_enum_list(::std::option::Option::Some(vec![1, 2]))
  267    268   
            .set_int_enum_set(::std::option::Option::Some(vec![1, 2]))
  268    269   
            .set_int_enum_map(::std::option::Option::Some({
  269    270   
                let mut ret = ::std::collections::HashMap::new();
  270    271   
                ret.insert("a".to_owned(), 1);

tmp-codegen-diff/codegen-client-test/rest_xml/rust-client-codegen/src/operation/xml_lists.rs

@@ -184,184 +248,249 @@
  204    204   
        let params = crate::config::endpoint::Params::builder().build().map_err(|err| {
  205    205   
            ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  206    206   
        })?;
  207    207   
        cfg.interceptor_state()
  208    208   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
  209    209   
        ::std::result::Result::Ok(())
  210    210   
    }
  211    211   
}
  212    212   
#[allow(unreachable_code, unused_variables)]
  213    213   
#[cfg(test)]
  214         -
mod xml_lists_request_test {
         214  +
mod xml_lists_test {
         215  +
  215    216   
    /// Tests for XML list serialization
  216    217   
    /// Test ID: XmlLists
  217    218   
    #[::tokio::test]
  218         -
    #[allow(unused_mut)]
         219  +
    #[::tracing_test::traced_test]
  219    220   
    async fn xml_lists_request() {
  220    221   
        let (http_client, request_receiver) = ::aws_smithy_runtime::client::http::test_util::capture_request(None);
  221    222   
        let config_builder = crate::config::Config::builder().with_test_defaults().endpoint_url("https://example.com");
  222    223   
  223    224   
        let client = crate::Client::from_conf(config_builder.http_client(http_client).build());
  224    225   
        let result = client
  225    226   
            .xml_lists()
  226    227   
            .set_string_list(::std::option::Option::Some(vec!["foo".to_owned(), "bar".to_owned()]))
  227    228   
            .set_string_set(::std::option::Option::Some(vec!["foo".to_owned(), "bar".to_owned()]))
  228    229   
            .set_integer_list(::std::option::Option::Some(vec![1, 2]))
@@ -253,254 +313,314 @@
  273    274   
        ::aws_smithy_protocol_test::assert_ok(
  274    275   
        ::aws_smithy_protocol_test::validate_body(body, "<XmlListsRequest>\n    <stringList>\n        <member>foo</member>\n        <member>bar</member>\n    </stringList>\n    <stringSet>\n        <member>foo</member>\n        <member>bar</member>\n    </stringSet>\n    <integerList>\n        <member>1</member>\n        <member>2</member>\n    </integerList>\n    <booleanList>\n        <member>true</member>\n        <member>false</member>\n    </booleanList>\n    <timestampList>\n        <member>2014-04-29T18:30:38Z</member>\n        <member>2014-04-29T18:30:38Z</member>\n    </timestampList>\n    <enumList>\n        <member>Foo</member>\n        <member>0</member>\n    </enumList>\n    <intEnumList>\n        <member>1</member>\n        <member>2</member>\n    </intEnumList>\n    <nestedStringList>\n        <member>\n            <member>foo</member>\n            <member>bar</member>\n        </member>\n        <member>\n            <member>baz</member>\n            <member>qux</member>\n        </member>\n    </nestedStringList>\n    <renamed>\n        <item>foo</item>\n        <item>bar</item>\n    </renamed>\n    <flattenedList>hi</flattenedList>\n    <flattenedList>bye</flattenedList>\n    <customName>yep</customName>\n    <customName>nope</customName>\n    <myStructureList>\n        <item>\n            <value>1</value>\n            <other>2</other>\n        </item>\n        <item>\n            <value>3</value>\n            <other>4</other>\n        </item>\n    </myStructureList>\n    <flattenedStructureList>\n        <value>5</value>\n        <other>6</other>\n    </flattenedStructureList>\n    <flattenedStructureList>\n        <value>7</value>\n        <other>8</other>\n    </flattenedStructureList>\n</XmlListsRequest>\n", ::aws_smithy_protocol_test::MediaType::from("application/xml"))
  275    276   
        );
  276    277   
        let uri: ::http::Uri = http_request.uri().parse().expect("invalid URI sent");
  277    278   
        ::pretty_assertions::assert_eq!(http_request.method(), "PUT", "method was incorrect");
  278    279   
        ::pretty_assertions::assert_eq!(uri.path(), "/XmlLists", "path was incorrect");
  279    280   
    }
  280    281   
    /// Tests for XML list serialization
  281    282   
    /// Test ID: XmlLists
  282    283   
    #[::tokio::test]
  283         -
    #[allow(unused_mut)]
         284  +
    #[::tracing_test::traced_test]
  284    285   
    async fn xml_lists_response() {
  285    286   
        let expected_output = crate::operation::xml_lists::XmlListsOutput::builder()
  286    287   
            .set_string_list(::std::option::Option::Some(vec!["foo".to_owned(), "bar".to_owned()]))
  287    288   
            .set_string_set(::std::option::Option::Some(vec!["foo".to_owned(), "bar".to_owned()]))
  288    289   
            .set_integer_list(::std::option::Option::Some(vec![1, 2]))
  289    290   
            .set_boolean_list(::std::option::Option::Some(vec![true, false]))
  290    291   
            .set_timestamp_list(::std::option::Option::Some(vec![
  291    292   
                ::aws_smithy_types::DateTime::from_fractional_secs(1398796238, 0_f64),
  292    293   
                ::aws_smithy_types::DateTime::from_fractional_secs(1398796238, 0_f64),
  293    294   
            ]))

tmp-codegen-diff/codegen-client-test/rest_xml/rust-client-codegen/src/operation/xml_map_with_xml_namespace.rs

@@ -199,199 +294,295 @@
  219    219   
        let params = crate::config::endpoint::Params::builder().build().map_err(|err| {
  220    220   
            ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  221    221   
        })?;
  222    222   
        cfg.interceptor_state()
  223    223   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
  224    224   
        ::std::result::Result::Ok(())
  225    225   
    }
  226    226   
}
  227    227   
#[allow(unreachable_code, unused_variables)]
  228    228   
#[cfg(test)]
  229         -
mod xml_map_with_xml_namespace_request_test {
         229  +
mod xml_map_with_xml_namespace_test {
         230  +
  230    231   
    /// Serializes XML maps in requests that have xmlNamespace and xmlName on members
  231    232   
    /// Test ID: RestXmlXmlMapWithXmlNamespace
  232    233   
    #[::tokio::test]
  233         -
    #[allow(unused_mut)]
         234  +
    #[::tracing_test::traced_test]
  234    235   
    async fn rest_xml_xml_map_with_xml_namespace_request() {
  235    236   
        let (http_client, request_receiver) = ::aws_smithy_runtime::client::http::test_util::capture_request(None);
  236    237   
        let config_builder = crate::config::Config::builder().with_test_defaults().endpoint_url("https://example.com");
  237    238   
  238    239   
        let client = crate::Client::from_conf(config_builder.http_client(http_client).build());
  239    240   
        let result = client
  240    241   
            .xml_map_with_xml_namespace()
  241    242   
            .set_my_map(::std::option::Option::Some({
  242    243   
                let mut ret = ::std::collections::HashMap::new();
  243    244   
                ret.insert("a".to_owned(), "A".to_owned());
  244    245   
                ret.insert("b".to_owned(), "B".to_owned());
  245    246   
                ret
  246    247   
            }))
  247    248   
            .send()
  248    249   
            .await;
  249    250   
        let _ = dbg!(result);
  250    251   
        let http_request = request_receiver.expect_request();
  251    252   
        let expected_headers = [("Content-Type", "application/xml")];
  252    253   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_headers(http_request.headers(), expected_headers));
  253    254   
        let body = http_request.body().bytes().expect("body should be strict");
  254    255   
        ::aws_smithy_protocol_test::assert_ok(
  255    256   
        ::aws_smithy_protocol_test::validate_body(body, "<XmlMapWithXmlNamespaceRequest>\n    <KVP xmlns=\"https://the-member.example.com\">\n        <entry>\n            <K xmlns=\"https://the-key.example.com\">a</K>\n            <V xmlns=\"https://the-value.example.com\">A</V>\n        </entry>\n        <entry>\n            <K xmlns=\"https://the-key.example.com\">b</K>\n            <V xmlns=\"https://the-value.example.com\">B</V>\n        </entry>\n    </KVP>\n</XmlMapWithXmlNamespaceRequest>", ::aws_smithy_protocol_test::MediaType::from("application/xml"))
  256    257   
        );
  257    258   
        let uri: ::http::Uri = http_request.uri().parse().expect("invalid URI sent");
  258    259   
        ::pretty_assertions::assert_eq!(http_request.method(), "POST", "method was incorrect");
  259    260   
        ::pretty_assertions::assert_eq!(uri.path(), "/XmlMapWithXmlNamespace", "path was incorrect");
  260    261   
    }
  261    262   
    /// Serializes XML maps in responses that have xmlNamespace and xmlName on members
  262    263   
    /// Test ID: RestXmlXmlMapWithXmlNamespace
  263    264   
    #[::tokio::test]
  264         -
    #[allow(unused_mut)]
         265  +
    #[::tracing_test::traced_test]
  265    266   
    async fn rest_xml_xml_map_with_xml_namespace_response() {
  266    267   
        let expected_output = crate::operation::xml_map_with_xml_namespace::XmlMapWithXmlNamespaceOutput::builder()
  267    268   
            .set_my_map(::std::option::Option::Some({
  268    269   
                let mut ret = ::std::collections::HashMap::new();
  269    270   
                ret.insert("a".to_owned(), "A".to_owned());
  270    271   
                ret.insert("b".to_owned(), "B".to_owned());
  271    272   
                ret
  272    273   
            }))
  273    274   
            .build();
  274    275   
        let mut http_response = ::aws_smithy_runtime_api::http::Response::try_from(::http::response::Builder::new()

tmp-codegen-diff/codegen-client-test/rest_xml/rust-client-codegen/src/operation/xml_maps.rs

@@ -184,184 +289,290 @@
  204    204   
        let params = crate::config::endpoint::Params::builder().build().map_err(|err| {
  205    205   
            ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  206    206   
        })?;
  207    207   
        cfg.interceptor_state()
  208    208   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
  209    209   
        ::std::result::Result::Ok(())
  210    210   
    }
  211    211   
}
  212    212   
#[allow(unreachable_code, unused_variables)]
  213    213   
#[cfg(test)]
  214         -
mod xml_maps_request_test {
         214  +
mod xml_maps_test {
         215  +
  215    216   
    /// Tests for XML map serialization
  216    217   
    /// Test ID: XmlMaps
  217    218   
    #[::tokio::test]
  218         -
    #[allow(unused_mut)]
         219  +
    #[::tracing_test::traced_test]
  219    220   
    async fn xml_maps_request() {
  220    221   
        let (http_client, request_receiver) = ::aws_smithy_runtime::client::http::test_util::capture_request(None);
  221    222   
        let config_builder = crate::config::Config::builder().with_test_defaults().endpoint_url("https://example.com");
  222    223   
  223    224   
        let client = crate::Client::from_conf(config_builder.http_client(http_client).build());
  224    225   
        let result = client
  225    226   
            .xml_maps()
  226    227   
            .set_my_map(::std::option::Option::Some({
  227    228   
                let mut ret = ::std::collections::HashMap::new();
  228    229   
                ret.insert(
  229    230   
                    "foo".to_owned(),
  230    231   
                    crate::types::GreetingStruct::builder()
  231    232   
                        .set_hi(::std::option::Option::Some("there".to_owned()))
  232    233   
                        .build(),
  233    234   
                );
  234    235   
                ret.insert(
  235    236   
                    "baz".to_owned(),
  236    237   
                    crate::types::GreetingStruct::builder()
  237    238   
                        .set_hi(::std::option::Option::Some("bye".to_owned()))
  238    239   
                        .build(),
  239    240   
                );
  240    241   
                ret
  241    242   
            }))
  242    243   
            .send()
  243    244   
            .await;
  244    245   
        let _ = dbg!(result);
  245    246   
        let http_request = request_receiver.expect_request();
  246    247   
        let expected_headers = [("Content-Type", "application/xml")];
  247    248   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_headers(http_request.headers(), expected_headers));
  248    249   
        let body = http_request.body().bytes().expect("body should be strict");
  249    250   
        ::aws_smithy_protocol_test::assert_ok(
  250    251   
        ::aws_smithy_protocol_test::validate_body(body, "<XmlMapsRequest>\n    <myMap>\n        <entry>\n            <key>foo</key>\n            <value>\n                <hi>there</hi>\n            </value>\n        </entry>\n        <entry>\n            <key>baz</key>\n            <value>\n                <hi>bye</hi>\n            </value>\n        </entry>\n    </myMap>\n</XmlMapsRequest>\n", ::aws_smithy_protocol_test::MediaType::from("application/xml"))
  251    252   
        );
  252    253   
        let uri: ::http::Uri = http_request.uri().parse().expect("invalid URI sent");
  253    254   
        ::pretty_assertions::assert_eq!(http_request.method(), "POST", "method was incorrect");
  254    255   
        ::pretty_assertions::assert_eq!(uri.path(), "/XmlMaps", "path was incorrect");
  255    256   
    }
  256    257   
    /// Tests for XML map serialization
  257    258   
    /// Test ID: XmlMaps
  258    259   
    #[::tokio::test]
  259         -
    #[allow(unused_mut)]
         260  +
    #[::tracing_test::traced_test]
  260    261   
    async fn xml_maps_response() {
  261    262   
        let expected_output = crate::operation::xml_maps::XmlMapsOutput::builder()
  262    263   
            .set_my_map(::std::option::Option::Some({
  263    264   
                let mut ret = ::std::collections::HashMap::new();
  264    265   
                ret.insert(
  265    266   
                    "foo".to_owned(),
  266    267   
                    crate::types::GreetingStruct::builder()
  267    268   
                        .set_hi(::std::option::Option::Some("there".to_owned()))
  268    269   
                        .build(),
  269    270   
                );

tmp-codegen-diff/codegen-client-test/rest_xml/rust-client-codegen/src/operation/xml_maps_xml_name.rs

@@ -191,191 +296,297 @@
  211    211   
        let params = crate::config::endpoint::Params::builder().build().map_err(|err| {
  212    212   
            ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  213    213   
        })?;
  214    214   
        cfg.interceptor_state()
  215    215   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
  216    216   
        ::std::result::Result::Ok(())
  217    217   
    }
  218    218   
}
  219    219   
#[allow(unreachable_code, unused_variables)]
  220    220   
#[cfg(test)]
  221         -
mod xml_maps_xml_name_request_test {
         221  +
mod xml_maps_xml_name_test {
         222  +
  222    223   
    /// Serializes XML maps that have xmlName on members
  223    224   
    /// Test ID: XmlMapsXmlName
  224    225   
    #[::tokio::test]
  225         -
    #[allow(unused_mut)]
         226  +
    #[::tracing_test::traced_test]
  226    227   
    async fn xml_maps_xml_name_request() {
  227    228   
        let (http_client, request_receiver) = ::aws_smithy_runtime::client::http::test_util::capture_request(None);
  228    229   
        let config_builder = crate::config::Config::builder().with_test_defaults().endpoint_url("https://example.com");
  229    230   
  230    231   
        let client = crate::Client::from_conf(config_builder.http_client(http_client).build());
  231    232   
        let result = client
  232    233   
            .xml_maps_xml_name()
  233    234   
            .set_my_map(::std::option::Option::Some({
  234    235   
                let mut ret = ::std::collections::HashMap::new();
  235    236   
                ret.insert(
  236    237   
                    "foo".to_owned(),
  237    238   
                    crate::types::GreetingStruct::builder()
  238    239   
                        .set_hi(::std::option::Option::Some("there".to_owned()))
  239    240   
                        .build(),
  240    241   
                );
  241    242   
                ret.insert(
  242    243   
                    "baz".to_owned(),
  243    244   
                    crate::types::GreetingStruct::builder()
  244    245   
                        .set_hi(::std::option::Option::Some("bye".to_owned()))
  245    246   
                        .build(),
  246    247   
                );
  247    248   
                ret
  248    249   
            }))
  249    250   
            .send()
  250    251   
            .await;
  251    252   
        let _ = dbg!(result);
  252    253   
        let http_request = request_receiver.expect_request();
  253    254   
        let expected_headers = [("Content-Type", "application/xml")];
  254    255   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_headers(http_request.headers(), expected_headers));
  255    256   
        let body = http_request.body().bytes().expect("body should be strict");
  256    257   
        ::aws_smithy_protocol_test::assert_ok(
  257    258   
        ::aws_smithy_protocol_test::validate_body(body, "<XmlMapsXmlNameRequest>\n    <myMap>\n        <entry>\n            <Attribute>foo</Attribute>\n            <Setting>\n                <hi>there</hi>\n            </Setting>\n        </entry>\n        <entry>\n            <Attribute>baz</Attribute>\n            <Setting>\n                <hi>bye</hi>\n            </Setting>\n        </entry>\n    </myMap>\n</XmlMapsXmlNameRequest>\n", ::aws_smithy_protocol_test::MediaType::from("application/xml"))
  258    259   
        );
  259    260   
        let uri: ::http::Uri = http_request.uri().parse().expect("invalid URI sent");
  260    261   
        ::pretty_assertions::assert_eq!(http_request.method(), "POST", "method was incorrect");
  261    262   
        ::pretty_assertions::assert_eq!(uri.path(), "/XmlMapsXmlName", "path was incorrect");
  262    263   
    }
  263    264   
    /// Serializes XML lists
  264    265   
    /// Test ID: XmlMapsXmlName
  265    266   
    #[::tokio::test]
  266         -
    #[allow(unused_mut)]
         267  +
    #[::tracing_test::traced_test]
  267    268   
    async fn xml_maps_xml_name_response() {
  268    269   
        let expected_output = crate::operation::xml_maps_xml_name::XmlMapsXmlNameOutput::builder()
  269    270   
            .set_my_map(::std::option::Option::Some({
  270    271   
                let mut ret = ::std::collections::HashMap::new();
  271    272   
                ret.insert(
  272    273   
                    "foo".to_owned(),
  273    274   
                    crate::types::GreetingStruct::builder()
  274    275   
                        .set_hi(::std::option::Option::Some("there".to_owned()))
  275    276   
                        .build(),
  276    277   
                );

tmp-codegen-diff/codegen-client-test/rest_xml/rust-client-codegen/src/operation/xml_namespaces.rs

@@ -191,191 +286,287 @@
  211    211   
        let params = crate::config::endpoint::Params::builder().build().map_err(|err| {
  212    212   
            ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  213    213   
        })?;
  214    214   
        cfg.interceptor_state()
  215    215   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
  216    216   
        ::std::result::Result::Ok(())
  217    217   
    }
  218    218   
}
  219    219   
#[allow(unreachable_code, unused_variables)]
  220    220   
#[cfg(test)]
  221         -
mod xml_namespaces_request_test {
         221  +
mod xml_namespaces_test {
         222  +
  222    223   
    /// Serializes XML namespaces
  223    224   
    /// Test ID: XmlNamespaces
  224    225   
    #[::tokio::test]
  225         -
    #[allow(unused_mut)]
         226  +
    #[::tracing_test::traced_test]
  226    227   
    async fn xml_namespaces_request() {
  227    228   
        let (http_client, request_receiver) = ::aws_smithy_runtime::client::http::test_util::capture_request(None);
  228    229   
        let config_builder = crate::config::Config::builder().with_test_defaults().endpoint_url("https://example.com");
  229    230   
  230    231   
        let client = crate::Client::from_conf(config_builder.http_client(http_client).build());
  231    232   
        let result = client
  232    233   
            .xml_namespaces()
  233    234   
            .set_nested(::std::option::Option::Some(
  234    235   
                crate::types::XmlNamespaceNested::builder()
  235    236   
                    .set_foo(::std::option::Option::Some("Foo".to_owned()))
  236    237   
                    .set_values(::std::option::Option::Some(vec!["Bar".to_owned(), "Baz".to_owned()]))
  237    238   
                    .build(),
  238    239   
            ))
  239    240   
            .send()
  240    241   
            .await;
  241    242   
        let _ = dbg!(result);
  242    243   
        let http_request = request_receiver.expect_request();
  243    244   
        let expected_headers = [("Content-Type", "application/xml")];
  244    245   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_headers(http_request.headers(), expected_headers));
  245    246   
        let body = http_request.body().bytes().expect("body should be strict");
  246    247   
        ::aws_smithy_protocol_test::assert_ok(
  247    248   
        ::aws_smithy_protocol_test::validate_body(body, "<XmlNamespacesRequest xmlns=\"http://foo.com\">\n    <nested>\n        <foo xmlns:baz=\"http://baz.com\">Foo</foo>\n        <values xmlns=\"http://qux.com\">\n            <member xmlns=\"http://bux.com\">Bar</member>\n            <member xmlns=\"http://bux.com\">Baz</member>\n        </values>\n    </nested>\n</XmlNamespacesRequest>\n", ::aws_smithy_protocol_test::MediaType::from("application/xml"))
  248    249   
        );
  249    250   
        let uri: ::http::Uri = http_request.uri().parse().expect("invalid URI sent");
  250    251   
        ::pretty_assertions::assert_eq!(http_request.method(), "POST", "method was incorrect");
  251    252   
        ::pretty_assertions::assert_eq!(uri.path(), "/XmlNamespaces", "path was incorrect");
  252    253   
    }
  253    254   
    /// Serializes XML namespaces
  254    255   
    /// Test ID: XmlNamespaces
  255    256   
    #[::tokio::test]
  256         -
    #[allow(unused_mut)]
         257  +
    #[::tracing_test::traced_test]
  257    258   
    async fn xml_namespaces_response() {
  258    259   
        let expected_output = crate::operation::xml_namespaces::XmlNamespacesOutput::builder()
  259    260   
            .set_nested(::std::option::Option::Some(
  260    261   
                crate::types::XmlNamespaceNested::builder()
  261    262   
                    .set_foo(::std::option::Option::Some("Foo".to_owned()))
  262    263   
                    .set_values(::std::option::Option::Some(vec!["Bar".to_owned(), "Baz".to_owned()]))
  263    264   
                    .build(),
  264    265   
            ))
  265    266   
            .build();
  266    267   
        let mut http_response = ::aws_smithy_runtime_api::http::Response::try_from(::http::response::Builder::new()

tmp-codegen-diff/codegen-client-test/rest_xml/rust-client-codegen/src/operation/xml_timestamps.rs

@@ -191,191 +465,466 @@
  211    211   
        let params = crate::config::endpoint::Params::builder().build().map_err(|err| {
  212    212   
            ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  213    213   
        })?;
  214    214   
        cfg.interceptor_state()
  215    215   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
  216    216   
        ::std::result::Result::Ok(())
  217    217   
    }
  218    218   
}
  219    219   
#[allow(unreachable_code, unused_variables)]
  220    220   
#[cfg(test)]
  221         -
mod xml_timestamps_request_test {
         221  +
mod xml_timestamps_test {
         222  +
  222    223   
    /// Tests how normal timestamps are serialized
  223    224   
    /// Test ID: XmlTimestamps
  224    225   
    #[::tokio::test]
  225         -
    #[allow(unused_mut)]
         226  +
    #[::tracing_test::traced_test]
  226    227   
    async fn xml_timestamps_request() {
  227    228   
        let (http_client, request_receiver) = ::aws_smithy_runtime::client::http::test_util::capture_request(None);
  228    229   
        let config_builder = crate::config::Config::builder().with_test_defaults().endpoint_url("https://example.com");
  229    230   
  230    231   
        let client = crate::Client::from_conf(config_builder.http_client(http_client).build());
  231    232   
        let result = client
  232    233   
            .xml_timestamps()
  233    234   
            .set_normal(::std::option::Option::Some(::aws_smithy_types::DateTime::from_fractional_secs(
  234    235   
                1398796238, 0_f64,
  235    236   
            )))
  236    237   
            .send()
  237    238   
            .await;
  238    239   
        let _ = dbg!(result);
  239    240   
        let http_request = request_receiver.expect_request();
  240    241   
        let expected_headers = [("Content-Type", "application/xml")];
  241    242   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_headers(http_request.headers(), expected_headers));
  242    243   
        let body = http_request.body().bytes().expect("body should be strict");
  243    244   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_body(
  244    245   
            body,
  245    246   
            "<XmlTimestampsRequest>\n    <normal>2014-04-29T18:30:38Z</normal>\n</XmlTimestampsRequest>\n",
  246    247   
            ::aws_smithy_protocol_test::MediaType::from("application/xml"),
  247    248   
        ));
  248    249   
        let uri: ::http::Uri = http_request.uri().parse().expect("invalid URI sent");
  249    250   
        ::pretty_assertions::assert_eq!(http_request.method(), "POST", "method was incorrect");
  250    251   
        ::pretty_assertions::assert_eq!(uri.path(), "/XmlTimestamps", "path was incorrect");
  251    252   
    }
  252    253   
    /// Ensures that the timestampFormat of date-time works like normal timestamps
  253    254   
    /// Test ID: XmlTimestampsWithDateTimeFormat
  254    255   
    #[::tokio::test]
  255         -
    #[allow(unused_mut)]
         256  +
    #[::tracing_test::traced_test]
  256    257   
    async fn xml_timestamps_with_date_time_format_request() {
  257    258   
        let (http_client, request_receiver) = ::aws_smithy_runtime::client::http::test_util::capture_request(None);
  258    259   
        let config_builder = crate::config::Config::builder().with_test_defaults().endpoint_url("https://example.com");
  259    260   
  260    261   
        let client = crate::Client::from_conf(config_builder.http_client(http_client).build());
  261    262   
        let result = client
  262    263   
            .xml_timestamps()
  263    264   
            .set_date_time(::std::option::Option::Some(::aws_smithy_types::DateTime::from_fractional_secs(
  264    265   
                1398796238, 0_f64,
  265    266   
            )))
  266    267   
            .send()
  267    268   
            .await;
  268    269   
        let _ = dbg!(result);
  269    270   
        let http_request = request_receiver.expect_request();
  270    271   
        let expected_headers = [("Content-Type", "application/xml")];
  271    272   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_headers(http_request.headers(), expected_headers));
  272    273   
        let body = http_request.body().bytes().expect("body should be strict");
  273    274   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_body(
  274    275   
            body,
  275    276   
            "<XmlTimestampsRequest>\n    <dateTime>2014-04-29T18:30:38Z</dateTime>\n</XmlTimestampsRequest>\n",
  276    277   
            ::aws_smithy_protocol_test::MediaType::from("application/xml"),
  277    278   
        ));
  278    279   
        let uri: ::http::Uri = http_request.uri().parse().expect("invalid URI sent");
  279    280   
        ::pretty_assertions::assert_eq!(http_request.method(), "POST", "method was incorrect");
  280    281   
        ::pretty_assertions::assert_eq!(uri.path(), "/XmlTimestamps", "path was incorrect");
  281    282   
    }
  282    283   
    /// Ensures that the timestampFormat of date-time on the target shape works like normal timestamps
  283    284   
    /// Test ID: XmlTimestampsWithDateTimeOnTargetFormat
  284    285   
    #[::tokio::test]
  285         -
    #[allow(unused_mut)]
         286  +
    #[::tracing_test::traced_test]
  286    287   
    async fn xml_timestamps_with_date_time_on_target_format_request() {
  287    288   
        let (http_client, request_receiver) = ::aws_smithy_runtime::client::http::test_util::capture_request(None);
  288    289   
        let config_builder = crate::config::Config::builder().with_test_defaults().endpoint_url("https://example.com");
  289    290   
  290    291   
        let client = crate::Client::from_conf(config_builder.http_client(http_client).build());
  291    292   
        let result = client
  292    293   
            .xml_timestamps()
  293    294   
            .set_date_time_on_target(::std::option::Option::Some(::aws_smithy_types::DateTime::from_fractional_secs(
  294    295   
                1398796238, 0_f64,
  295    296   
            )))
  296    297   
            .send()
  297    298   
            .await;
  298    299   
        let _ = dbg!(result);
  299    300   
        let http_request = request_receiver.expect_request();
  300    301   
        let expected_headers = [("Content-Type", "application/xml")];
  301    302   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_headers(http_request.headers(), expected_headers));
  302    303   
        let body = http_request.body().bytes().expect("body should be strict");
  303    304   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_body(
  304    305   
            body,
  305    306   
            "<XmlTimestampsRequest>\n    <dateTimeOnTarget>2014-04-29T18:30:38Z</dateTimeOnTarget>\n</XmlTimestampsRequest>\n",
  306    307   
            ::aws_smithy_protocol_test::MediaType::from("application/xml"),
  307    308   
        ));
  308    309   
        let uri: ::http::Uri = http_request.uri().parse().expect("invalid URI sent");
  309    310   
        ::pretty_assertions::assert_eq!(http_request.method(), "POST", "method was incorrect");
  310    311   
        ::pretty_assertions::assert_eq!(uri.path(), "/XmlTimestamps", "path was incorrect");
  311    312   
    }
  312    313   
    /// Ensures that the timestampFormat of epoch-seconds works
  313    314   
    /// Test ID: XmlTimestampsWithEpochSecondsFormat
  314    315   
    #[::tokio::test]
  315         -
    #[allow(unused_mut)]
         316  +
    #[::tracing_test::traced_test]
  316    317   
    async fn xml_timestamps_with_epoch_seconds_format_request() {
  317    318   
        let (http_client, request_receiver) = ::aws_smithy_runtime::client::http::test_util::capture_request(None);
  318    319   
        let config_builder = crate::config::Config::builder().with_test_defaults().endpoint_url("https://example.com");
  319    320   
  320    321   
        let client = crate::Client::from_conf(config_builder.http_client(http_client).build());
  321    322   
        let result = client
  322    323   
            .xml_timestamps()
  323    324   
            .set_epoch_seconds(::std::option::Option::Some(::aws_smithy_types::DateTime::from_fractional_secs(
  324    325   
                1398796238, 0_f64,
  325    326   
            )))
  326    327   
            .send()
  327    328   
            .await;
  328    329   
        let _ = dbg!(result);
  329    330   
        let http_request = request_receiver.expect_request();
  330    331   
        let expected_headers = [("Content-Type", "application/xml")];
  331    332   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_headers(http_request.headers(), expected_headers));
  332    333   
        let body = http_request.body().bytes().expect("body should be strict");
  333    334   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_body(
  334    335   
            body,
  335    336   
            "<XmlTimestampsRequest>\n    <epochSeconds>1398796238</epochSeconds>\n</XmlTimestampsRequest>\n",
  336    337   
            ::aws_smithy_protocol_test::MediaType::from("application/xml"),
  337    338   
        ));
  338    339   
        let uri: ::http::Uri = http_request.uri().parse().expect("invalid URI sent");
  339    340   
        ::pretty_assertions::assert_eq!(http_request.method(), "POST", "method was incorrect");
  340    341   
        ::pretty_assertions::assert_eq!(uri.path(), "/XmlTimestamps", "path was incorrect");
  341    342   
    }
  342    343   
    /// Ensures that the timestampFormat of epoch-seconds on the target shape works
  343    344   
    /// Test ID: XmlTimestampsWithEpochSecondsOnTargetFormat
  344    345   
    #[::tokio::test]
  345         -
    #[allow(unused_mut)]
         346  +
    #[::tracing_test::traced_test]
  346    347   
    async fn xml_timestamps_with_epoch_seconds_on_target_format_request() {
  347    348   
        let (http_client, request_receiver) = ::aws_smithy_runtime::client::http::test_util::capture_request(None);
  348    349   
        let config_builder = crate::config::Config::builder().with_test_defaults().endpoint_url("https://example.com");
  349    350   
  350    351   
        let client = crate::Client::from_conf(config_builder.http_client(http_client).build());
  351    352   
        let result = client
  352    353   
            .xml_timestamps()
  353    354   
            .set_epoch_seconds_on_target(::std::option::Option::Some(::aws_smithy_types::DateTime::from_fractional_secs(
  354    355   
                1398796238, 0_f64,
  355    356   
            )))
  356    357   
            .send()
  357    358   
            .await;
  358    359   
        let _ = dbg!(result);
  359    360   
        let http_request = request_receiver.expect_request();
  360    361   
        let expected_headers = [("Content-Type", "application/xml")];
  361    362   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_headers(http_request.headers(), expected_headers));
  362    363   
        let body = http_request.body().bytes().expect("body should be strict");
  363    364   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_body(
  364    365   
            body,
  365    366   
            "<XmlTimestampsRequest>\n    <epochSecondsOnTarget>1398796238</epochSecondsOnTarget>\n</XmlTimestampsRequest>\n",
  366    367   
            ::aws_smithy_protocol_test::MediaType::from("application/xml"),
  367    368   
        ));
  368    369   
        let uri: ::http::Uri = http_request.uri().parse().expect("invalid URI sent");
  369    370   
        ::pretty_assertions::assert_eq!(http_request.method(), "POST", "method was incorrect");
  370    371   
        ::pretty_assertions::assert_eq!(uri.path(), "/XmlTimestamps", "path was incorrect");
  371    372   
    }
  372    373   
    /// Ensures that the timestampFormat of http-date works
  373    374   
    /// Test ID: XmlTimestampsWithHttpDateFormat
  374    375   
    #[::tokio::test]
  375         -
    #[allow(unused_mut)]
         376  +
    #[::tracing_test::traced_test]
  376    377   
    async fn xml_timestamps_with_http_date_format_request() {
  377    378   
        let (http_client, request_receiver) = ::aws_smithy_runtime::client::http::test_util::capture_request(None);
  378    379   
        let config_builder = crate::config::Config::builder().with_test_defaults().endpoint_url("https://example.com");
  379    380   
  380    381   
        let client = crate::Client::from_conf(config_builder.http_client(http_client).build());
  381    382   
        let result = client
  382    383   
            .xml_timestamps()
  383    384   
            .set_http_date(::std::option::Option::Some(::aws_smithy_types::DateTime::from_fractional_secs(
  384    385   
                1398796238, 0_f64,
  385    386   
            )))
  386    387   
            .send()
  387    388   
            .await;
  388    389   
        let _ = dbg!(result);
  389    390   
        let http_request = request_receiver.expect_request();
  390    391   
        let expected_headers = [("Content-Type", "application/xml")];
  391    392   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_headers(http_request.headers(), expected_headers));
  392    393   
        let body = http_request.body().bytes().expect("body should be strict");
  393    394   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_body(
  394    395   
            body,
  395    396   
            "<XmlTimestampsRequest>\n    <httpDate>Tue, 29 Apr 2014 18:30:38 GMT</httpDate>\n</XmlTimestampsRequest>\n",
  396    397   
            ::aws_smithy_protocol_test::MediaType::from("application/xml"),
  397    398   
        ));
  398    399   
        let uri: ::http::Uri = http_request.uri().parse().expect("invalid URI sent");
  399    400   
        ::pretty_assertions::assert_eq!(http_request.method(), "POST", "method was incorrect");
  400    401   
        ::pretty_assertions::assert_eq!(uri.path(), "/XmlTimestamps", "path was incorrect");
  401    402   
    }
  402    403   
    /// Ensures that the timestampFormat of http-date on the target shape works
  403    404   
    /// Test ID: XmlTimestampsWithHttpDateOnTargetFormat
  404    405   
    #[::tokio::test]
  405         -
    #[allow(unused_mut)]
         406  +
    #[::tracing_test::traced_test]
  406    407   
    async fn xml_timestamps_with_http_date_on_target_format_request() {
  407    408   
        let (http_client, request_receiver) = ::aws_smithy_runtime::client::http::test_util::capture_request(None);
  408    409   
        let config_builder = crate::config::Config::builder().with_test_defaults().endpoint_url("https://example.com");
  409    410   
  410    411   
        let client = crate::Client::from_conf(config_builder.http_client(http_client).build());
  411    412   
        let result = client
  412    413   
            .xml_timestamps()
  413    414   
            .set_http_date_on_target(::std::option::Option::Some(::aws_smithy_types::DateTime::from_fractional_secs(
  414    415   
                1398796238, 0_f64,
  415    416   
            )))
  416    417   
            .send()
  417    418   
            .await;
  418    419   
        let _ = dbg!(result);
  419    420   
        let http_request = request_receiver.expect_request();
  420    421   
        let expected_headers = [("Content-Type", "application/xml")];
  421    422   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_headers(http_request.headers(), expected_headers));
  422    423   
        let body = http_request.body().bytes().expect("body should be strict");
  423    424   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_body(
  424    425   
            body,
  425    426   
            "<XmlTimestampsRequest>\n    <httpDateOnTarget>Tue, 29 Apr 2014 18:30:38 GMT</httpDateOnTarget>\n</XmlTimestampsRequest>\n",
  426    427   
            ::aws_smithy_protocol_test::MediaType::from("application/xml"),
  427    428   
        ));
  428    429   
        let uri: ::http::Uri = http_request.uri().parse().expect("invalid URI sent");
  429    430   
        ::pretty_assertions::assert_eq!(http_request.method(), "POST", "method was incorrect");
  430    431   
        ::pretty_assertions::assert_eq!(uri.path(), "/XmlTimestamps", "path was incorrect");
  431    432   
    }
  432    433   
    /// Tests how normal timestamps are serialized
  433    434   
    /// Test ID: XmlTimestamps
  434    435   
    #[::tokio::test]
  435         -
    #[allow(unused_mut)]
         436  +
    #[::tracing_test::traced_test]
  436    437   
    async fn xml_timestamps_response() {
  437    438   
        let expected_output = crate::operation::xml_timestamps::XmlTimestampsOutput::builder()
  438    439   
            .set_normal(::std::option::Option::Some(::aws_smithy_types::DateTime::from_fractional_secs(
  439    440   
                1398796238, 0_f64,
  440    441   
            )))
  441    442   
            .build();
  442    443   
        let mut http_response = ::aws_smithy_runtime_api::http::Response::try_from(
  443    444   
            ::http::response::Builder::new()
  444    445   
                .header("Content-Type", "application/xml")
  445    446   
                .status(200)
@@ -468,469 +528,529 @@
  488    489   
        ::pretty_assertions::assert_eq!(parsed.http_date, expected_output.http_date, "Unexpected value for `http_date`");
  489    490   
        ::pretty_assertions::assert_eq!(
  490    491   
            parsed.http_date_on_target,
  491    492   
            expected_output.http_date_on_target,
  492    493   
            "Unexpected value for `http_date_on_target`"
  493    494   
        );
  494    495   
    }
  495    496   
    /// Ensures that the timestampFormat of date-time works like normal timestamps
  496    497   
    /// Test ID: XmlTimestampsWithDateTimeFormat
  497    498   
    #[::tokio::test]
  498         -
    #[allow(unused_mut)]
         499  +
    #[::tracing_test::traced_test]
  499    500   
    async fn xml_timestamps_with_date_time_format_response() {
  500    501   
        let expected_output = crate::operation::xml_timestamps::XmlTimestampsOutput::builder()
  501    502   
            .set_date_time(::std::option::Option::Some(::aws_smithy_types::DateTime::from_fractional_secs(
  502    503   
                1398796238, 0_f64,
  503    504   
            )))
  504    505   
            .build();
  505    506   
        let mut http_response = ::aws_smithy_runtime_api::http::Response::try_from(
  506    507   
            ::http::response::Builder::new()
  507    508   
                .header("Content-Type", "application/xml")
  508    509   
                .status(200)
@@ -531,532 +591,592 @@
  551    552   
        ::pretty_assertions::assert_eq!(parsed.http_date, expected_output.http_date, "Unexpected value for `http_date`");
  552    553   
        ::pretty_assertions::assert_eq!(
  553    554   
            parsed.http_date_on_target,
  554    555   
            expected_output.http_date_on_target,
  555    556   
            "Unexpected value for `http_date_on_target`"
  556    557   
        );
  557    558   
    }
  558    559   
    /// Ensures that the timestampFormat of date-time on the target shape works like normal timestamps
  559    560   
    /// Test ID: XmlTimestampsWithDateTimeOnTargetFormat
  560    561   
    #[::tokio::test]
  561         -
    #[allow(unused_mut)]
         562  +
    #[::tracing_test::traced_test]
  562    563   
    async fn xml_timestamps_with_date_time_on_target_format_response() {
  563    564   
        let expected_output = crate::operation::xml_timestamps::XmlTimestampsOutput::builder()
  564    565   
            .set_date_time_on_target(::std::option::Option::Some(::aws_smithy_types::DateTime::from_fractional_secs(
  565    566   
                1398796238, 0_f64,
  566    567   
            )))
  567    568   
            .build();
  568    569   
        let mut http_response = ::aws_smithy_runtime_api::http::Response::try_from(
  569    570   
            ::http::response::Builder::new()
  570    571   
                .header("Content-Type", "application/xml")
  571    572   
                .status(200)
@@ -594,595 +654,655 @@
  614    615   
        ::pretty_assertions::assert_eq!(parsed.http_date, expected_output.http_date, "Unexpected value for `http_date`");
  615    616   
        ::pretty_assertions::assert_eq!(
  616    617   
            parsed.http_date_on_target,
  617    618   
            expected_output.http_date_on_target,
  618    619   
            "Unexpected value for `http_date_on_target`"
  619    620   
        );
  620    621   
    }
  621    622   
    /// Ensures that the timestampFormat of epoch-seconds works
  622    623   
    /// Test ID: XmlTimestampsWithEpochSecondsFormat
  623    624   
    #[::tokio::test]
  624         -
    #[allow(unused_mut)]
         625  +
    #[::tracing_test::traced_test]
  625    626   
    async fn xml_timestamps_with_epoch_seconds_format_response() {
  626    627   
        let expected_output = crate::operation::xml_timestamps::XmlTimestampsOutput::builder()
  627    628   
            .set_epoch_seconds(::std::option::Option::Some(::aws_smithy_types::DateTime::from_fractional_secs(
  628    629   
                1398796238, 0_f64,
  629    630   
            )))
  630    631   
            .build();
  631    632   
        let mut http_response = ::aws_smithy_runtime_api::http::Response::try_from(
  632    633   
            ::http::response::Builder::new()
  633    634   
                .header("Content-Type", "application/xml")
  634    635   
                .status(200)
@@ -657,658 +717,718 @@
  677    678   
        ::pretty_assertions::assert_eq!(parsed.http_date, expected_output.http_date, "Unexpected value for `http_date`");
  678    679   
        ::pretty_assertions::assert_eq!(
  679    680   
            parsed.http_date_on_target,
  680    681   
            expected_output.http_date_on_target,
  681    682   
            "Unexpected value for `http_date_on_target`"
  682    683   
        );
  683    684   
    }
  684    685   
    /// Ensures that the timestampFormat of epoch-seconds on the target shape works
  685    686   
    /// Test ID: XmlTimestampsWithEpochSecondsOnTargetFormat
  686    687   
    #[::tokio::test]
  687         -
    #[allow(unused_mut)]
         688  +
    #[::tracing_test::traced_test]
  688    689   
    async fn xml_timestamps_with_epoch_seconds_on_target_format_response() {
  689    690   
        let expected_output = crate::operation::xml_timestamps::XmlTimestampsOutput::builder()
  690    691   
            .set_epoch_seconds_on_target(::std::option::Option::Some(::aws_smithy_types::DateTime::from_fractional_secs(
  691    692   
                1398796238, 0_f64,
  692    693   
            )))
  693    694   
            .build();
  694    695   
        let mut http_response = ::aws_smithy_runtime_api::http::Response::try_from(
  695    696   
            ::http::response::Builder::new()
  696    697   
                .header("Content-Type", "application/xml")
  697    698   
                .status(200)
@@ -720,721 +780,781 @@
  740    741   
        ::pretty_assertions::assert_eq!(parsed.http_date, expected_output.http_date, "Unexpected value for `http_date`");
  741    742   
        ::pretty_assertions::assert_eq!(
  742    743   
            parsed.http_date_on_target,
  743    744   
            expected_output.http_date_on_target,
  744    745   
            "Unexpected value for `http_date_on_target`"
  745    746   
        );
  746    747   
    }
  747    748   
    /// Ensures that the timestampFormat of http-date works
  748    749   
    /// Test ID: XmlTimestampsWithHttpDateFormat
  749    750   
    #[::tokio::test]
  750         -
    #[allow(unused_mut)]
         751  +
    #[::tracing_test::traced_test]
  751    752   
    async fn xml_timestamps_with_http_date_format_response() {
  752    753   
        let expected_output = crate::operation::xml_timestamps::XmlTimestampsOutput::builder()
  753    754   
            .set_http_date(::std::option::Option::Some(::aws_smithy_types::DateTime::from_fractional_secs(
  754    755   
                1398796238, 0_f64,
  755    756   
            )))
  756    757   
            .build();
  757    758   
        let mut http_response = ::aws_smithy_runtime_api::http::Response::try_from(
  758    759   
            ::http::response::Builder::new()
  759    760   
                .header("Content-Type", "application/xml")
  760    761   
                .status(200)
@@ -783,784 +843,844 @@
  803    804   
        ::pretty_assertions::assert_eq!(parsed.http_date, expected_output.http_date, "Unexpected value for `http_date`");
  804    805   
        ::pretty_assertions::assert_eq!(
  805    806   
            parsed.http_date_on_target,
  806    807   
            expected_output.http_date_on_target,
  807    808   
            "Unexpected value for `http_date_on_target`"
  808    809   
        );
  809    810   
    }
  810    811   
    /// Ensures that the timestampFormat of http-date on the target shape works
  811    812   
    /// Test ID: XmlTimestampsWithHttpDateOnTargetFormat
  812    813   
    #[::tokio::test]
  813         -
    #[allow(unused_mut)]
         814  +
    #[::tracing_test::traced_test]
  814    815   
    async fn xml_timestamps_with_http_date_on_target_format_response() {
  815    816   
        let expected_output = crate::operation::xml_timestamps::XmlTimestampsOutput::builder()
  816    817   
            .set_http_date_on_target(::std::option::Option::Some(::aws_smithy_types::DateTime::from_fractional_secs(
  817    818   
                1398796238, 0_f64,
  818    819   
            )))
  819    820   
            .build();
  820    821   
        let mut http_response = ::aws_smithy_runtime_api::http::Response::try_from(
  821    822   
            ::http::response::Builder::new()
  822    823   
                .header("Content-Type", "application/xml")
  823    824   
                .status(200)