[
  {
    "description": "Test cases for EmptyInputOutput operation",
    "metadata": {
      "apiVersion": "2020-07-14",
      "auth": [
        "aws.auth#sigv4"
      ],
      "endpointPrefix": "rpcv2protocol",
      "protocol": "smithy-rpc-v2-cbor",
      "protocols": [
        "smithy-rpc-v2-cbor"
      ],
      "serviceFullName": "RpcV2Protocol",
      "serviceId": "RpcV2Protocol",
      "signatureVersion": "v4",
      "signingName": "RpcV2Protocol",
      "targetPrefix": "RpcV2Protocol",
      "uid": "rpcv2protocol-2020-07-14"
    },
    "shapes": {
      "EmptyStructure": {
        "type": "structure",
        "members": {}
      }
    },
    "cases": [
      {
        "id": "empty_input",
        "description": "When Input structure is empty we write CBOR equivalent of {}",
        "given": {
          "name": "EmptyInputOutput",
          "http": {
            "method": "POST",
            "requestUri": "/"
          },
          "input": {
            "shape": "EmptyStructure"
          }
        },
        "params": {},
        "serialized": {
          "method": "POST",
          "uri": "/service/RpcV2Protocol/operation/EmptyInputOutput",
          "body": "v/8=",
          "headers": {
            "smithy-protocol": "rpc-v2-cbor",
            "Accept": "application/cbor",
            "Content-Type": "application/cbor"
          },
          "forbidHeaders": [
            "X-Amz-Target"
          ],
          "requireHeaders": [
            "Content-Length"
          ]
        }
      }
    ]
  },
  {
    "description": "Test cases for NoInputOutput operation",
    "metadata": {
      "apiVersion": "2020-07-14",
      "auth": [
        "aws.auth#sigv4"
      ],
      "endpointPrefix": "rpcv2protocol",
      "protocol": "smithy-rpc-v2-cbor",
      "protocols": [
        "smithy-rpc-v2-cbor"
      ],
      "serviceFullName": "RpcV2Protocol",
      "serviceId": "RpcV2Protocol",
      "signatureVersion": "v4",
      "signingName": "RpcV2Protocol",
      "targetPrefix": "RpcV2Protocol",
      "uid": "rpcv2protocol-2020-07-14"
    },
    "shapes": {},
    "cases": [
      {
        "id": "no_input",
        "description": "Body is empty and no Content-Type header if no input",
        "given": {
          "name": "NoInputOutput",
          "http": {
            "method": "POST",
            "requestUri": "/"
          }
        },
        "params": {},
        "serialized": {
          "method": "POST",
          "uri": "/service/RpcV2Protocol/operation/NoInputOutput",
          "body": "",
          "headers": {
            "Accept": "application/cbor",
            "smithy-protocol": "rpc-v2-cbor"
          },
          "forbidHeaders": [
            "Content-Type",
            "X-Amz-Target"
          ]
        }
      }
    ]
  },
  {
    "description": "Test cases for OptionalInputOutput operation",
    "metadata": {
      "apiVersion": "2020-07-14",
      "auth": [
        "aws.auth#sigv4"
      ],
      "endpointPrefix": "rpcv2protocol",
      "protocol": "smithy-rpc-v2-cbor",
      "protocols": [
        "smithy-rpc-v2-cbor"
      ],
      "serviceFullName": "RpcV2Protocol",
      "serviceId": "RpcV2Protocol",
      "signatureVersion": "v4",
      "signingName": "RpcV2Protocol",
      "targetPrefix": "RpcV2Protocol",
      "uid": "rpcv2protocol-2020-07-14"
    },
    "shapes": {
      "SimpleStructure": {
        "type": "structure",
        "members": {
          "value": {
            "shape": "String"
          }
        }
      },
      "String": {
        "type": "string"
      }
    },
    "cases": [
      {
        "id": "optional_input",
        "description": "When input is empty we write CBOR equivalent of {}",
        "given": {
          "name": "OptionalInputOutput",
          "http": {
            "method": "POST",
            "requestUri": "/"
          },
          "input": {
            "shape": "SimpleStructure"
          }
        },
        "params": {},
        "serialized": {
          "method": "POST",
          "uri": "/service/RpcV2Protocol/operation/OptionalInputOutput",
          "body": "v/8=",
          "headers": {
            "smithy-protocol": "rpc-v2-cbor",
            "Accept": "application/cbor",
            "Content-Type": "application/cbor"
          },
          "forbidHeaders": [
            "X-Amz-Target"
          ]
        }
      }
    ]
  },
  {
    "description": "Test cases for RecursiveShapes operation",
    "metadata": {
      "apiVersion": "2020-07-14",
      "auth": [
        "aws.auth#sigv4"
      ],
      "endpointPrefix": "rpcv2protocol",
      "protocol": "smithy-rpc-v2-cbor",
      "protocols": [
        "smithy-rpc-v2-cbor"
      ],
      "serviceFullName": "RpcV2Protocol",
      "serviceId": "RpcV2Protocol",
      "signatureVersion": "v4",
      "signingName": "RpcV2Protocol",
      "targetPrefix": "RpcV2Protocol",
      "uid": "rpcv2protocol-2020-07-14"
    },
    "shapes": {
      "RecursiveShapesInputOutput": {
        "type": "structure",
        "members": {
          "nested": {
            "shape": "RecursiveShapesInputOutputNested1"
          }
        }
      },
      "RecursiveShapesInputOutputNested1": {
        "type": "structure",
        "members": {
          "foo": {
            "shape": "String"
          },
          "nested": {
            "shape": "RecursiveShapesInputOutputNested2"
          }
        }
      },
      "String": {
        "type": "string"
      },
      "RecursiveShapesInputOutputNested2": {
        "type": "structure",
        "members": {
          "bar": {
            "shape": "String"
          },
          "recursiveMember": {
            "shape": "RecursiveShapesInputOutputNested1"
          }
        }
      }
    },
    "cases": [
      {
        "id": "RpcV2CborRecursiveShapes",
        "description": "Serializes recursive structures",
        "given": {
          "name": "RecursiveShapes",
          "http": {
            "method": "POST",
            "requestUri": "/"
          },
          "input": {
            "shape": "RecursiveShapesInputOutput"
          }
        },
        "params": {
          "nested": {
            "foo": "Foo1",
            "nested": {
              "bar": "Bar1",
              "recursiveMember": {
                "foo": "Foo2",
                "nested": {
                  "bar": "Bar2"
                }
              }
            }
          }
        },
        "serialized": {
          "method": "POST",
          "uri": "/service/RpcV2Protocol/operation/RecursiveShapes",
          "body": "v2ZuZXN0ZWS/Y2Zvb2RGb28xZm5lc3RlZL9jYmFyZEJhcjFvcmVjdXJzaXZlTWVtYmVyv2Nmb29kRm9vMmZuZXN0ZWS/Y2JhcmRCYXIy//////8=",
          "headers": {
            "smithy-protocol": "rpc-v2-cbor",
            "Accept": "application/cbor",
            "Content-Type": "application/cbor"
          },
          "requireHeaders": [
            "Content-Length"
          ]
        }
      }
    ]
  },
  {
    "description": "Test cases for RpcV2CborDenseMaps operation",
    "metadata": {
      "apiVersion": "2020-07-14",
      "auth": [
        "aws.auth#sigv4"
      ],
      "endpointPrefix": "rpcv2protocol",
      "protocol": "smithy-rpc-v2-cbor",
      "protocols": [
        "smithy-rpc-v2-cbor"
      ],
      "serviceFullName": "RpcV2Protocol",
      "serviceId": "RpcV2Protocol",
      "signatureVersion": "v4",
      "signingName": "RpcV2Protocol",
      "targetPrefix": "RpcV2Protocol",
      "uid": "rpcv2protocol-2020-07-14"
    },
    "shapes": {
      "RpcV2CborDenseMapsInputOutput": {
        "type": "structure",
        "members": {
          "denseStructMap": {
            "shape": "DenseStructMap"
          },
          "denseNumberMap": {
            "shape": "DenseNumberMap"
          },
          "denseBooleanMap": {
            "shape": "DenseBooleanMap"
          },
          "denseStringMap": {
            "shape": "DenseStringMap"
          },
          "denseSetMap": {
            "shape": "DenseSetMap"
          }
        }
      },
      "DenseStructMap": {
        "type": "map",
        "key": {
          "shape": "String"
        },
        "value": {
          "shape": "GreetingStruct"
        }
      },
      "DenseNumberMap": {
        "type": "map",
        "key": {
          "shape": "String"
        },
        "value": {
          "shape": "Integer"
        }
      },
      "DenseBooleanMap": {
        "type": "map",
        "key": {
          "shape": "String"
        },
        "value": {
          "shape": "Boolean"
        }
      },
      "DenseStringMap": {
        "type": "map",
        "key": {
          "shape": "String"
        },
        "value": {
          "shape": "String"
        }
      },
      "DenseSetMap": {
        "type": "map",
        "key": {
          "shape": "String"
        },
        "value": {
          "shape": "StringSet"
        }
      },
      "StringSet": {
        "type": "list",
        "member": {
          "shape": "String"
        }
      },
      "String": {
        "type": "string"
      },
      "Boolean": {
        "type": "boolean",
        "box": true
      },
      "Integer": {
        "type": "integer",
        "box": true
      },
      "GreetingStruct": {
        "type": "structure",
        "members": {
          "hi": {
            "shape": "String"
          }
        }
      }
    },
    "cases": [
      {
        "id": "RpcV2CborMaps",
        "description": "Serializes maps",
        "given": {
          "name": "RpcV2CborDenseMaps",
          "http": {
            "method": "POST",
            "requestUri": "/"
          },
          "input": {
            "shape": "RpcV2CborDenseMapsInputOutput"
          },
          "documentation": "<p>The example tests basic map serialization.</p>"
        },
        "params": {
          "denseStructMap": {
            "foo": {
              "hi": "there"
            },
            "baz": {
              "hi": "bye"
            }
          }
        },
        "serialized": {
          "method": "POST",
          "uri": "/service/RpcV2Protocol/operation/RpcV2CborDenseMaps",
          "body": "oW5kZW5zZVN0cnVjdE1hcKJjZm9voWJoaWV0aGVyZWNiYXqhYmhpY2J5ZQ==",
          "headers": {
            "smithy-protocol": "rpc-v2-cbor",
            "Accept": "application/cbor",
            "Content-Type": "application/cbor"
          },
          "requireHeaders": [
            "Content-Length"
          ]
        }
      },
      {
        "id": "RpcV2CborSerializesZeroValuesInMaps",
        "description": "Ensure that 0 and false are sent over the wire in all maps and lists",
        "given": {
          "name": "RpcV2CborDenseMaps",
          "http": {
            "method": "POST",
            "requestUri": "/"
          },
          "input": {
            "shape": "RpcV2CborDenseMapsInputOutput"
          },
          "documentation": "<p>The example tests basic map serialization.</p>"
        },
        "params": {
          "denseNumberMap": {
            "x": 0
          },
          "denseBooleanMap": {
            "x": false
          }
        },
        "serialized": {
          "method": "POST",
          "uri": "/service/RpcV2Protocol/operation/RpcV2CborDenseMaps",
          "body": "om5kZW5zZU51bWJlck1hcKFheABvZGVuc2VCb29sZWFuTWFwoWF49A==",
          "headers": {
            "smithy-protocol": "rpc-v2-cbor",
            "Accept": "application/cbor",
            "Content-Type": "application/cbor"
          },
          "requireHeaders": [
            "Content-Length"
          ]
        }
      },
      {
        "id": "RpcV2CborSerializesDenseSetMap",
        "description": "A request that contains a dense map of sets.",
        "given": {
          "name": "RpcV2CborDenseMaps",
          "http": {
            "method": "POST",
            "requestUri": "/"
          },
          "input": {
            "shape": "RpcV2CborDenseMapsInputOutput"
          },
          "documentation": "<p>The example tests basic map serialization.</p>"
        },
        "params": {
          "denseSetMap": {
            "x": [],
            "y": [
              "a",
              "b"
            ]
          }
        },
        "serialized": {
          "method": "POST",
          "uri": "/service/RpcV2Protocol/operation/RpcV2CborDenseMaps",
          "body": "oWtkZW5zZVNldE1hcKJheIBheYJhYWFi",
          "headers": {
            "smithy-protocol": "rpc-v2-cbor",
            "Accept": "application/cbor",
            "Content-Type": "application/cbor"
          },
          "requireHeaders": [
            "Content-Length"
          ]
        }
      }
    ]
  },
  {
    "description": "Test cases for RpcV2CborLists operation",
    "metadata": {
      "apiVersion": "2020-07-14",
      "auth": [
        "aws.auth#sigv4"
      ],
      "endpointPrefix": "rpcv2protocol",
      "protocol": "smithy-rpc-v2-cbor",
      "protocols": [
        "smithy-rpc-v2-cbor"
      ],
      "serviceFullName": "RpcV2Protocol",
      "serviceId": "RpcV2Protocol",
      "signatureVersion": "v4",
      "signingName": "RpcV2Protocol",
      "targetPrefix": "RpcV2Protocol",
      "uid": "rpcv2protocol-2020-07-14"
    },
    "shapes": {
      "RpcV2CborListInputOutput": {
        "type": "structure",
        "members": {
          "stringList": {
            "shape": "StringList"
          },
          "stringSet": {
            "shape": "StringSet"
          },
          "integerList": {
            "shape": "IntegerList"
          },
          "booleanList": {
            "shape": "BooleanList"
          },
          "timestampList": {
            "shape": "TimestampList"
          },
          "enumList": {
            "shape": "FooEnumList"
          },
          "intEnumList": {
            "shape": "IntegerEnumList"
          },
          "nestedStringList": {
            "shape": "NestedStringList"
          },
          "structureList": {
            "shape": "StructureList"
          },
          "blobList": {
            "shape": "BlobList"
          }
        }
      },
      "StringList": {
        "type": "list",
        "member": {
          "shape": "String"
        }
      },
      "StringSet": {
        "type": "list",
        "member": {
          "shape": "String"
        }
      },
      "IntegerList": {
        "type": "list",
        "member": {
          "shape": "Integer"
        }
      },
      "BooleanList": {
        "type": "list",
        "member": {
          "shape": "Boolean"
        }
      },
      "TimestampList": {
        "type": "list",
        "member": {
          "shape": "Timestamp"
        }
      },
      "FooEnumList": {
        "type": "list",
        "member": {
          "shape": "FooEnum"
        }
      },
      "IntegerEnumList": {
        "type": "list",
        "member": {
          "shape": "IntegerEnum"
        }
      },
      "NestedStringList": {
        "type": "list",
        "member": {
          "shape": "StringList"
        },
        "documentation": "<p>A list of lists of strings.</p>"
      },
      "StructureList": {
        "type": "list",
        "member": {
          "shape": "StructureListMember"
        }
      },
      "BlobList": {
        "type": "list",
        "member": {
          "shape": "Blob"
        }
      },
      "Blob": {
        "type": "blob"
      },
      "StructureListMember": {
        "type": "structure",
        "members": {
          "a": {
            "shape": "String"
          },
          "b": {
            "shape": "String"
          }
        }
      },
      "String": {
        "type": "string"
      },
      "IntegerEnum": {
        "type": "integer",
        "box": true
      },
      "FooEnum": {
        "type": "string",
        "enum": [
          "Foo",
          "Baz",
          "Bar",
          "1",
          "0"
        ]
      },
      "Timestamp": {
        "type": "timestamp"
      },
      "Boolean": {
        "type": "boolean",
        "box": true
      },
      "Integer": {
        "type": "integer",
        "box": true
      }
    },
    "cases": [
      {
        "id": "RpcV2CborLists",
        "description": "Serializes RpcV2 Cbor lists",
        "given": {
          "name": "RpcV2CborLists",
          "http": {
            "method": "POST",
            "requestUri": "/"
          },
          "input": {
            "shape": "RpcV2CborListInputOutput"
          },
          "documentation": "<p>This test case serializes JSON lists for the following cases for both input and output:</p> <ol> <li>Normal lists.</li> <li>Normal sets.</li> <li>Lists of lists.</li> <li>Lists of structures.</li> </ol>",
          "idempotent": true
        },
        "params": {
          "stringList": [
            "foo",
            "bar"
          ],
          "stringSet": [
            "foo",
            "bar"
          ],
          "integerList": [
            1,
            2
          ],
          "booleanList": [
            true,
            false
          ],
          "timestampList": [
            1398796238,
            1398796238
          ],
          "enumList": [
            "Foo",
            "0"
          ],
          "intEnumList": [
            1,
            2
          ],
          "nestedStringList": [
            [
              "foo",
              "bar"
            ],
            [
              "baz",
              "qux"
            ]
          ],
          "structureList": [
            {
              "a": "1",
              "b": "2"
            },
            {
              "a": "3",
              "b": "4"
            }
          ],
          "blobList": [
            "foo",
            "bar"
          ]
        },
        "serialized": {
          "method": "POST",
          "uri": "/service/RpcV2Protocol/operation/RpcV2CborLists",
          "body": "v2pzdHJpbmdMaXN0gmNmb29jYmFyaXN0cmluZ1NldIJjZm9vY2JhcmtpbnRlZ2VyTGlzdIIBAmtib29sZWFuTGlzdIL19G10aW1lc3RhbXBMaXN0gsH7QdTX+/OAAADB+0HU1/vzgAAAaGVudW1MaXN0gmNGb29hMGtpbnRFbnVtTGlzdIIBAnBuZXN0ZWRTdHJpbmdMaXN0goJjZm9vY2JhcoJjYmF6Y3F1eG1zdHJ1Y3R1cmVMaXN0gqJhYWExYWJhMqJhYWEzYWJhNGhibG9iTGlzdIJDZm9vQ2Jhcv8=",
          "headers": {
            "smithy-protocol": "rpc-v2-cbor",
            "Accept": "application/cbor",
            "Content-Type": "application/cbor"
          },
          "requireHeaders": [
            "Content-Length"
          ]
        }
      },
      {
        "id": "RpcV2CborListsEmpty",
        "description": "Serializes empty JSON lists",
        "given": {
          "name": "RpcV2CborLists",
          "http": {
            "method": "POST",
            "requestUri": "/"
          },
          "input": {
            "shape": "RpcV2CborListInputOutput"
          },
          "documentation": "<p>This test case serializes JSON lists for the following cases for both input and output:</p> <ol> <li>Normal lists.</li> <li>Normal sets.</li> <li>Lists of lists.</li> <li>Lists of structures.</li> </ol>",
          "idempotent": true
        },
        "params": {
          "stringList": []
        },
        "serialized": {
          "method": "POST",
          "uri": "/service/RpcV2Protocol/operation/RpcV2CborLists",
          "body": "v2pzdHJpbmdMaXN0n///",
          "headers": {
            "smithy-protocol": "rpc-v2-cbor",
            "Accept": "application/cbor",
            "Content-Type": "application/cbor"
          },
          "requireHeaders": [
            "Content-Length"
          ]
        }
      },
      {
        "id": "RpcV2CborListsEmptyUsingDefiniteLength",
        "description": "Serializes empty JSON definite length lists",
        "given": {
          "name": "RpcV2CborLists",
          "http": {
            "method": "POST",
            "requestUri": "/"
          },
          "input": {
            "shape": "RpcV2CborListInputOutput"
          },
          "documentation": "<p>This test case serializes JSON lists for the following cases for both input and output:</p> <ol> <li>Normal lists.</li> <li>Normal sets.</li> <li>Lists of lists.</li> <li>Lists of structures.</li> </ol>",
          "idempotent": true
        },
        "params": {
          "stringList": []
        },
        "serialized": {
          "method": "POST",
          "uri": "/service/RpcV2Protocol/operation/RpcV2CborLists",
          "body": "oWpzdHJpbmdMaXN0gA==",
          "headers": {
            "smithy-protocol": "rpc-v2-cbor",
            "Accept": "application/cbor",
            "Content-Type": "application/cbor"
          },
          "requireHeaders": [
            "Content-Length"
          ]
        }
      }
    ]
  },
  {
    "description": "Test cases for SimpleScalarProperties operation",
    "metadata": {
      "apiVersion": "2020-07-14",
      "auth": [
        "aws.auth#sigv4"
      ],
      "endpointPrefix": "rpcv2protocol",
      "protocol": "smithy-rpc-v2-cbor",
      "protocols": [
        "smithy-rpc-v2-cbor"
      ],
      "serviceFullName": "RpcV2Protocol",
      "serviceId": "RpcV2Protocol",
      "signatureVersion": "v4",
      "signingName": "RpcV2Protocol",
      "targetPrefix": "RpcV2Protocol",
      "uid": "rpcv2protocol-2020-07-14"
    },
    "shapes": {
      "SimpleScalarStructure": {
        "type": "structure",
        "members": {
          "trueBooleanValue": {
            "shape": "Boolean"
          },
          "falseBooleanValue": {
            "shape": "Boolean"
          },
          "byteValue": {
            "shape": "Integer"
          },
          "doubleValue": {
            "shape": "Double"
          },
          "floatValue": {
            "shape": "Float"
          },
          "integerValue": {
            "shape": "Integer"
          },
          "longValue": {
            "shape": "Long"
          },
          "shortValue": {
            "shape": "Integer"
          },
          "stringValue": {
            "shape": "String"
          },
          "blobValue": {
            "shape": "Blob"
          }
        }
      },
      "Boolean": {
        "type": "boolean",
        "box": true
      },
      "Integer": {
        "type": "integer",
        "box": true
      },
      "Double": {
        "type": "double",
        "box": true
      },
      "Float": {
        "type": "float",
        "box": true
      },
      "Long": {
        "type": "long",
        "box": true
      },
      "String": {
        "type": "string"
      },
      "Blob": {
        "type": "blob"
      }
    },
    "cases": [
      {
        "id": "RpcV2CborSimpleScalarProperties",
        "description": "Serializes simple scalar properties",
        "given": {
          "name": "SimpleScalarProperties",
          "http": {
            "method": "POST",
            "requestUri": "/"
          },
          "input": {
            "shape": "SimpleScalarStructure"
          }
        },
        "params": {
          "byteValue": 5,
          "doubleValue": 1.889,
          "falseBooleanValue": false,
          "floatValue": 7.625,
          "integerValue": 256,
          "longValue": 9873,
          "shortValue": 9898,
          "stringValue": "simple",
          "trueBooleanValue": true,
          "blobValue": "foo"
        },
        "serialized": {
          "method": "POST",
          "uri": "/service/RpcV2Protocol/operation/SimpleScalarProperties",
          "body": "v2lieXRlVmFsdWUFa2RvdWJsZVZhbHVl+z/+OVgQYk3TcWZhbHNlQm9vbGVhblZhbHVl9GpmbG9hdFZhbHVl+kD0AABsaW50ZWdlclZhbHVlGQEAaWxvbmdWYWx1ZRkmkWpzaG9ydFZhbHVlGSaqa3N0cmluZ1ZhbHVlZnNpbXBsZXB0cnVlQm9vbGVhblZhbHVl9WlibG9iVmFsdWVDZm9v/w==",
          "headers": {
            "smithy-protocol": "rpc-v2-cbor",
            "Accept": "application/cbor",
            "Content-Type": "application/cbor"
          },
          "requireHeaders": [
            "Content-Length"
          ]
        }
      },
      {
        "id": "RpcV2CborClientDoesntSerializeNullStructureValues",
        "description": "RpcV2 Cbor should not serialize null structure values",
        "given": {
          "name": "SimpleScalarProperties",
          "http": {
            "method": "POST",
            "requestUri": "/"
          },
          "input": {
            "shape": "SimpleScalarStructure"
          }
        },
        "params": {
          "stringValue": null
        },
        "serialized": {
          "method": "POST",
          "uri": "/service/RpcV2Protocol/operation/SimpleScalarProperties",
          "body": "v/8=",
          "headers": {
            "smithy-protocol": "rpc-v2-cbor",
            "Accept": "application/cbor",
            "Content-Type": "application/cbor"
          },
          "requireHeaders": [
            "Content-Length"
          ]
        }
      },
      {
        "id": "RpcV2CborSupportsNaNFloatInputs",
        "description": "Supports handling NaN float values.",
        "given": {
          "name": "SimpleScalarProperties",
          "http": {
            "method": "POST",
            "requestUri": "/"
          },
          "input": {
            "shape": "SimpleScalarStructure"
          }
        },
        "params": {
          "doubleValue": "NaN",
          "floatValue": "NaN"
        },
        "serialized": {
          "method": "POST",
          "uri": "/service/RpcV2Protocol/operation/SimpleScalarProperties",
          "body": "v2tkb3VibGVWYWx1Zft/+AAAAAAAAGpmbG9hdFZhbHVl+n/AAAD/",
          "headers": {
            "smithy-protocol": "rpc-v2-cbor",
            "Accept": "application/cbor",
            "Content-Type": "application/cbor"
          },
          "requireHeaders": [
            "Content-Length"
          ]
        }
      },
      {
        "id": "RpcV2CborSupportsInfinityFloatInputs",
        "description": "Supports handling Infinity float values.",
        "given": {
          "name": "SimpleScalarProperties",
          "http": {
            "method": "POST",
            "requestUri": "/"
          },
          "input": {
            "shape": "SimpleScalarStructure"
          }
        },
        "params": {
          "doubleValue": "Infinity",
          "floatValue": "Infinity"
        },
        "serialized": {
          "method": "POST",
          "uri": "/service/RpcV2Protocol/operation/SimpleScalarProperties",
          "body": "v2tkb3VibGVWYWx1Zft/8AAAAAAAAGpmbG9hdFZhbHVl+n+AAAD/",
          "headers": {
            "smithy-protocol": "rpc-v2-cbor",
            "Accept": "application/cbor",
            "Content-Type": "application/cbor"
          },
          "requireHeaders": [
            "Content-Length"
          ]
        }
      },
      {
        "id": "RpcV2CborSupportsNegativeInfinityFloatInputs",
        "description": "Supports handling Infinity float values.",
        "given": {
          "name": "SimpleScalarProperties",
          "http": {
            "method": "POST",
            "requestUri": "/"
          },
          "input": {
            "shape": "SimpleScalarStructure"
          }
        },
        "params": {
          "doubleValue": "-Infinity",
          "floatValue": "-Infinity"
        },
        "serialized": {
          "method": "POST",
          "uri": "/service/RpcV2Protocol/operation/SimpleScalarProperties",
          "body": "v2tkb3VibGVWYWx1Zfv/8AAAAAAAAGpmbG9hdFZhbHVl+v+AAAD/",
          "headers": {
            "smithy-protocol": "rpc-v2-cbor",
            "Accept": "application/cbor",
            "Content-Type": "application/cbor"
          },
          "requireHeaders": [
            "Content-Length"
          ]
        }
      }
    ]
  }
]
