Client Test

Client Test

rev. 1fb202108840af7ccb1069c5b8afebf43a5e5aec

Files changed:

tmp-codegen-diff/codegen-client-test/rpcv2Cbor/rust-client-codegen/src/operation/sparse_nulls_operation.rs

@@ -214,214 +313,313 @@
  234    234   
  235    235   
#[allow(unreachable_code, unused_variables)]
  236    236   
#[cfg(test)]
  237    237   
mod sparse_nulls_operation_test {
  238    238   
  239    239   
    /// Serializes null values in maps
  240    240   
    /// Test ID: RpcV2CborSparseMapsSerializeNullValues
  241    241   
    #[::tokio::test]
  242    242   
    #[::tracing_test::traced_test]
  243    243   
    async fn rpc_v2_cbor_sparse_maps_serialize_null_values_request() {
  244         -
        let (http_client, request_receiver) = ::aws_smithy_runtime::client::http::test_util::capture_request(None);
         244  +
        let (http_client, request_receiver) = ::aws_smithy_http_client::test_util::capture_request(None);
  245    245   
        let config_builder = crate::config::Config::builder().with_test_defaults().endpoint_url("https://example.com");
  246    246   
  247    247   
        let client = crate::Client::from_conf(config_builder.http_client(http_client).build());
  248    248   
        let result = client
  249    249   
            .sparse_nulls_operation()
  250    250   
            .set_sparse_string_map(::std::option::Option::Some({
  251    251   
                let mut ret = ::std::collections::HashMap::new();
  252    252   
                ret.insert("foo".to_owned(), ::std::option::Option::None);
  253    253   
                ret
  254    254   
            }))
  255    255   
            .send()
  256    256   
            .await;
  257    257   
        let _ = dbg!(result);
  258    258   
        let http_request = request_receiver.expect_request();
  259    259   
        let expected_headers = [
  260    260   
            ("Accept", "application/cbor"),
  261    261   
            ("Content-Type", "application/cbor"),
  262    262   
            ("smithy-protocol", "rpc-v2-cbor"),
  263    263   
        ];
  264    264   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_headers(http_request.headers(), expected_headers));
  265    265   
        let required_headers = &["Content-Length"];
  266    266   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::require_headers(http_request.headers(), required_headers));
  267    267   
        let body = http_request.body().bytes().expect("body should be strict");
  268    268   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_body(
  269    269   
            body,
  270    270   
            "v29zcGFyc2VTdHJpbmdNYXC/Y2Zvb/b//w==",
  271    271   
            ::aws_smithy_protocol_test::MediaType::from("application/cbor"),
  272    272   
        ));
  273    273   
        let uri: ::http::Uri = http_request.uri().parse().expect("invalid URI sent");
  274    274   
        ::pretty_assertions::assert_eq!(http_request.method(), "POST", "method was incorrect");
  275    275   
        ::pretty_assertions::assert_eq!(uri.path(), "/service/RpcV2Protocol/operation/SparseNullsOperation", "path was incorrect");
  276    276   
    }
  277    277   
  278    278   
    /// Serializes null values in lists
  279    279   
    /// Test ID: RpcV2CborSparseListsSerializeNull
  280    280   
    #[::tokio::test]
  281    281   
    #[::tracing_test::traced_test]
  282    282   
    async fn rpc_v2_cbor_sparse_lists_serialize_null_request() {
  283         -
        let (http_client, request_receiver) = ::aws_smithy_runtime::client::http::test_util::capture_request(None);
         283  +
        let (http_client, request_receiver) = ::aws_smithy_http_client::test_util::capture_request(None);
  284    284   
        let config_builder = crate::config::Config::builder().with_test_defaults().endpoint_url("https://example.com");
  285    285   
  286    286   
        let client = crate::Client::from_conf(config_builder.http_client(http_client).build());
  287    287   
        let result = client
  288    288   
            .sparse_nulls_operation()
  289    289   
            .set_sparse_string_list(::std::option::Option::Some(vec![::std::option::Option::None]))
  290    290   
            .send()
  291    291   
            .await;
  292    292   
        let _ = dbg!(result);
  293    293   
        let http_request = request_receiver.expect_request();

tmp-codegen-diff/codegen-client-test/rpcv2Cbor_extras/rust-client-codegen/Cargo.toml

@@ -16,16 +49,50 @@
   36     36   
[dev-dependencies.tracing]
   37     37   
version = "0.1"
   38     38   
[dev-dependencies.tracing-test]
   39     39   
version = "0.2.5"
   40     40   
features = ["no-env-filter"]
   41     41   
[features]
   42     42   
test-util = ["aws-smithy-runtime/test-util"]
   43     43   
rt-tokio = ["aws-smithy-async/rt-tokio", "aws-smithy-types/rt-tokio"]
   44     44   
behavior-version-latest = []
   45     45   
rustls = ["aws-smithy-runtime/tls-rustls"]
          46  +
default-https-client = ["aws-smithy-runtime/default-https-client"]
   46     47   
gated-tests = []
   47         -
default = ["rt-tokio", "rustls"]
          48  +
default = ["rt-tokio", "rustls", "default-https-client"]
   48     49   
   49     50   

tmp-codegen-diff/codegen-client-test/simple/rust-client-codegen/Cargo.toml

@@ -4,4 +37,38 @@
   24     24   
path = "/home/build/workspace/smithy-rs/rust-runtime/aws-smithy-types"
   25     25   
[dependencies.bytes]
   26     26   
version = "1.4.0"
   27     27   
[dependencies.http]
   28     28   
version = "0.2.9"
   29     29   
[features]
   30     30   
test-util = ["aws-smithy-runtime/test-util"]
   31     31   
rt-tokio = ["aws-smithy-async/rt-tokio", "aws-smithy-types/rt-tokio"]
   32     32   
behavior-version-latest = []
   33     33   
rustls = ["aws-smithy-runtime/tls-rustls"]
          34  +
default-https-client = ["aws-smithy-runtime/default-https-client"]
   34     35   
gated-tests = []
   35         -
default = ["rt-tokio", "rustls"]
          36  +
default = ["rt-tokio", "rustls", "default-https-client"]
   36     37   
   37     38