From 5a73267eba2874080bbf87c7a0416bd3baac3ab7 Mon Sep 17 00:00:00 2001 From: SergeyRyabinin Date: Wed, 9 Apr 2025 17:07:15 +0000 Subject: [PATCH 1/2] Protocol tests generate suites with request input setting --- .../aws/testing/AwsProtocolTestHelpers.h | 16 +++ .../protocol_test/ProtocolTestCase.java | 90 +++++++++++++ .../protocol_test/ProtocolTestModel.java | 23 ++++ .../protocol_test/ProtocolTestSuite.java | 41 ++++++ .../generators/MainGenerator.java | 11 +- .../cpp/CppProtocolTestGenerator.java | 43 +++++-- ...otocolTestToGeneratorModelTransformer.java | 121 ++++++++++++++++++ .../protocoltests/ProtocolTestsCMakeLists.vm | 1 + ...sSource.vm => ProtocolTestsRunTestsSrc.vm} | 0 .../ProtocolTestsTestSuiteSrc.vm | 32 +++++ .../protocoltests/request/FillParamsMacro.vm | 48 +++++++ .../cpp/protocoltests/request/FillRequest.vm | 12 ++ .../request/SerializeSingleParameterMacro.vm | 49 +++++++ .../request/SerializeStreamingPayload.vm | 5 + .../cpp/protocoltests/request/SetListMacro.vm | 43 +++++++ .../cpp/protocoltests/request/SetMapMacro.vm | 41 ++++++ ...-protocol-namespace-2019-12-16.normal.json | 121 ------------------ 17 files changed, 565 insertions(+), 132 deletions(-) create mode 100644 tests/testing-resources/include/aws/testing/AwsProtocolTestHelpers.h create mode 100644 tools/code-generation/generator/src/main/java/com/amazonaws/util/awsclientgenerator/domainmodels/protocol_test/ProtocolTestCase.java create mode 100644 tools/code-generation/generator/src/main/java/com/amazonaws/util/awsclientgenerator/domainmodels/protocol_test/ProtocolTestModel.java create mode 100644 tools/code-generation/generator/src/main/java/com/amazonaws/util/awsclientgenerator/domainmodels/protocol_test/ProtocolTestSuite.java create mode 100644 tools/code-generation/generator/src/main/java/com/amazonaws/util/awsclientgenerator/transform/C2jProtocolTestToGeneratorModelTransformer.java rename tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/{ProtocolTestsSource.vm => ProtocolTestsRunTestsSrc.vm} (100%) create mode 100644 tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/ProtocolTestsTestSuiteSrc.vm create mode 100644 tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/FillParamsMacro.vm create mode 100644 tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/FillRequest.vm create mode 100644 tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/SerializeSingleParameterMacro.vm create mode 100644 tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/SerializeStreamingPayload.vm create mode 100644 tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/SetListMacro.vm create mode 100644 tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/SetMapMacro.vm delete mode 100644 tools/code-generation/protocol-tests/api-descriptions/rest-xml-protocol-namespace-2019-12-16.normal.json diff --git a/tests/testing-resources/include/aws/testing/AwsProtocolTestHelpers.h b/tests/testing-resources/include/aws/testing/AwsProtocolTestHelpers.h new file mode 100644 index 00000000000..18189aa6cdd --- /dev/null +++ b/tests/testing-resources/include/aws/testing/AwsProtocolTestHelpers.h @@ -0,0 +1,16 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once + +#include +#include s +#include + + +#define AWS_PROTOCOL_TEST TEST_F +#define AWS_PROTOCOL_TEST_SUITE Aws::Testing::AwsCppSdkGTestSuite + +using JsonValue = Aws::Utils::Json::JsonValue; diff --git a/tools/code-generation/generator/src/main/java/com/amazonaws/util/awsclientgenerator/domainmodels/protocol_test/ProtocolTestCase.java b/tools/code-generation/generator/src/main/java/com/amazonaws/util/awsclientgenerator/domainmodels/protocol_test/ProtocolTestCase.java new file mode 100644 index 00000000000..1e4dc090f36 --- /dev/null +++ b/tools/code-generation/generator/src/main/java/com/amazonaws/util/awsclientgenerator/domainmodels/protocol_test/ProtocolTestCase.java @@ -0,0 +1,90 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +package com.amazonaws.util.awsclientgenerator.domainmodels.protocol_test; + +import com.amazonaws.util.awsclientgenerator.domainmodels.c2j_protocol_test.C2jGiven; +import com.amazonaws.util.awsclientgenerator.domainmodels.c2j_protocol_test.C2jInputSerialized; +import com.amazonaws.util.awsclientgenerator.domainmodels.c2j_protocol_test.C2jOutputResponse; +import com.fasterxml.jackson.databind.JsonNode; +import lombok.Data; + +import java.util.Optional; + +@Data +public class ProtocolTestCase { + + // Smithy test case definitions unlike c2j do not differentiate input/output cases + // Using generic, more smithy-like intermediate codegen model. + @Data + public static class Input { + /** + * The input parameters a user would provide. + */ + private JsonNode params; + /** + * The expected serialized HTTP request. + */ + private C2jInputSerialized serialized; + } + + @Data + public static class Output { + @Data + public static class SuccessResult { + /** + * A JSON hash representing the structure of the parsed response. Either this or error (not both) must appear in the test case. + */ + private Optional result; + } + + @Data + public static class ErrorResult { + /** + * A JSON hash representing the structure of the parsed error response. Either this or result (not both) must appear in the test case. + */ + private Optional error; + /** + * A string specifying the AWS error code extracted from the response. Corresponds to the error shape to be unmarshalled and + * should always be set, even when the shape can not be found. Must be present when the error key is present. + */ + private String errorCode; + /** + * A string specifying the error message extracted from the response. + * Should be able to be extracted even when an error shape is not unmarshalled. May only be present when the error key is present. + */ + private String errorMessage; + } + + private boolean isError; + + // Success or error must be present + Optional successResult; + Optional errorResult; + + /** + * The HTTP response to be parsed + */ + private C2jOutputResponse response; + } + + /** + * A test case id. + */ + private String id; + /** + * A test case description. + */ + private String description; + /** + * This corresponds to the JSON object that would define an operation in the service's JSON model. + * Valid keys include http, input, endpoint, and name. + */ + private C2jGiven given; + + // Input or output must be present + Optional input; + Optional output; +} diff --git a/tools/code-generation/generator/src/main/java/com/amazonaws/util/awsclientgenerator/domainmodels/protocol_test/ProtocolTestModel.java b/tools/code-generation/generator/src/main/java/com/amazonaws/util/awsclientgenerator/domainmodels/protocol_test/ProtocolTestModel.java new file mode 100644 index 00000000000..e298b358f18 --- /dev/null +++ b/tools/code-generation/generator/src/main/java/com/amazonaws/util/awsclientgenerator/domainmodels/protocol_test/ProtocolTestModel.java @@ -0,0 +1,23 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +package com.amazonaws.util.awsclientgenerator.domainmodels.protocol_test; + +import com.amazonaws.util.awsclientgenerator.domainmodels.c2j_protocol_test.C2jTestSuite; +import lombok.Data; + +import java.util.List; + +@Data +public class ProtocolTestModel { + private String name; + private String serviceToUse; + public enum TestSuiteType { + INPUT, + OUTPUT + } + C2jTestSuite.TestSuiteType type; + private List testSuites; +} diff --git a/tools/code-generation/generator/src/main/java/com/amazonaws/util/awsclientgenerator/domainmodels/protocol_test/ProtocolTestSuite.java b/tools/code-generation/generator/src/main/java/com/amazonaws/util/awsclientgenerator/domainmodels/protocol_test/ProtocolTestSuite.java new file mode 100644 index 00000000000..ee237f8959d --- /dev/null +++ b/tools/code-generation/generator/src/main/java/com/amazonaws/util/awsclientgenerator/domainmodels/protocol_test/ProtocolTestSuite.java @@ -0,0 +1,41 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +package com.amazonaws.util.awsclientgenerator.domainmodels.protocol_test; + +import com.amazonaws.util.awsclientgenerator.domainmodels.c2j.C2jMetadata; +import com.amazonaws.util.awsclientgenerator.domainmodels.c2j.C2jShape; +import lombok.Data; + +import java.util.List; +import java.util.Map; + +@Data +public class ProtocolTestSuite { + /** + * A name for the test suite + */ + private String name; + /** + * A description of the tests + */ + private String description; + /** + * The top level metadata that would correspond to the metadata key in the service's JSON model. + */ + private C2jMetadata metadata; + /** + * A URL string the test cases must use when constructing the request's URL endpoint. + */ + private String clientEndpoint; + /** + * A JSON object of C2jShapes. This would correspond to the top level C2jShapes key in the service's JSON model. + */ + private Map shapes; + /** + * a list of test cases + */ + private List cases; +} diff --git a/tools/code-generation/generator/src/main/java/com/amazonaws/util/awsclientgenerator/generators/MainGenerator.java b/tools/code-generation/generator/src/main/java/com/amazonaws/util/awsclientgenerator/generators/MainGenerator.java index 542d9758298..1f66ccdbbd3 100644 --- a/tools/code-generation/generator/src/main/java/com/amazonaws/util/awsclientgenerator/generators/MainGenerator.java +++ b/tools/code-generation/generator/src/main/java/com/amazonaws/util/awsclientgenerator/generators/MainGenerator.java @@ -16,11 +16,13 @@ import com.amazonaws.util.awsclientgenerator.domainmodels.defaults.BaseOption; import com.amazonaws.util.awsclientgenerator.domainmodels.defaults.BaseOptionModifier; import com.amazonaws.util.awsclientgenerator.domainmodels.defaults.DefaultClientConfigs; +import com.amazonaws.util.awsclientgenerator.domainmodels.protocol_test.ProtocolTestModel; import com.amazonaws.util.awsclientgenerator.generators.cpp.CppDefaultsGenerator; import com.amazonaws.util.awsclientgenerator.generators.cpp.CppPartitionsGenerator; import com.amazonaws.util.awsclientgenerator.generators.cpp.CppProtocolTestGenerator; import com.amazonaws.util.awsclientgenerator.generators.cpp.CppServiceClientTestGenerator; import com.amazonaws.util.awsclientgenerator.transform.C2jModelToGeneratorModelTransformer; +import com.amazonaws.util.awsclientgenerator.transform.C2jProtocolTestToGeneratorModelTransformer; import java.io.*; import java.nio.charset.StandardCharsets; @@ -108,7 +110,7 @@ public ByteArrayOutputStream generateTestSourceFromModel(C2jServiceModel c2jMode } public ByteArrayOutputStream generateProtocolTestSourceFromModel(C2jServiceModel c2jModel, - C2jTestSuite testSuiteModel) throws Exception { + C2jTestSuite c2jTestModel) throws Exception { SdkSpec spec = new SdkSpec("cpp", c2jModel.getServiceName(), null); // Transform to intermediate code gen models from input c2j format. ServiceModel serviceModel = new C2jModelToGeneratorModelTransformer(c2jModel, false).convert(); @@ -122,9 +124,12 @@ public ByteArrayOutputStream generateProtocolTestSourceFromModel(C2jServiceModel spec.setVersion(serviceModel.getMetadata().getApiVersion()); // TODO: Also transform C2j Protocol test model to an intermediate code gen model - CppProtocolTestGenerator cppTestGenerator = new CppProtocolTestGenerator(serviceModel, testSuiteModel); + + C2jProtocolTestToGeneratorModelTransformer testTransformer = new C2jProtocolTestToGeneratorModelTransformer(); + ProtocolTestModel testModel = testTransformer.convert(c2jTestModel); + CppProtocolTestGenerator cppTestGenerator = new CppProtocolTestGenerator(serviceModel, testModel); SdkFileEntry[] apiFiles = cppTestGenerator.generateSourceFiles(serviceModel); - String componentOutputName = String.format("%s", testSuiteModel.getName()); + String componentOutputName = String.format("%s", testModel.getName()); return compressFilesToZip(apiFiles, componentOutputName); } diff --git a/tools/code-generation/generator/src/main/java/com/amazonaws/util/awsclientgenerator/generators/cpp/CppProtocolTestGenerator.java b/tools/code-generation/generator/src/main/java/com/amazonaws/util/awsclientgenerator/generators/cpp/CppProtocolTestGenerator.java index 30bab0c643e..e42585d266f 100644 --- a/tools/code-generation/generator/src/main/java/com/amazonaws/util/awsclientgenerator/generators/cpp/CppProtocolTestGenerator.java +++ b/tools/code-generation/generator/src/main/java/com/amazonaws/util/awsclientgenerator/generators/cpp/CppProtocolTestGenerator.java @@ -6,10 +6,12 @@ package com.amazonaws.util.awsclientgenerator.generators.cpp; import com.amazonaws.util.awsclientgenerator.domainmodels.SdkFileEntry; -import com.amazonaws.util.awsclientgenerator.domainmodels.c2j.C2jServiceModel; -import com.amazonaws.util.awsclientgenerator.domainmodels.c2j_protocol_test.C2jTestSuite; + import com.amazonaws.util.awsclientgenerator.domainmodels.codegeneration.ServiceModel; +import com.amazonaws.util.awsclientgenerator.domainmodels.codegeneration.cpp.CppViewHelper; +import com.amazonaws.util.awsclientgenerator.domainmodels.protocol_test.ProtocolTestModel; +import com.amazonaws.util.awsclientgenerator.domainmodels.protocol_test.ProtocolTestSuite; import com.amazonaws.util.awsclientgenerator.generators.ClientGenerator; import com.amazonaws.util.awsclientgenerator.generators.exceptions.SourceGenerationFailedException; import org.apache.velocity.Template; @@ -22,20 +24,21 @@ import java.io.IOException; import java.io.StringWriter; import java.nio.charset.StandardCharsets; -import java.util.ArrayList; -import java.util.List; +import java.util.*; +import java.util.stream.Collectors; public class CppProtocolTestGenerator implements ClientGenerator { private static String CMAKE_LISTS_TEMPLATE = "/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/ProtocolTestsCMakeLists.vm"; - private static String TEST_DRIVER_TEMPLATE = "/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/ProtocolTestsSource.vm"; + private static String RUN_TESTS_TEMPLATE = "/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/ProtocolTestsRunTestsSrc.vm"; + private static String TEST_SUITE_TEMPLATE = "/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/ProtocolTestsTestSuiteSrc.vm"; protected final VelocityEngine velocityEngine; private final ServiceModel serviceModel; - private final C2jTestSuite testModel; // TODO: use an intermediate codegen model instead of raw C2J + private final ProtocolTestModel testModel; // TODO: use an intermediate codegen model instead of raw C2J private final String projectName; - public CppProtocolTestGenerator(ServiceModel serviceModel, C2jTestSuite testSuiteModel) throws Exception { + public CppProtocolTestGenerator(ServiceModel serviceModel, ProtocolTestModel testSuiteModel) throws Exception { this.serviceModel = serviceModel; this.testModel = testSuiteModel; String prefix = testSuiteModel.getType().toString().toLowerCase(); @@ -52,10 +55,32 @@ public CppProtocolTestGenerator(ServiceModel serviceModel, C2jTestSuite testSuit velocityEngine.init(); } + protected SdkFileEntry generateTestSuiteSourceFile(ProtocolTestSuite testSuite) throws IOException { + VelocityContext context = createContext(); + context.put("testSuite", testSuite); + Template template = velocityEngine.getTemplate(TEST_SUITE_TEMPLATE, StandardCharsets.UTF_8.name()); + String fileName = String.format("tests/%sTest.cpp", testSuite.getName()); + + return makeFile(template, context, fileName, true); + } + + protected List generateTestSuiteSourceFiles() throws IOException { + return testModel.getTestSuites().stream() + .map(entry -> { + try { + return generateTestSuiteSourceFile(entry); + } catch (IOException e) { + throw new RuntimeException(e); + } + }) + .collect(Collectors.toList()); + } + public SdkFileEntry[] generateSourceFiles(ServiceModel dummy) throws Exception { List fileList = new ArrayList<>(); fileList.add(generateCmakeFile()); fileList.add(generateTestDriver()); + fileList.addAll(generateTestSuiteSourceFiles()); SdkFileEntry[] retArray = new SdkFileEntry[fileList.size()]; return fileList.toArray(retArray); @@ -69,7 +94,7 @@ private SdkFileEntry generateCmakeFile() throws Exception { protected SdkFileEntry generateTestDriver() throws Exception { VelocityContext context = createContext(); - Template template = velocityEngine.getTemplate(TEST_DRIVER_TEMPLATE, StandardCharsets.UTF_8.name()); + Template template = velocityEngine.getTemplate(RUN_TESTS_TEMPLATE, StandardCharsets.UTF_8.name()); return makeFile(template, context, "RunTests.cpp", true); } @@ -81,6 +106,8 @@ protected final VelocityContext createContext() { context.put("testModel", testModel); context.put("input.encoding", StandardCharsets.UTF_8.name()); context.put("output.encoding", StandardCharsets.UTF_8.name()); + + context.put("CppViewHelper", CppViewHelper.class); return context; } diff --git a/tools/code-generation/generator/src/main/java/com/amazonaws/util/awsclientgenerator/transform/C2jProtocolTestToGeneratorModelTransformer.java b/tools/code-generation/generator/src/main/java/com/amazonaws/util/awsclientgenerator/transform/C2jProtocolTestToGeneratorModelTransformer.java new file mode 100644 index 00000000000..7a069d7289e --- /dev/null +++ b/tools/code-generation/generator/src/main/java/com/amazonaws/util/awsclientgenerator/transform/C2jProtocolTestToGeneratorModelTransformer.java @@ -0,0 +1,121 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +package com.amazonaws.util.awsclientgenerator.transform; + +import com.amazonaws.util.awsclientgenerator.domainmodels.c2j_protocol_test.*; +import com.amazonaws.util.awsclientgenerator.domainmodels.protocol_test.ProtocolTestCase; +import com.amazonaws.util.awsclientgenerator.domainmodels.protocol_test.ProtocolTestModel; +import com.amazonaws.util.awsclientgenerator.domainmodels.protocol_test.ProtocolTestSuite; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Optional; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + + +public class C2jProtocolTestToGeneratorModelTransformer { + + private static final Pattern TEST_SUITE_PATTERN = Pattern.compile("Test cases for ([a-zA-Z0-9]+) operation"); + private HashMap alreadyUsedTestSuiteNames = new HashMap<>(); + + private String getTestSuiteName(String c2jDescription) { + Matcher matcher = TEST_SUITE_PATTERN.matcher(c2jDescription); + if (matcher.find()) { + String name = matcher.group(1); + if (alreadyUsedTestSuiteNames.containsKey(name)) { + name += alreadyUsedTestSuiteNames.put(name, alreadyUsedTestSuiteNames.get(name) + 1); + } else { + alreadyUsedTestSuiteNames.put(name, 0); + } + return name; + } else { + throw new RuntimeException("Unable to choose a test suite name for a protocol test model!"); + } + } + + public ProtocolTestModel convert(C2jTestSuite c2jTestSuite) { + ProtocolTestModel model = new ProtocolTestModel(); + model.setName(c2jTestSuite.getName()); + model.setServiceToUse(c2jTestSuite.getServiceToUse()); + model.setType(c2jTestSuite.getType()); + model.setTestSuites(new ArrayList()); + + + if (c2jTestSuite.getInputTestSuites() != null) { + for (C2jInputTestSuite inputTestSuite : c2jTestSuite.getInputTestSuites()) { + ProtocolTestSuite protocolTestSuite = new ProtocolTestSuite(); + protocolTestSuite.setName(getTestSuiteName(inputTestSuite.getDescription())); + protocolTestSuite.setDescription(inputTestSuite.getDescription()); + protocolTestSuite.setMetadata(inputTestSuite.getMetadata()); + protocolTestSuite.setClientEndpoint(inputTestSuite.getClientEndpoint()); + protocolTestSuite.setShapes(inputTestSuite.getShapes()); + protocolTestSuite.setCases(new ArrayList<>()); + + for (C2jInputTestCase inputTestCase : inputTestSuite.getCases()) { + ProtocolTestCase testCase = new ProtocolTestCase(); + testCase.setId(inputTestCase.getId()); + testCase.setDescription(inputTestCase.getDescription()); + testCase.setGiven(inputTestCase.getGiven()); + + Optional input = Optional.of(new ProtocolTestCase.Input()); + input.get().setParams(inputTestCase.getParams()); + input.get().setSerialized(inputTestCase.getSerialized()); + testCase.setInput(input); + + protocolTestSuite.getCases().add(testCase); + } + model.getTestSuites().add(protocolTestSuite); + } + } + + if (c2jTestSuite.getOutputTestSuites() != null) { + for (C2jOutputTestSuite outputTestSuite : c2jTestSuite.getOutputTestSuites()) { + ProtocolTestSuite protocolTestSuite = new ProtocolTestSuite(); + protocolTestSuite.setName(getTestSuiteName(outputTestSuite.getDescription())); + protocolTestSuite.setDescription(outputTestSuite.getDescription()); + protocolTestSuite.setMetadata(outputTestSuite.getMetadata()); + protocolTestSuite.setClientEndpoint(outputTestSuite.getClientEndpoint()); + protocolTestSuite.setShapes(outputTestSuite.getShapes()); + protocolTestSuite.setCases(new ArrayList<>()); + + for (C2jOutputTestCase outputTestCase : outputTestSuite.getCases()) { + ProtocolTestCase testCase = new ProtocolTestCase(); + testCase.setId(outputTestCase.getId()); + testCase.setDescription(outputTestCase.getDescription()); + testCase.setGiven(outputTestCase.getGiven()); + + Optional output = Optional.of(new ProtocolTestCase.Output()); + if (outputTestCase.getError() != null && outputTestCase.getResult() != null) { + throw new RuntimeException("Protocol test for output contains both error and success expected result!"); + } + + output.get().setResponse(outputTestCase.getResponse()); + + if (outputTestCase.getError() != null) { + output.get().setError(true); + Optional error = Optional.of(new ProtocolTestCase.Output.ErrorResult()); + error.get().setError(Optional.of(outputTestCase.getError())); + error.get().setErrorMessage(outputTestCase.getErrorMessage()); + error.get().setErrorCode(outputTestCase.getErrorCode()); + } else { + output.get().setError(false); + Optional success = Optional.of(new ProtocolTestCase.Output.SuccessResult()); + success.get().setResult(Optional.of(outputTestCase.getResult())); + } + + output.get().setResponse(outputTestCase.getResponse()); + testCase.setOutput(output); + protocolTestSuite.getCases().add(testCase); + } + model.getTestSuites().add(protocolTestSuite); + } + } + + return model; + } +} diff --git a/tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/ProtocolTestsCMakeLists.vm b/tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/ProtocolTestsCMakeLists.vm index 3d7af73bfab..71aa54bad46 100644 --- a/tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/ProtocolTestsCMakeLists.vm +++ b/tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/ProtocolTestsCMakeLists.vm @@ -9,6 +9,7 @@ add_project($projectName file(GLOB $awsProjectProtocolTestSrc "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp" + "${CMAKE_CURRENT_SOURCE_DIR}/tests/*.cpp" ) if(MSVC AND BUILD_SHARED_LIBS) diff --git a/tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/ProtocolTestsSource.vm b/tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/ProtocolTestsRunTestsSrc.vm similarity index 100% rename from tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/ProtocolTestsSource.vm rename to tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/ProtocolTestsRunTestsSrc.vm diff --git a/tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/ProtocolTestsTestSuiteSrc.vm b/tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/ProtocolTestsTestSuiteSrc.vm new file mode 100644 index 00000000000..36cbb8925a6 --- /dev/null +++ b/tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/ProtocolTestsTestSuiteSrc.vm @@ -0,0 +1,32 @@ +#parse("com/amazonaws/util/awsclientgenerator/velocity/cfamily/Attribution.vm") +#set($serviceNs = $serviceModel.metadata.namespace) +#set($serviceClient = "${serviceModel.metadata.classNamePrefix}Client") +\#include +\#include +\#include +#set($modelIncludes = {}) +#foreach($case in $testSuite.cases) +#set($dummy = $modelIncludes.put("${testSuite.name}", "")) +#end +#foreach($include in $modelIncludes) +\#include $include +#end + +using $testSuite.name = AWS_PROTOCOL_TEST_SUITE; +using $serviceClient = Aws::$serviceNs::$serviceClient; +using namespace Aws::$serviceNs::Model; +#foreach($case in $testSuite.cases) + +AWS_PROTOCOL_TEST($testSuite.name, $case.id) { + $serviceClient client; + ${testSuite.name}Request request; +#parse("com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/FillRequest.vm") + + auto outcome = client.${testSuite.name}(request); +#if($case.input) + AWS_ASSERT_SUCCESS(outcome); +#else + ASSERT_FALSE(outcome.IsSuccess()); +#end +} +#end diff --git a/tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/FillParamsMacro.vm b/tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/FillParamsMacro.vm new file mode 100644 index 00000000000..f0f665ff409 --- /dev/null +++ b/tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/FillParamsMacro.vm @@ -0,0 +1,48 @@ +#parse("com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/SerializeSingleParameterMacro.vm") +#parse("com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/SerializeStreamingPayload.vm") +#parse("com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/SetListMacro.vm") +#parse("com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/SetMapMacro.vm") +##-------------------- FillParamsMacro macro +#macro( FillParamsMacro $spaces $dstObject $currentShape $testInputParam ) +#set($macro.spaces = $spaces) +#if(!$currentShape.members.containsKey($testInputParam.key) && $testInputParam.key != "contentType") +static_assert(false, "Codegen failure: Test input has a key $testInputParam.key not found in the model for the current shape: $currentShape"); +#end +#if(!$testInputParam || !$testInputParam.key) +static_assert(false, "Codegen failure!"); +/* currentShape = R"($currentShape)" */ +/* currentShape.members = R"($currentShape.members)" */ +/* macro.memberToSet = R"($macro.memberToSet)" */ +/* dstObject = R"($dstObject)" */ +/* testInputParam = R"($testInputParam)" */ +#break +#end +#set($macro.fieldSetter = "Set${CppViewHelper.capitalizeFirstChar($testInputParam.key)}") +#set($macro.memberToSet = $currentShape.members.get($testInputParam.key)) +#if($macro.memberToSet.shape.list) +#SetListMacro($macro.spaces $dstObject $macro.memberToSet.shape $testInputParam) +#elseif($macro.memberToSet.shape.map) +#SetMapMacro($macro.spaces $dstObject $macro.memberToSet.shape $testInputParam) +#elseif($macro.memberToSet.shape.document) +#set($macro.innerStructVarName = "${dstObject}${CppViewHelper.capitalizeFirstChar(${CppViewHelper.computeVariableName($testInputParam.key)})}") +${macro.spaces}{ + ${macro.spaces}Aws::Utils::Document ${macro.innerStructVarName}(R"j(${testInputParam.value})j"); + ${macro.spaces}${dstObject}.${macro.fieldSetter}($macro.innerStructVarName); +${macro.spaces}} +#elseif($macro.memberToSet.shape.structure) +${macro.spaces}{ +#set($macro.innerStructVarName = "${dstObject}${CppViewHelper.capitalizeFirstChar(${CppViewHelper.computeVariableName($testInputParam.key)})}") + ${macro.spaces}${macro.memberToSet.shape.name} $macro.innerStructVarName; +#foreach($innerParam in $testInputParam.value.fields()) +#FillParamsMacro("${macro.spaces} ", $macro.innerStructVarName, $macro.memberToSet.shape, $innerParam) +#end + ${macro.spaces}${dstObject}.${macro.fieldSetter}($macro.innerStructVarName); +${macro.spaces}} +#elseif($testInputParam.key != "contentType" && $currentShape.members.containsKey($testInputParam.key) && $CppViewHelper.isStreamingPayloadMember($currentShape, $testInputParam.key)) +${macro.spaces}${dstObject}.SetBody(#SerializeStreamingPayload($macro.memberToSet.shape, $testInputParam.value)); +#elseif(!$macro.memberToSet) +${macro.spaces}${dstObject}.${macro.fieldSetter}($testInputParam.value); +#else +${macro.spaces}${dstObject}.${macro.fieldSetter}(#SerializeSingleParameterMacro($macro.memberToSet.shape, $testInputParam.value)); +#end +#end##macro FillParamsMacro \ No newline at end of file diff --git a/tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/FillRequest.vm b/tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/FillRequest.vm new file mode 100644 index 00000000000..1dcc9c15d59 --- /dev/null +++ b/tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/FillRequest.vm @@ -0,0 +1,12 @@ +#parse("com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/FillParamsMacro.vm") +#if($case.input && !$case.input.get().params.isEmpty()) +#set($requestShape="") +#if($case.given.input.shape) +#set($requestShape = $serviceModel.shapes.get($case.given.input.shape)) +#end +#foreach($param in $case.input.get().params.fields()) +#FillParamsMacro(" ", "request", $requestShape, $param) +#end +#else +## // params are empty: $case.input and !$case.input.get().params.isEmpty() +#end \ No newline at end of file diff --git a/tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/SerializeSingleParameterMacro.vm b/tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/SerializeSingleParameterMacro.vm new file mode 100644 index 00000000000..1409523e2fb --- /dev/null +++ b/tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/SerializeSingleParameterMacro.vm @@ -0,0 +1,49 @@ +##-------------------- SerializeSingleParameterMacro macro +#macro( SerializeSingleParameterMacro $shape $value ) +##/* shape = R"($shape)"; value = $value */ ## +#if($shape.type == "float" || $shape.type == "double") +##float is code generated as double in CPP SDK +#if($value == '"NaN"') +std::numeric_limits::quiet_NaN()## +#elseif($value == '"Infinity"') +std::numeric_limits::infinity()## +#elseif($value == '"-Infinity"') +-std::numeric_limits::infinity()## +#else +${value}## +#end +#break +#end###if($shape.double) +#if($shape.primitive || $shape.boolean) +${value}## +#elseif($shape.string || $shape.blob) +R"(${value.asText()})"## +#elseif($shape.timeStamp) +Aws::Utils::DateTime(${value})## +#elseif($shape.enum) +${shape.name}Mapper::Get${shape.name}ForName(R"e(${value.asText()})e")## +#elseif($shape.list) +#set($macro.listResult="{") +#foreach($listItem in $value) +#set($macro.listResult=$macro.listResult + "#SerializeSingleParameterMacro($shape.listMember.shape, $listItem)") +#if($foreach.hasNext)#set($macro.listResult=$macro.listResult + ", ")#end +#end +#set($macro.listResult=$macro.listResult + "}") +$macro.listResult## +#elseif($shape.map) +#set($macro.mapResult="{") +#foreach($mapItem in $value.fields()) +#set($macro.mapItem="{" + '"' + "$mapItem.key" + '"' + ", ") +#set($macro.mapItem=$macro.mapItem + "#SerializeSingleParameterMacro($shape.mapValue.shape, $mapItem.value)" + "}") +#set($macro.mapResult=$macro.mapResult + $macro.mapItem) +#if($foreach.hasNext)#set($macro.mapResult=$macro.mapResult + ", ")#end +#end +#set($macro.mapResult=$macro.mapResult + "}") +$macro.mapResult## +#elseif($shape.structure) +${shape.name}(JsonValue(R"j($value)j"))## +#else +${value}; +static_assert(false, R"(Codegen failure: Unsupported input $value for shape ${shape} with type ${shape.type})"; +#end +#end##macro SerializeSingleParameterMacro \ No newline at end of file diff --git a/tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/SerializeStreamingPayload.vm b/tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/SerializeStreamingPayload.vm new file mode 100644 index 00000000000..23a7910f4ff --- /dev/null +++ b/tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/SerializeStreamingPayload.vm @@ -0,0 +1,5 @@ +#parse("com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/SerializeSingleParameterMacro.vm") +##-------------------- SerializeStreamingPayload macro +#macro( SerializeStreamingPayload $shape $value ) +[](){ return Aws::MakeShared("Test", #SerializeSingleParameterMacro($shape, $value), std::ios_base::in | std::ios_base::binary); }() ## +#end##macro SerializeStreamingPayload \ No newline at end of file diff --git a/tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/SetListMacro.vm b/tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/SetListMacro.vm new file mode 100644 index 00000000000..98ee03ac132 --- /dev/null +++ b/tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/SetListMacro.vm @@ -0,0 +1,43 @@ +#parse("com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/SerializeSingleParameterMacro.vm") +#parse("com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/FillParamsMacro.vm") +##-------------------- SetListMacro macro +#macro( SetListMacro $spaces $dstObject $listShape $testInputParam ) +#set($macro.spaces = $spaces) +#set($macro.listMemberShape=$listShape.listMember.shape) +#if($macro.listMemberShape.list || $macro.listMemberShape.map || $macro.listMemberShape.structure) +#set($macro.listItemVarName = "${dstObject}${CppViewHelper.capitalizeFirstChar(${CppViewHelper.computeVariableName($testInputParam.key)})}Item") +#set($macro.fieldAdder = "Add${CppViewHelper.capitalizeFirstChar($testInputParam.key)}") +#foreach($arrayItem in $testInputParam.value) +${macro.spaces}{ +#if($macro.listMemberShape.list) + ${macro.spaces}Aws::Vector<$CppViewHelper.computeCppType($macro.listMemberShape.listMember.shape)> $macro.listItemVarName; +#foreach($innerListEl in $arrayItem) + ${macro.spaces}${macro.listItemVarName}.emplace_back(#SerializeSingleParameterMacro($macro.listMemberShape.listMember.shape, $innerListEl)); +#end + ${macro.spaces}${dstObject}.${macro.fieldAdder}($macro.listItemVarName); +#elseif($macro.listMemberShape.map) + ${macro.spaces}Aws::Map<$CppViewHelper.computeCppType($macro.listMemberShape.mapKey.shape), $CppViewHelper.computeCppType($macro.listMemberShape.mapValue.shape)> $macro.listItemVarName; +#foreach($innerMapEl in $arrayItem.fields()) + ${macro.spaces}${macro.listItemVarName}["$innerMapEl.key"] = #SerializeSingleParameterMacro($macro.listMemberShape.mapValue.shape, $innerMapEl.value); +#end + ${macro.spaces}${dstObject}.${macro.fieldAdder}($macro.listItemVarName); +#elseif($macro.listMemberShape.structure) + ${macro.spaces}${macro.listMemberShape.name} $macro.listItemVarName; +#foreach($innerParam in $arrayItem.fields()) +#FillParamsMacro("${macro.spaces} " $macro.listItemVarName $macro.listMemberShape $innerParam) +#end + ${macro.spaces}${dstObject}.${macro.fieldAdder}($macro.listItemVarName); +#end##list +${macro.spaces}} +#end##foreach +#else## not (list || map || structure) +#set($macro.fieldSetter = "Set${CppViewHelper.capitalizeFirstChar($testInputParam.key)}") +#set($macro.listResult="{") +#foreach($arrayItem in $testInputParam.value) +#set($macro.listResult=$macro.listResult + "#SerializeSingleParameterMacro($macro.listMemberShape, $arrayItem)") +#if($foreach.hasNext)#set($macro.listResult=$macro.listResult + ", ")#end +#end +#set($macro.listResult=$macro.listResult + "}") +${spaces}${dstObject}.${macro.fieldSetter}($macro.listResult); +#end##(list || map || structure) +#end##macro SetListMacro \ No newline at end of file diff --git a/tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/SetMapMacro.vm b/tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/SetMapMacro.vm new file mode 100644 index 00000000000..809e27ce237 --- /dev/null +++ b/tools/code-generation/generator/src/main/resources/com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/SetMapMacro.vm @@ -0,0 +1,41 @@ +#parse("com/amazonaws/util/awsclientgenerator/velocity/cpp/protocoltests/request/SerializeSingleParameterMacro.vm") +##-------------------- SetMapMacro macro +#macro( SetMapMacro $spaces $dstObject $mapShape $testInputParam ) +#set($macro.fieldSetter = "Set${CppViewHelper.capitalizeFirstChar($testInputParam.key)}") +#set($macro.spaces = $spaces) +#if($mapShape.mapValue.shape.document) +#set($macro.mapItemVarName = "${dstObject}${CppViewHelper.capitalizeFirstChar(${CppViewHelper.computeVariableName($testInputParam.key)})}Item") +#set($macro.fieldAdder = "Add${CppViewHelper.capitalizeFirstChar($testInputParam.key)}") +#foreach($mapItem in $testInputParam.value.fields()) +${macro.spaces}{ + ${macro.spaces}Aws::Utils::Document ${macro.mapItemVarName}(R"j(${mapItem.value})j"); + ${macro.spaces}${dstObject}.${macro.fieldAdder}("$mapItem.key", $macro.mapItemVarName); +${macro.spaces}} +#end +#break +#end +#if($mapShape.mapValue.shape.structure) +#set($macro.mapItemVarName = "${dstObject}${CppViewHelper.capitalizeFirstChar(${CppViewHelper.computeVariableName($testInputParam.key)})}Item") +#set($macro.fieldAdder = "Add${CppViewHelper.capitalizeFirstChar($testInputParam.key)}") +#foreach($mapItem in $testInputParam.value.fields()) +${macro.spaces}{ + ${macro.spaces}$CppViewHelper.computeCppType($mapShape.mapValue.shape) $macro.mapItemVarName; +#foreach($innerParam in $mapItem.value.fields()) +#FillParamsMacro("${macro.spaces} " $macro.mapItemVarName $mapShape.mapValue.shape $innerParam) +#end + ${macro.spaces}${dstObject}.${macro.fieldAdder}("$mapItem.key", $macro.mapItemVarName); +${macro.spaces}} +#end +#break +#end +###----- the map value is not nested structure or document +#set($macro.mapResult="{") +#foreach($mapItem in $testInputParam.value.fields()) +#set($macro.mapItem="{" + '"' + "$mapItem.key" + '"' + ", ") +#set($macro.mapItem=$macro.mapItem + "#SerializeSingleParameterMacro($mapShape.mapValue.shape, $mapItem.value)" + "}") +#set($macro.mapResult=$macro.mapResult + $macro.mapItem) +#if($foreach.hasNext)#set($macro.mapResult=$macro.mapResult + ", ")#end +#end +#set($macro.mapResult=$macro.mapResult + "}") +${spaces}${dstObject}.${macro.fieldSetter}($macro.mapResult); +#end##macro SetMapMacro \ No newline at end of file diff --git a/tools/code-generation/protocol-tests/api-descriptions/rest-xml-protocol-namespace-2019-12-16.normal.json b/tools/code-generation/protocol-tests/api-descriptions/rest-xml-protocol-namespace-2019-12-16.normal.json deleted file mode 100644 index 65b7e98c25e..00000000000 --- a/tools/code-generation/protocol-tests/api-descriptions/rest-xml-protocol-namespace-2019-12-16.normal.json +++ /dev/null @@ -1,121 +0,0 @@ -{ - "version": "2.0", - "metadata": { - "apiVersion": "2019-12-16", - "auth": [ - "aws.auth#sigv4" - ], - "endpointPrefix": "restxmlwithnamespace", - "protocol": "rest-xml", - "protocols": [ - "rest-xml" - ], - "serviceFullName": "Sample Rest Xml Protocol Service With Namespace", - "serviceId": "Rest Xml Protocol Namespace", - "signatureVersion": "v4", - "signingName": "restxmlwithnamespace", - "uid": "rest-xml-protocol-namespace-2019-12-16" - }, - "operations": { - "SimpleScalarProperties": { - "name": "SimpleScalarProperties", - "http": { - "method": "PUT", - "requestUri": "/SimpleScalarProperties", - "responseCode": 200 - }, - "input": { - "shape": "SimpleScalarPropertiesInputOutput", - "locationName": "SimpleScalarPropertiesRequest", - "xmlNamespace": { - "uri": "https://example.com" - } - }, - "output": { - "shape": "SimpleScalarPropertiesInputOutput" - }, - "idempotent": true - } - }, - "shapes": { - "Boolean": { - "type": "boolean", - "box": true - }, - "Double": { - "type": "double", - "box": true - }, - "Float": { - "type": "float", - "box": true - }, - "Integer": { - "type": "integer", - "box": true - }, - "Long": { - "type": "long", - "box": true - }, - "NestedWithNamespace": { - "type": "structure", - "members": { - "attrField": { - "shape": "String", - "locationName": "xsi:someName", - "xmlAttribute": true - } - } - }, - "SimpleScalarPropertiesInputOutput": { - "type": "structure", - "members": { - "foo": { - "shape": "String", - "location": "header", - "locationName": "X-Foo" - }, - "stringValue": { - "shape": "String" - }, - "trueBooleanValue": { - "shape": "Boolean" - }, - "falseBooleanValue": { - "shape": "Boolean" - }, - "byteValue": { - "shape": "Integer" - }, - "shortValue": { - "shape": "Integer" - }, - "integerValue": { - "shape": "Integer" - }, - "longValue": { - "shape": "Long" - }, - "floatValue": { - "shape": "Float" - }, - "Nested": { - "shape": "NestedWithNamespace", - "xmlNamespace": { - "prefix": "xsi", - "uri": "https://example.com" - } - }, - "doubleValue": { - "shape": "Double", - "locationName": "DoubleDribble" - } - } - }, - "String": { - "type": "string" - } - }, - "documentation": "

A REST XML service that sends XML requests and responses.

This service and test case is complementary to the test cases in the restXml directory, but the service under test here has the xmlNamespace trait applied to it.

See https://github.com/awslabs/smithy/issues/616

" -} \ No newline at end of file From 57382d3c8154bf0dd8b7313434f14a2456219454 Mon Sep 17 00:00:00 2001 From: SergeyRyabinin Date: Wed, 9 Apr 2025 17:20:03 +0000 Subject: [PATCH 2/2] Codegen for #3376 --- .../CMakeLists.txt | 76 ---- .../RestXmlProtocolNamespaceClient.h | 119 ------ ...RestXmlProtocolNamespaceEndpointProvider.h | 61 --- .../RestXmlProtocolNamespaceEndpointRules.h | 23 -- .../RestXmlProtocolNamespaceErrorMarshaller.h | 23 -- .../RestXmlProtocolNamespaceErrors.h | 72 ---- .../RestXmlProtocolNamespaceRequest.h | 46 --- ...stXmlProtocolNamespaceServiceClientModel.h | 81 ---- .../RestXmlProtocolNamespace_EXPORTS.h | 32 -- .../model/NestedWithNamespace.h | 52 --- .../model/SimpleScalarPropertiesRequest.h | 182 --------- .../model/SimpleScalarPropertiesResult.h | 168 -------- .../source/RestXmlProtocolNamespaceClient.cpp | 195 ---------- ...stXmlProtocolNamespaceEndpointProvider.cpp | 16 - .../RestXmlProtocolNamespaceEndpointRules.cpp | 70 ---- ...estXmlProtocolNamespaceErrorMarshaller.cpp | 22 -- .../source/RestXmlProtocolNamespaceErrors.cpp | 32 -- .../RestXmlProtocolNamespaceRequest.cpp | 14 - .../source/model/NestedWithNamespace.cpp | 57 --- .../model/SimpleScalarPropertiesRequest.cpp | 126 ------ .../model/SimpleScalarPropertiesResult.cpp | 109 ------ .../tests/input/ec2/CMakeLists.txt | 1 + .../tests/EmptyInputAndEmptyOutputTest.cpp | 20 + .../input/ec2/tests/EndpointOperationTest.cpp | 20 + .../EndpointWithHostLabelOperationTest.cpp | 21 + .../ec2/tests/HostWithPathOperationTest.cpp | 20 + .../input/ec2/tests/NestedStructuresTest.cpp | 31 ++ .../input/ec2/tests/NoInputAndOutputTest.cpp | 20 + .../ec2/tests/PutWithContentEncodingTest.cpp | 287 ++++++++++++++ .../QueryIdempotencyTokenAutoFillTest.cpp | 29 ++ .../tests/input/ec2/tests/QueryListsTest.cpp | 71 ++++ .../input/ec2/tests/QueryTimestampsTest.cpp | 23 ++ .../input/ec2/tests/SimpleInputParamsTest.cpp | 134 +++++++ .../tests/input/json/CMakeLists.txt | 1 + .../input/json/tests/EmptyOperationTest.cpp | 36 ++ .../json/tests/EndpointOperationTest.cpp | 20 + .../EndpointWithHostLabelOperationTest.cpp | 21 + .../json/tests/HostWithPathOperationTest.cpp | 20 + .../tests/input/json/tests/JsonEnumsTest.cpp | 26 ++ .../input/json/tests/JsonIntEnumsTest.cpp | 26 ++ .../tests/input/json/tests/JsonUnionsTest.cpp | 133 +++++++ .../json/tests/KitchenSinkOperationTest.cpp | 360 ++++++++++++++++++ .../input/json/tests/NullOperationTest.cpp | 21 + .../OperationWithOptionalInputOutputTest.cpp | 29 ++ .../tests/PutAndGetInlineDocumentsTest.cpp | 24 ++ .../json/tests/PutWithContentEncodingTest.cpp | 287 ++++++++++++++ .../json/tests/SimpleScalarPropertiesTest.cpp | 42 ++ .../tests/input/json_1_0/CMakeLists.txt | 1 + .../tests/EmptyInputAndEmptyOutputTest.cpp | 20 + .../json_1_0/tests/EndpointOperationTest.cpp | 20 + .../EndpointWithHostLabelOperationTest.cpp | 21 + .../tests/HostWithPathOperationTest.cpp | 20 + .../input/json_1_0/tests/JsonUnionsTest.cpp | 146 +++++++ .../json_1_0/tests/NoInputAndNoOutputTest.cpp | 20 + .../json_1_0/tests/NoInputAndOutputTest.cpp | 20 + .../tests/PutWithContentEncodingTest.cpp | 287 ++++++++++++++ .../tests/SimpleScalarPropertiesTest.cpp | 42 ++ .../tests/input/query/CMakeLists.txt | 1 + .../tests/EmptyInputAndEmptyOutputTest.cpp | 20 + .../query/tests/EndpointOperationTest.cpp | 20 + .../EndpointWithHostLabelOperationTest.cpp | 21 + .../query/tests/HostWithPathOperationTest.cpp | 20 + .../query/tests/NestedStructuresTest.cpp | 31 ++ .../query/tests/NoInputAndNoOutputTest.cpp | 20 + .../query/tests/NoInputAndOutputTest.cpp | 20 + .../tests/PutWithContentEncodingTest.cpp | 287 ++++++++++++++ .../QueryIdempotencyTokenAutoFillTest.cpp | 29 ++ .../input/query/tests/QueryListsTest.cpp | 80 ++++ .../tests/input/query/tests/QueryMapsTest.cpp | 106 ++++++ .../input/query/tests/QueryTimestampsTest.cpp | 23 ++ .../query/tests/SimpleInputParamsTest.cpp | 116 ++++++ .../tests/input/rest-json/CMakeLists.txt | 1 + .../tests/AllQueryStringTypesTest.cpp | 104 +++++ .../ConstantAndVariableQueryStringTest.cpp | 31 ++ .../tests/ConstantQueryStringTest.cpp | 21 + .../tests/DocumentTypeAsMapValueTest.cpp | 32 ++ .../tests/DocumentTypeAsPayloadTest.cpp | 36 ++ .../rest-json/tests/DocumentTypeTest.cpp | 77 ++++ .../tests/EmptyInputAndEmptyOutputTest.cpp | 20 + .../rest-json/tests/EndpointOperationTest.cpp | 20 + .../EndpointWithHostLabelOperationTest.cpp | 21 + .../tests/HostWithPathOperationTest.cpp | 20 + .../tests/HttpChecksumRequiredTest.cpp | 21 + .../rest-json/tests/HttpEnumPayloadTest.cpp | 21 + .../rest-json/tests/HttpPayloadTraitsTest.cpp | 31 ++ .../tests/HttpPayloadWithStructureTest.cpp | 26 ++ .../tests/HttpPayloadWithUnionTest.cpp | 33 ++ .../rest-json/tests/HttpPrefixHeadersTest.cpp | 41 ++ .../tests/HttpRequestWithFloatLabelsTest.cpp | 42 ++ .../HttpRequestWithGreedyLabelInPathTest.cpp | 22 ++ ...equestWithLabelsAndTimestampFormatTest.cpp | 27 ++ .../tests/HttpRequestWithLabelsTest.cpp | 44 +++ .../tests/HttpRequestWithRegexLiteralTest.cpp | 21 + .../rest-json/tests/HttpStringPayloadTest.cpp | 21 + .../tests/InputAndOutputWithHeadersTest.cpp | 117 ++++++ .../input/rest-json/tests/JsonBlobsTest.cpp | 21 + .../input/rest-json/tests/JsonEnumsTest.cpp | 26 ++ .../rest-json/tests/JsonIntEnumsTest.cpp | 26 ++ .../input/rest-json/tests/JsonListsTest.cpp | 60 +++ .../input/rest-json/tests/JsonMapsTest.cpp | 49 +++ .../rest-json/tests/JsonTimestampsTest.cpp | 75 ++++ .../input/rest-json/tests/JsonUnionsTest.cpp | 150 ++++++++ .../rest-json/tests/MediaTypeHeaderTest.cpp | 21 + .../tests/NoInputAndNoOutputTest.cpp | 20 + .../rest-json/tests/NoInputAndOutputTest.cpp | 20 + .../tests/NullAndEmptyHeadersClientTest.cpp | 23 ++ .../OmitsNullSerializesEmptyStringTest.cpp | 30 ++ .../tests/OmitsSerializingEmptyListsTest.cpp | 27 ++ .../tests/PostUnionWithJsonNameTest.cpp | 51 +++ .../tests/PutWithContentEncodingTest.cpp | 287 ++++++++++++++ .../QueryIdempotencyTokenAutoFillTest.cpp | 29 ++ .../tests/QueryParamsAsStringListMapTest.cpp | 22 ++ .../rest-json/tests/QueryPrecedenceTest.cpp | 22 ++ .../rest-json/tests/RecursiveShapesTest.cpp | 40 ++ .../tests/SimpleScalarPropertiesTest.cpp | 69 ++++ .../rest-json/tests/TestBodyStructureTest.cpp | 33 ++ .../tests/TestGetNoInputNoPayloadTest.cpp | 20 + .../rest-json/tests/TestGetNoPayloadTest.cpp | 29 ++ .../rest-json/tests/TestPayloadBlobTest.cpp | 30 ++ .../tests/TestPayloadStructureTest.cpp | 42 ++ .../tests/TestPostNoInputNoPayloadTest.cpp | 20 + .../rest-json/tests/TestPostNoPayloadTest.cpp | 29 ++ .../tests/TimestampFormatHeadersTest.cpp | 27 ++ .../tests/UnitInputAndOutputTest.cpp | 20 + .../tests/input/rest-xml-1/CMakeLists.txt | 42 -- .../tests/input/rest-xml-1/RunTests.cpp | 29 -- .../tests/input/rest-xml/CMakeLists.txt | 1 + .../tests/AllQueryStringTypesTest.cpp | 98 +++++ .../rest-xml/tests/BodyWithXmlNameTest.cpp | 25 ++ .../ConstantAndVariableQueryStringTest.cpp | 31 ++ .../tests/ConstantQueryStringTest.cpp | 21 + .../tests/EmptyInputAndEmptyOutputTest.cpp | 20 + .../rest-xml/tests/EndpointOperationTest.cpp | 20 + ...dpointWithHostLabelHeaderOperationTest.cpp | 21 + .../EndpointWithHostLabelOperationTest.cpp | 21 + .../rest-xml/tests/FlattenedXmlMapTest.cpp | 21 + .../tests/FlattenedXmlMapWithXmlNameTest.cpp | 21 + .../rest-xml/tests/HttpEnumPayloadTest.cpp | 21 + .../rest-xml/tests/HttpPayloadTraitsTest.cpp | 31 ++ .../HttpPayloadWithMemberXmlNameTest.cpp | 25 ++ .../tests/HttpPayloadWithStructureTest.cpp | 26 ++ .../tests/HttpPayloadWithUnionTest.cpp | 33 ++ .../tests/HttpPayloadWithXmlNameTest.cpp | 25 ++ ...tpPayloadWithXmlNamespaceAndPrefixTest.cpp | 25 ++ .../tests/HttpPayloadWithXmlNamespaceTest.cpp | 25 ++ .../rest-xml/tests/HttpPrefixHeadersTest.cpp | 41 ++ .../tests/HttpRequestWithFloatLabelsTest.cpp | 42 ++ .../HttpRequestWithGreedyLabelInPathTest.cpp | 22 ++ ...equestWithLabelsAndTimestampFormatTest.cpp | 27 ++ .../tests/HttpRequestWithLabelsTest.cpp | 44 +++ .../rest-xml/tests/HttpStringPayloadTest.cpp | 21 + .../tests/InputAndOutputWithHeadersTest.cpp | 98 +++++ .../tests/NestedXmlMapWithXmlNameTest.cpp | 21 + .../rest-xml/tests/NestedXmlMapsTest.cpp | 30 ++ .../rest-xml/tests/NoInputAndNoOutputTest.cpp | 20 + .../rest-xml/tests/NoInputAndOutputTest.cpp | 20 + .../tests/NullAndEmptyHeadersClientTest.cpp | 23 ++ .../OmitsNullSerializesEmptyStringTest.cpp | 30 ++ .../tests/PutWithContentEncodingTest.cpp | 287 ++++++++++++++ .../QueryIdempotencyTokenAutoFillTest.cpp | 29 ++ .../tests/QueryParamsAsStringListMapTest.cpp | 22 ++ .../rest-xml/tests/QueryPrecedenceTest.cpp | 22 ++ .../rest-xml/tests/RecursiveShapesTest.cpp | 40 ++ .../tests/SimpleScalarPropertiesTest.cpp | 90 +++++ .../tests/TimestampFormatHeadersTest.cpp | 27 ++ .../tests/XmlAttributesOnPayloadTest.cpp | 26 ++ .../rest-xml/tests/XmlAttributesTest.cpp | 32 ++ .../input/rest-xml/tests/XmlBlobsTest.cpp | 21 + .../rest-xml/tests/XmlEmptyListsTest.cpp | 22 ++ .../input/rest-xml/tests/XmlEmptyMapsTest.cpp | 20 + .../rest-xml/tests/XmlEmptyStringsTest.cpp | 21 + .../input/rest-xml/tests/XmlEnumsTest.cpp | 26 ++ .../input/rest-xml/tests/XmlIntEnumsTest.cpp | 26 ++ .../input/rest-xml/tests/XmlListsTest.cpp | 66 ++++ .../tests/XmlMapWithXmlNamespaceTest.cpp | 21 + .../input/rest-xml/tests/XmlMapsTest.cpp | 30 ++ .../rest-xml/tests/XmlMapsXmlNameTest.cpp | 30 ++ .../rest-xml/tests/XmlNamespacesTest.cpp | 26 ++ .../rest-xml/tests/XmlTimestampsTest.cpp | 75 ++++ .../input/rest-xml/tests/XmlUnionsTest.cpp | 79 ++++ .../tests/output/ec2/CMakeLists.txt | 1 + .../output/ec2/tests/DatetimeOffsetsTest.cpp | 28 ++ .../tests/EmptyInputAndEmptyOutputTest.cpp | 20 + .../ec2/tests/FractionalSecondsTest.cpp | 20 + .../ec2/tests/GreetingWithErrors0Test.cpp | 20 + .../ec2/tests/GreetingWithErrors1Test.cpp | 20 + .../ec2/tests/GreetingWithErrorsTest.cpp | 20 + .../ec2/tests/IgnoresWrappingXmlNameTest.cpp | 20 + .../output/ec2/tests/NoInputAndOutputTest.cpp | 20 + .../ec2/tests/RecursiveXmlShapesTest.cpp | 20 + .../tests/SimpleScalarXmlPropertiesTest.cpp | 44 +++ .../tests/output/ec2/tests/XmlBlobsTest.cpp | 20 + .../output/ec2/tests/XmlEmptyBlobsTest.cpp | 28 ++ .../output/ec2/tests/XmlEmptyListsTest.cpp | 20 + .../tests/output/ec2/tests/XmlEnumsTest.cpp | 20 + .../output/ec2/tests/XmlIntEnumsTest.cpp | 20 + .../tests/output/ec2/tests/XmlListsTest.cpp | 20 + .../output/ec2/tests/XmlNamespacesTest.cpp | 20 + .../output/ec2/tests/XmlTimestampsTest.cpp | 68 ++++ .../tests/output/json/CMakeLists.txt | 1 + .../output/json/tests/DatetimeOffsetsTest.cpp | 28 ++ .../output/json/tests/EmptyOperationTest.cpp | 36 ++ .../json/tests/FractionalSecondsTest.cpp | 20 + .../json/tests/GreetingWithErrors0Test.cpp | 28 ++ .../json/tests/GreetingWithErrors1Test.cpp | 84 ++++ .../json/tests/GreetingWithErrorsTest.cpp | 20 + .../tests/output/json/tests/JsonEnumsTest.cpp | 20 + .../output/json/tests/JsonIntEnumsTest.cpp | 20 + .../output/json/tests/JsonUnionsTest.cpp | 92 +++++ .../json/tests/KitchenSinkOperationTest.cpp | 196 ++++++++++ .../output/json/tests/NullOperationTest.cpp | 20 + .../tests/PutAndGetInlineDocumentsTest.cpp | 20 + .../json/tests/SimpleScalarPropertiesTest.cpp | 36 ++ .../tests/output/json_1_0/CMakeLists.txt | 1 + .../tests/EmptyInputAndEmptyOutputTest.cpp | 20 + .../tests/GreetingWithErrors0Test.cpp | 84 ++++ .../tests/GreetingWithErrors1Test.cpp | 28 ++ .../json_1_0/tests/GreetingWithErrorsTest.cpp | 20 + .../output/json_1_0/tests/JsonUnionsTest.cpp | 108 ++++++ .../json_1_0/tests/NoInputAndNoOutputTest.cpp | 36 ++ .../json_1_0/tests/NoInputAndOutputTest.cpp | 20 + .../tests/SimpleScalarPropertiesTest.cpp | 36 ++ .../tests/output/query/CMakeLists.txt | 1 + .../query/tests/DatetimeOffsetsTest.cpp | 28 ++ .../tests/EmptyInputAndEmptyOutputTest.cpp | 20 + .../query/tests/FlattenedXmlMapTest.cpp | 20 + .../tests/FlattenedXmlMapWithXmlNameTest.cpp | 20 + .../FlattenedXmlMapWithXmlNamespaceTest.cpp | 20 + .../query/tests/FractionalSecondsTest.cpp | 20 + .../query/tests/GreetingWithErrors0Test.cpp | 20 + .../query/tests/GreetingWithErrors1Test.cpp | 20 + .../query/tests/GreetingWithErrors2Test.cpp | 20 + .../query/tests/GreetingWithErrorsTest.cpp | 20 + .../tests/IgnoresWrappingXmlNameTest.cpp | 20 + .../query/tests/NoInputAndNoOutputTest.cpp | 20 + .../query/tests/NoInputAndOutputTest.cpp | 20 + .../query/tests/RecursiveXmlShapesTest.cpp | 20 + .../tests/SimpleScalarXmlPropertiesTest.cpp | 44 +++ .../tests/output/query/tests/XmlBlobsTest.cpp | 20 + .../output/query/tests/XmlEmptyBlobsTest.cpp | 28 ++ .../output/query/tests/XmlEmptyListsTest.cpp | 20 + .../output/query/tests/XmlEmptyMapsTest.cpp | 28 ++ .../tests/output/query/tests/XmlEnumsTest.cpp | 20 + .../output/query/tests/XmlIntEnumsTest.cpp | 20 + .../tests/output/query/tests/XmlListsTest.cpp | 20 + .../tests/output/query/tests/XmlMapsTest.cpp | 20 + .../output/query/tests/XmlMapsXmlNameTest.cpp | 20 + .../output/query/tests/XmlNamespacesTest.cpp | 20 + .../output/query/tests/XmlTimestampsTest.cpp | 68 ++++ .../tests/output/rest-json/CMakeLists.txt | 1 + .../rest-json/tests/DatetimeOffsetsTest.cpp | 28 ++ .../tests/DocumentTypeAsMapValueTest.cpp | 20 + .../tests/DocumentTypeAsPayloadTest.cpp | 28 ++ .../rest-json/tests/DocumentTypeTest.cpp | 52 +++ .../tests/EmptyInputAndEmptyOutputTest.cpp | 28 ++ .../rest-json/tests/FractionalSecondsTest.cpp | 20 + .../tests/GreetingWithErrors0Test.cpp | 84 ++++ .../tests/GreetingWithErrors1Test.cpp | 28 ++ .../tests/GreetingWithErrors2Test.cpp | 20 + .../tests/GreetingWithErrorsTest.cpp | 28 ++ .../rest-json/tests/HttpEnumPayloadTest.cpp | 20 + .../rest-json/tests/HttpPayloadTraitsTest.cpp | 28 ++ .../tests/HttpPayloadWithStructureTest.cpp | 20 + .../tests/HttpPayloadWithUnionTest.cpp | 28 ++ .../tests/HttpPrefixHeadersInResponseTest.cpp | 20 + .../rest-json/tests/HttpPrefixHeadersTest.cpp | 20 + .../rest-json/tests/HttpResponseCodeTest.cpp | 28 ++ .../rest-json/tests/HttpStringPayloadTest.cpp | 20 + .../tests/IgnoreQueryParamsInResponseTest.cpp | 28 ++ .../tests/InputAndOutputWithHeadersTest.cpp | 92 +++++ .../output/rest-json/tests/JsonBlobsTest.cpp | 20 + .../output/rest-json/tests/JsonEnumsTest.cpp | 20 + .../rest-json/tests/JsonIntEnumsTest.cpp | 20 + .../output/rest-json/tests/JsonListsTest.cpp | 28 ++ .../output/rest-json/tests/JsonMapsTest.cpp | 44 +++ .../rest-json/tests/JsonTimestampsTest.cpp | 68 ++++ .../output/rest-json/tests/JsonUnionsTest.cpp | 92 +++++ .../rest-json/tests/MediaTypeHeaderTest.cpp | 20 + .../tests/NoInputAndNoOutputTest.cpp | 20 + .../rest-json/tests/NoInputAndOutputTest.cpp | 28 ++ .../tests/PostUnionWithJsonNameTest.cpp | 36 ++ .../rest-json/tests/RecursiveShapesTest.cpp | 20 + .../tests/SimpleScalarPropertiesTest.cpp | 52 +++ .../tests/TimestampFormatHeadersTest.cpp | 20 + .../tests/UnitInputAndOutputTest.cpp | 20 + .../tests/output/rest-xml-1/CMakeLists.txt | 42 -- .../tests/output/rest-xml-1/RunTests.cpp | 29 -- .../tests/output/rest-xml/CMakeLists.txt | 1 + .../rest-xml/tests/BodyWithXmlNameTest.cpp | 20 + .../rest-xml/tests/DatetimeOffsetsTest.cpp | 28 ++ .../tests/EmptyInputAndEmptyOutputTest.cpp | 20 + .../rest-xml/tests/FlattenedXmlMapTest.cpp | 20 + .../tests/FlattenedXmlMapWithXmlNameTest.cpp | 20 + .../FlattenedXmlMapWithXmlNamespaceTest.cpp | 20 + .../rest-xml/tests/FractionalSecondsTest.cpp | 20 + .../tests/GreetingWithErrors0Test.cpp | 20 + .../tests/GreetingWithErrors1Test.cpp | 20 + .../rest-xml/tests/GreetingWithErrorsTest.cpp | 20 + .../rest-xml/tests/HttpEnumPayloadTest.cpp | 20 + .../rest-xml/tests/HttpPayloadTraitsTest.cpp | 28 ++ .../HttpPayloadWithMemberXmlNameTest.cpp | 20 + .../tests/HttpPayloadWithStructureTest.cpp | 20 + .../tests/HttpPayloadWithUnionTest.cpp | 28 ++ .../tests/HttpPayloadWithXmlNameTest.cpp | 20 + ...tpPayloadWithXmlNamespaceAndPrefixTest.cpp | 20 + .../tests/HttpPayloadWithXmlNamespaceTest.cpp | 20 + .../rest-xml/tests/HttpPrefixHeadersTest.cpp | 28 ++ .../rest-xml/tests/HttpResponseCodeTest.cpp | 20 + .../rest-xml/tests/HttpStringPayloadTest.cpp | 20 + .../tests/IgnoreQueryParamsInResponseTest.cpp | 20 + .../tests/InputAndOutputWithHeadersTest.cpp | 76 ++++ .../tests/NestedXmlMapWithXmlNameTest.cpp | 20 + .../rest-xml/tests/NestedXmlMapsTest.cpp | 28 ++ .../rest-xml/tests/NoInputAndNoOutputTest.cpp | 20 + .../rest-xml/tests/NoInputAndOutputTest.cpp | 20 + .../rest-xml/tests/RecursiveShapesTest.cpp | 20 + .../tests/SimpleScalarPropertiesTest.cpp | 84 ++++ .../tests/TimestampFormatHeadersTest.cpp | 20 + .../tests/XmlAttributesOnPayloadTest.cpp | 20 + .../rest-xml/tests/XmlAttributesTest.cpp | 20 + .../output/rest-xml/tests/XmlBlobsTest.cpp | 20 + .../rest-xml/tests/XmlEmptyBlobsTest.cpp | 28 ++ .../rest-xml/tests/XmlEmptyListsTest.cpp | 20 + .../rest-xml/tests/XmlEmptyMapsTest.cpp | 28 ++ .../rest-xml/tests/XmlEmptyStringsTest.cpp | 28 ++ .../output/rest-xml/tests/XmlEnumsTest.cpp | 20 + .../output/rest-xml/tests/XmlIntEnumsTest.cpp | 20 + .../output/rest-xml/tests/XmlListsTest.cpp | 20 + .../tests/XmlMapWithXmlNamespaceTest.cpp | 20 + .../output/rest-xml/tests/XmlMapsTest.cpp | 20 + .../rest-xml/tests/XmlMapsXmlNameTest.cpp | 20 + .../rest-xml/tests/XmlNamespacesTest.cpp | 20 + .../rest-xml/tests/XmlTimestampsTest.cpp | 68 ++++ .../output/rest-xml/tests/XmlUnionsTest.cpp | 44 +++ 334 files changed, 11636 insertions(+), 1718 deletions(-) delete mode 100644 generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/CMakeLists.txt delete mode 100644 generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespaceClient.h delete mode 100644 generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespaceEndpointProvider.h delete mode 100644 generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespaceEndpointRules.h delete mode 100644 generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespaceErrorMarshaller.h delete mode 100644 generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespaceErrors.h delete mode 100644 generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespaceRequest.h delete mode 100644 generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespaceServiceClientModel.h delete mode 100644 generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespace_EXPORTS.h delete mode 100644 generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/model/NestedWithNamespace.h delete mode 100644 generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/model/SimpleScalarPropertiesRequest.h delete mode 100644 generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/model/SimpleScalarPropertiesResult.h delete mode 100644 generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/RestXmlProtocolNamespaceClient.cpp delete mode 100644 generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/RestXmlProtocolNamespaceEndpointProvider.cpp delete mode 100644 generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/RestXmlProtocolNamespaceEndpointRules.cpp delete mode 100644 generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/RestXmlProtocolNamespaceErrorMarshaller.cpp delete mode 100644 generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/RestXmlProtocolNamespaceErrors.cpp delete mode 100644 generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/RestXmlProtocolNamespaceRequest.cpp delete mode 100644 generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/model/NestedWithNamespace.cpp delete mode 100644 generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/model/SimpleScalarPropertiesRequest.cpp delete mode 100644 generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/model/SimpleScalarPropertiesResult.cpp create mode 100644 generated/protocol-tests/tests/input/ec2/tests/EmptyInputAndEmptyOutputTest.cpp create mode 100644 generated/protocol-tests/tests/input/ec2/tests/EndpointOperationTest.cpp create mode 100644 generated/protocol-tests/tests/input/ec2/tests/EndpointWithHostLabelOperationTest.cpp create mode 100644 generated/protocol-tests/tests/input/ec2/tests/HostWithPathOperationTest.cpp create mode 100644 generated/protocol-tests/tests/input/ec2/tests/NestedStructuresTest.cpp create mode 100644 generated/protocol-tests/tests/input/ec2/tests/NoInputAndOutputTest.cpp create mode 100644 generated/protocol-tests/tests/input/ec2/tests/PutWithContentEncodingTest.cpp create mode 100644 generated/protocol-tests/tests/input/ec2/tests/QueryIdempotencyTokenAutoFillTest.cpp create mode 100644 generated/protocol-tests/tests/input/ec2/tests/QueryListsTest.cpp create mode 100644 generated/protocol-tests/tests/input/ec2/tests/QueryTimestampsTest.cpp create mode 100644 generated/protocol-tests/tests/input/ec2/tests/SimpleInputParamsTest.cpp create mode 100644 generated/protocol-tests/tests/input/json/tests/EmptyOperationTest.cpp create mode 100644 generated/protocol-tests/tests/input/json/tests/EndpointOperationTest.cpp create mode 100644 generated/protocol-tests/tests/input/json/tests/EndpointWithHostLabelOperationTest.cpp create mode 100644 generated/protocol-tests/tests/input/json/tests/HostWithPathOperationTest.cpp create mode 100644 generated/protocol-tests/tests/input/json/tests/JsonEnumsTest.cpp create mode 100644 generated/protocol-tests/tests/input/json/tests/JsonIntEnumsTest.cpp create mode 100644 generated/protocol-tests/tests/input/json/tests/JsonUnionsTest.cpp create mode 100644 generated/protocol-tests/tests/input/json/tests/KitchenSinkOperationTest.cpp create mode 100644 generated/protocol-tests/tests/input/json/tests/NullOperationTest.cpp create mode 100644 generated/protocol-tests/tests/input/json/tests/OperationWithOptionalInputOutputTest.cpp create mode 100644 generated/protocol-tests/tests/input/json/tests/PutAndGetInlineDocumentsTest.cpp create mode 100644 generated/protocol-tests/tests/input/json/tests/PutWithContentEncodingTest.cpp create mode 100644 generated/protocol-tests/tests/input/json/tests/SimpleScalarPropertiesTest.cpp create mode 100644 generated/protocol-tests/tests/input/json_1_0/tests/EmptyInputAndEmptyOutputTest.cpp create mode 100644 generated/protocol-tests/tests/input/json_1_0/tests/EndpointOperationTest.cpp create mode 100644 generated/protocol-tests/tests/input/json_1_0/tests/EndpointWithHostLabelOperationTest.cpp create mode 100644 generated/protocol-tests/tests/input/json_1_0/tests/HostWithPathOperationTest.cpp create mode 100644 generated/protocol-tests/tests/input/json_1_0/tests/JsonUnionsTest.cpp create mode 100644 generated/protocol-tests/tests/input/json_1_0/tests/NoInputAndNoOutputTest.cpp create mode 100644 generated/protocol-tests/tests/input/json_1_0/tests/NoInputAndOutputTest.cpp create mode 100644 generated/protocol-tests/tests/input/json_1_0/tests/PutWithContentEncodingTest.cpp create mode 100644 generated/protocol-tests/tests/input/json_1_0/tests/SimpleScalarPropertiesTest.cpp create mode 100644 generated/protocol-tests/tests/input/query/tests/EmptyInputAndEmptyOutputTest.cpp create mode 100644 generated/protocol-tests/tests/input/query/tests/EndpointOperationTest.cpp create mode 100644 generated/protocol-tests/tests/input/query/tests/EndpointWithHostLabelOperationTest.cpp create mode 100644 generated/protocol-tests/tests/input/query/tests/HostWithPathOperationTest.cpp create mode 100644 generated/protocol-tests/tests/input/query/tests/NestedStructuresTest.cpp create mode 100644 generated/protocol-tests/tests/input/query/tests/NoInputAndNoOutputTest.cpp create mode 100644 generated/protocol-tests/tests/input/query/tests/NoInputAndOutputTest.cpp create mode 100644 generated/protocol-tests/tests/input/query/tests/PutWithContentEncodingTest.cpp create mode 100644 generated/protocol-tests/tests/input/query/tests/QueryIdempotencyTokenAutoFillTest.cpp create mode 100644 generated/protocol-tests/tests/input/query/tests/QueryListsTest.cpp create mode 100644 generated/protocol-tests/tests/input/query/tests/QueryMapsTest.cpp create mode 100644 generated/protocol-tests/tests/input/query/tests/QueryTimestampsTest.cpp create mode 100644 generated/protocol-tests/tests/input/query/tests/SimpleInputParamsTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/AllQueryStringTypesTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/ConstantAndVariableQueryStringTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/ConstantQueryStringTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/DocumentTypeAsMapValueTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/DocumentTypeAsPayloadTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/DocumentTypeTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/EmptyInputAndEmptyOutputTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/EndpointOperationTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/EndpointWithHostLabelOperationTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/HostWithPathOperationTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/HttpChecksumRequiredTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/HttpEnumPayloadTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/HttpPayloadTraitsTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/HttpPayloadWithStructureTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/HttpPayloadWithUnionTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/HttpPrefixHeadersTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/HttpRequestWithFloatLabelsTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/HttpRequestWithGreedyLabelInPathTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/HttpRequestWithLabelsAndTimestampFormatTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/HttpRequestWithLabelsTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/HttpRequestWithRegexLiteralTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/HttpStringPayloadTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/InputAndOutputWithHeadersTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/JsonBlobsTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/JsonEnumsTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/JsonIntEnumsTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/JsonListsTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/JsonMapsTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/JsonTimestampsTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/JsonUnionsTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/MediaTypeHeaderTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/NoInputAndNoOutputTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/NoInputAndOutputTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/NullAndEmptyHeadersClientTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/OmitsNullSerializesEmptyStringTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/OmitsSerializingEmptyListsTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/PostUnionWithJsonNameTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/PutWithContentEncodingTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/QueryIdempotencyTokenAutoFillTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/QueryParamsAsStringListMapTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/QueryPrecedenceTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/RecursiveShapesTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/SimpleScalarPropertiesTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/TestBodyStructureTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/TestGetNoInputNoPayloadTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/TestGetNoPayloadTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/TestPayloadBlobTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/TestPayloadStructureTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/TestPostNoInputNoPayloadTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/TestPostNoPayloadTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/TimestampFormatHeadersTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-json/tests/UnitInputAndOutputTest.cpp delete mode 100644 generated/protocol-tests/tests/input/rest-xml-1/CMakeLists.txt delete mode 100644 generated/protocol-tests/tests/input/rest-xml-1/RunTests.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/AllQueryStringTypesTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/BodyWithXmlNameTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/ConstantAndVariableQueryStringTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/ConstantQueryStringTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/EmptyInputAndEmptyOutputTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/EndpointOperationTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/EndpointWithHostLabelHeaderOperationTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/EndpointWithHostLabelOperationTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/FlattenedXmlMapTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/FlattenedXmlMapWithXmlNameTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/HttpEnumPayloadTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/HttpPayloadTraitsTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/HttpPayloadWithMemberXmlNameTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/HttpPayloadWithStructureTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/HttpPayloadWithUnionTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/HttpPayloadWithXmlNameTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/HttpPayloadWithXmlNamespaceAndPrefixTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/HttpPayloadWithXmlNamespaceTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/HttpPrefixHeadersTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/HttpRequestWithFloatLabelsTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/HttpRequestWithGreedyLabelInPathTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/HttpRequestWithLabelsAndTimestampFormatTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/HttpRequestWithLabelsTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/HttpStringPayloadTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/InputAndOutputWithHeadersTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/NestedXmlMapWithXmlNameTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/NestedXmlMapsTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/NoInputAndNoOutputTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/NoInputAndOutputTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/NullAndEmptyHeadersClientTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/OmitsNullSerializesEmptyStringTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/PutWithContentEncodingTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/QueryIdempotencyTokenAutoFillTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/QueryParamsAsStringListMapTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/QueryPrecedenceTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/RecursiveShapesTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/SimpleScalarPropertiesTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/TimestampFormatHeadersTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/XmlAttributesOnPayloadTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/XmlAttributesTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/XmlBlobsTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/XmlEmptyListsTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/XmlEmptyMapsTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/XmlEmptyStringsTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/XmlEnumsTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/XmlIntEnumsTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/XmlListsTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/XmlMapWithXmlNamespaceTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/XmlMapsTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/XmlMapsXmlNameTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/XmlNamespacesTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/XmlTimestampsTest.cpp create mode 100644 generated/protocol-tests/tests/input/rest-xml/tests/XmlUnionsTest.cpp create mode 100644 generated/protocol-tests/tests/output/ec2/tests/DatetimeOffsetsTest.cpp create mode 100644 generated/protocol-tests/tests/output/ec2/tests/EmptyInputAndEmptyOutputTest.cpp create mode 100644 generated/protocol-tests/tests/output/ec2/tests/FractionalSecondsTest.cpp create mode 100644 generated/protocol-tests/tests/output/ec2/tests/GreetingWithErrors0Test.cpp create mode 100644 generated/protocol-tests/tests/output/ec2/tests/GreetingWithErrors1Test.cpp create mode 100644 generated/protocol-tests/tests/output/ec2/tests/GreetingWithErrorsTest.cpp create mode 100644 generated/protocol-tests/tests/output/ec2/tests/IgnoresWrappingXmlNameTest.cpp create mode 100644 generated/protocol-tests/tests/output/ec2/tests/NoInputAndOutputTest.cpp create mode 100644 generated/protocol-tests/tests/output/ec2/tests/RecursiveXmlShapesTest.cpp create mode 100644 generated/protocol-tests/tests/output/ec2/tests/SimpleScalarXmlPropertiesTest.cpp create mode 100644 generated/protocol-tests/tests/output/ec2/tests/XmlBlobsTest.cpp create mode 100644 generated/protocol-tests/tests/output/ec2/tests/XmlEmptyBlobsTest.cpp create mode 100644 generated/protocol-tests/tests/output/ec2/tests/XmlEmptyListsTest.cpp create mode 100644 generated/protocol-tests/tests/output/ec2/tests/XmlEnumsTest.cpp create mode 100644 generated/protocol-tests/tests/output/ec2/tests/XmlIntEnumsTest.cpp create mode 100644 generated/protocol-tests/tests/output/ec2/tests/XmlListsTest.cpp create mode 100644 generated/protocol-tests/tests/output/ec2/tests/XmlNamespacesTest.cpp create mode 100644 generated/protocol-tests/tests/output/ec2/tests/XmlTimestampsTest.cpp create mode 100644 generated/protocol-tests/tests/output/json/tests/DatetimeOffsetsTest.cpp create mode 100644 generated/protocol-tests/tests/output/json/tests/EmptyOperationTest.cpp create mode 100644 generated/protocol-tests/tests/output/json/tests/FractionalSecondsTest.cpp create mode 100644 generated/protocol-tests/tests/output/json/tests/GreetingWithErrors0Test.cpp create mode 100644 generated/protocol-tests/tests/output/json/tests/GreetingWithErrors1Test.cpp create mode 100644 generated/protocol-tests/tests/output/json/tests/GreetingWithErrorsTest.cpp create mode 100644 generated/protocol-tests/tests/output/json/tests/JsonEnumsTest.cpp create mode 100644 generated/protocol-tests/tests/output/json/tests/JsonIntEnumsTest.cpp create mode 100644 generated/protocol-tests/tests/output/json/tests/JsonUnionsTest.cpp create mode 100644 generated/protocol-tests/tests/output/json/tests/KitchenSinkOperationTest.cpp create mode 100644 generated/protocol-tests/tests/output/json/tests/NullOperationTest.cpp create mode 100644 generated/protocol-tests/tests/output/json/tests/PutAndGetInlineDocumentsTest.cpp create mode 100644 generated/protocol-tests/tests/output/json/tests/SimpleScalarPropertiesTest.cpp create mode 100644 generated/protocol-tests/tests/output/json_1_0/tests/EmptyInputAndEmptyOutputTest.cpp create mode 100644 generated/protocol-tests/tests/output/json_1_0/tests/GreetingWithErrors0Test.cpp create mode 100644 generated/protocol-tests/tests/output/json_1_0/tests/GreetingWithErrors1Test.cpp create mode 100644 generated/protocol-tests/tests/output/json_1_0/tests/GreetingWithErrorsTest.cpp create mode 100644 generated/protocol-tests/tests/output/json_1_0/tests/JsonUnionsTest.cpp create mode 100644 generated/protocol-tests/tests/output/json_1_0/tests/NoInputAndNoOutputTest.cpp create mode 100644 generated/protocol-tests/tests/output/json_1_0/tests/NoInputAndOutputTest.cpp create mode 100644 generated/protocol-tests/tests/output/json_1_0/tests/SimpleScalarPropertiesTest.cpp create mode 100644 generated/protocol-tests/tests/output/query/tests/DatetimeOffsetsTest.cpp create mode 100644 generated/protocol-tests/tests/output/query/tests/EmptyInputAndEmptyOutputTest.cpp create mode 100644 generated/protocol-tests/tests/output/query/tests/FlattenedXmlMapTest.cpp create mode 100644 generated/protocol-tests/tests/output/query/tests/FlattenedXmlMapWithXmlNameTest.cpp create mode 100644 generated/protocol-tests/tests/output/query/tests/FlattenedXmlMapWithXmlNamespaceTest.cpp create mode 100644 generated/protocol-tests/tests/output/query/tests/FractionalSecondsTest.cpp create mode 100644 generated/protocol-tests/tests/output/query/tests/GreetingWithErrors0Test.cpp create mode 100644 generated/protocol-tests/tests/output/query/tests/GreetingWithErrors1Test.cpp create mode 100644 generated/protocol-tests/tests/output/query/tests/GreetingWithErrors2Test.cpp create mode 100644 generated/protocol-tests/tests/output/query/tests/GreetingWithErrorsTest.cpp create mode 100644 generated/protocol-tests/tests/output/query/tests/IgnoresWrappingXmlNameTest.cpp create mode 100644 generated/protocol-tests/tests/output/query/tests/NoInputAndNoOutputTest.cpp create mode 100644 generated/protocol-tests/tests/output/query/tests/NoInputAndOutputTest.cpp create mode 100644 generated/protocol-tests/tests/output/query/tests/RecursiveXmlShapesTest.cpp create mode 100644 generated/protocol-tests/tests/output/query/tests/SimpleScalarXmlPropertiesTest.cpp create mode 100644 generated/protocol-tests/tests/output/query/tests/XmlBlobsTest.cpp create mode 100644 generated/protocol-tests/tests/output/query/tests/XmlEmptyBlobsTest.cpp create mode 100644 generated/protocol-tests/tests/output/query/tests/XmlEmptyListsTest.cpp create mode 100644 generated/protocol-tests/tests/output/query/tests/XmlEmptyMapsTest.cpp create mode 100644 generated/protocol-tests/tests/output/query/tests/XmlEnumsTest.cpp create mode 100644 generated/protocol-tests/tests/output/query/tests/XmlIntEnumsTest.cpp create mode 100644 generated/protocol-tests/tests/output/query/tests/XmlListsTest.cpp create mode 100644 generated/protocol-tests/tests/output/query/tests/XmlMapsTest.cpp create mode 100644 generated/protocol-tests/tests/output/query/tests/XmlMapsXmlNameTest.cpp create mode 100644 generated/protocol-tests/tests/output/query/tests/XmlNamespacesTest.cpp create mode 100644 generated/protocol-tests/tests/output/query/tests/XmlTimestampsTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/DatetimeOffsetsTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/DocumentTypeAsMapValueTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/DocumentTypeAsPayloadTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/DocumentTypeTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/EmptyInputAndEmptyOutputTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/FractionalSecondsTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/GreetingWithErrors0Test.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/GreetingWithErrors1Test.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/GreetingWithErrors2Test.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/GreetingWithErrorsTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/HttpEnumPayloadTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/HttpPayloadTraitsTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/HttpPayloadWithStructureTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/HttpPayloadWithUnionTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/HttpPrefixHeadersInResponseTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/HttpPrefixHeadersTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/HttpResponseCodeTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/HttpStringPayloadTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/IgnoreQueryParamsInResponseTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/InputAndOutputWithHeadersTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/JsonBlobsTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/JsonEnumsTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/JsonIntEnumsTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/JsonListsTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/JsonMapsTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/JsonTimestampsTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/JsonUnionsTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/MediaTypeHeaderTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/NoInputAndNoOutputTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/NoInputAndOutputTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/PostUnionWithJsonNameTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/RecursiveShapesTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/SimpleScalarPropertiesTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/TimestampFormatHeadersTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-json/tests/UnitInputAndOutputTest.cpp delete mode 100644 generated/protocol-tests/tests/output/rest-xml-1/CMakeLists.txt delete mode 100644 generated/protocol-tests/tests/output/rest-xml-1/RunTests.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/BodyWithXmlNameTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/DatetimeOffsetsTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/EmptyInputAndEmptyOutputTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/FlattenedXmlMapTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/FlattenedXmlMapWithXmlNameTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/FlattenedXmlMapWithXmlNamespaceTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/FractionalSecondsTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/GreetingWithErrors0Test.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/GreetingWithErrors1Test.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/GreetingWithErrorsTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/HttpEnumPayloadTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/HttpPayloadTraitsTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/HttpPayloadWithMemberXmlNameTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/HttpPayloadWithStructureTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/HttpPayloadWithUnionTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/HttpPayloadWithXmlNameTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/HttpPayloadWithXmlNamespaceAndPrefixTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/HttpPayloadWithXmlNamespaceTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/HttpPrefixHeadersTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/HttpResponseCodeTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/HttpStringPayloadTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/IgnoreQueryParamsInResponseTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/InputAndOutputWithHeadersTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/NestedXmlMapWithXmlNameTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/NestedXmlMapsTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/NoInputAndNoOutputTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/NoInputAndOutputTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/RecursiveShapesTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/SimpleScalarPropertiesTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/TimestampFormatHeadersTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/XmlAttributesOnPayloadTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/XmlAttributesTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/XmlBlobsTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/XmlEmptyBlobsTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/XmlEmptyListsTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/XmlEmptyMapsTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/XmlEmptyStringsTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/XmlEnumsTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/XmlIntEnumsTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/XmlListsTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/XmlMapWithXmlNamespaceTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/XmlMapsTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/XmlMapsXmlNameTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/XmlNamespacesTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/XmlTimestampsTest.cpp create mode 100644 generated/protocol-tests/tests/output/rest-xml/tests/XmlUnionsTest.cpp diff --git a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/CMakeLists.txt b/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/CMakeLists.txt deleted file mode 100644 index a06d5c07cda..00000000000 --- a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/CMakeLists.txt +++ /dev/null @@ -1,76 +0,0 @@ -add_project(aws-cpp-sdk-rest-xml-protocol-namespace "C++ SDK for the AWS rest-xml-protocol-namespace service" aws-cpp-sdk-core) - -file(GLOB AWS_REST-XML-PROTOCOL-NAMESPACE_HEADERS - "include/aws/rest-xml-protocol-namespace/*.h" -) - -file(GLOB AWS_REST-XML-PROTOCOL-NAMESPACE_MODEL_HEADERS - "include/aws/rest-xml-protocol-namespace/model/*.h" -) - -file(GLOB AWS_REST-XML-PROTOCOL-NAMESPACE_SOURCE - "source/*.cpp" -) - -file(GLOB AWS_REST-XML-PROTOCOL-NAMESPACE_MODEL_SOURCE - "source/model/*.cpp" -) - -file(GLOB REST-XML-PROTOCOL-NAMESPACE_UNIFIED_HEADERS - ${AWS_REST-XML-PROTOCOL-NAMESPACE_HEADERS} - ${AWS_REST-XML-PROTOCOL-NAMESPACE_MODEL_HEADERS} -) - -file(GLOB REST-XML-PROTOCOL-NAMESPACE_UNITY_SRC - ${AWS_REST-XML-PROTOCOL-NAMESPACE_SOURCE} - ${AWS_REST-XML-PROTOCOL-NAMESPACE_MODEL_SOURCE} -) - -if(ENABLE_UNITY_BUILD) - enable_unity_build("REST-XML-PROTOCOL-NAMESPACE" REST-XML-PROTOCOL-NAMESPACE_UNITY_SRC) -endif() - -file(GLOB REST-XML-PROTOCOL-NAMESPACE_SRC - ${REST-XML-PROTOCOL-NAMESPACE_UNIFIED_HEADERS} - ${REST-XML-PROTOCOL-NAMESPACE_UNITY_SRC} -) - -if(WIN32) - #if we are compiling for visual studio, create a sane directory tree. - if(MSVC) - source_group("Header Files\\aws\\rest-xml-protocol-namespace" FILES ${AWS_REST-XML-PROTOCOL-NAMESPACE_HEADERS}) - source_group("Header Files\\aws\\rest-xml-protocol-namespace\\model" FILES ${AWS_REST-XML-PROTOCOL-NAMESPACE_MODEL_HEADERS}) - source_group("Source Files" FILES ${AWS_REST-XML-PROTOCOL-NAMESPACE_SOURCE}) - source_group("Source Files\\model" FILES ${AWS_REST-XML-PROTOCOL-NAMESPACE_MODEL_SOURCE}) - endif(MSVC) -endif() - -set(REST-XML-PROTOCOL-NAMESPACE_INCLUDES - "${CMAKE_CURRENT_SOURCE_DIR}/include/" -) - -add_library(${PROJECT_NAME} ${REST-XML-PROTOCOL-NAMESPACE_SRC}) -add_library(AWS::${PROJECT_NAME} ALIAS ${PROJECT_NAME}) - -set_compiler_flags(${PROJECT_NAME}) -set_compiler_warnings(${PROJECT_NAME}) - -if(USE_WINDOWS_DLL_SEMANTICS AND BUILD_SHARED_LIBS) - target_compile_definitions(${PROJECT_NAME} PRIVATE "AWS_RESTXMLPROTOCOLNAMESPACE_EXPORTS") -endif() - -target_include_directories(${PROJECT_NAME} PUBLIC - $ - $) - -target_link_libraries(${PROJECT_NAME} PRIVATE ${PLATFORM_DEP_LIBS} ${PROJECT_LIBS}) - - -setup_install() - -install (FILES ${AWS_REST-XML-PROTOCOL-NAMESPACE_HEADERS} DESTINATION ${INCLUDE_DIRECTORY}/aws/rest-xml-protocol-namespace) -install (FILES ${AWS_REST-XML-PROTOCOL-NAMESPACE_MODEL_HEADERS} DESTINATION ${INCLUDE_DIRECTORY}/aws/rest-xml-protocol-namespace/model) - -do_packaging() - - diff --git a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespaceClient.h b/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespaceClient.h deleted file mode 100644 index 832952ba21b..00000000000 --- a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespaceClient.h +++ /dev/null @@ -1,119 +0,0 @@ -/** - * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. - * SPDX-License-Identifier: Apache-2.0. - */ - -#pragma once -#include -#include -#include -#include -#include -#include -#include - -namespace Aws -{ -namespace RestXmlProtocolNamespace -{ - /** - *

A REST XML service that sends XML requests and responses.

This service - * and test case is complementary to the test cases in the restXml - * directory, but the service under test here has the xmlNamespace - * trait applied to it.

See https://github.com/awslabs/smithy/issues/616

- */ - class AWS_RESTXMLPROTOCOLNAMESPACE_API RestXmlProtocolNamespaceClient : public Aws::Client::AWSXMLClient, public Aws::Client::ClientWithAsyncTemplateMethods - { - public: - typedef Aws::Client::AWSXMLClient BASECLASS; - static const char* GetServiceName(); - static const char* GetAllocationTag(); - - typedef RestXmlProtocolNamespaceClientConfiguration ClientConfigurationType; - typedef RestXmlProtocolNamespaceEndpointProvider EndpointProviderType; - - /** - * Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config - * is not specified, it will be initialized to default values. - */ - RestXmlProtocolNamespaceClient(const Aws::RestXmlProtocolNamespace::RestXmlProtocolNamespaceClientConfiguration& clientConfiguration = Aws::RestXmlProtocolNamespace::RestXmlProtocolNamespaceClientConfiguration(), - std::shared_ptr endpointProvider = nullptr); - - /** - * Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config - * is not specified, it will be initialized to default values. - */ - RestXmlProtocolNamespaceClient(const Aws::Auth::AWSCredentials& credentials, - std::shared_ptr endpointProvider = nullptr, - const Aws::RestXmlProtocolNamespace::RestXmlProtocolNamespaceClientConfiguration& clientConfiguration = Aws::RestXmlProtocolNamespace::RestXmlProtocolNamespaceClientConfiguration()); - - /** - * Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied, - * the default http client factory will be used - */ - RestXmlProtocolNamespaceClient(const std::shared_ptr& credentialsProvider, - std::shared_ptr endpointProvider = nullptr, - const Aws::RestXmlProtocolNamespace::RestXmlProtocolNamespaceClientConfiguration& clientConfiguration = Aws::RestXmlProtocolNamespace::RestXmlProtocolNamespaceClientConfiguration()); - - - /* Legacy constructors due deprecation */ - /** - * Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config - * is not specified, it will be initialized to default values. - */ - RestXmlProtocolNamespaceClient(const Aws::Client::ClientConfiguration& clientConfiguration); - - /** - * Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config - * is not specified, it will be initialized to default values. - */ - RestXmlProtocolNamespaceClient(const Aws::Auth::AWSCredentials& credentials, - const Aws::Client::ClientConfiguration& clientConfiguration); - - /** - * Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied, - * the default http client factory will be used - */ - RestXmlProtocolNamespaceClient(const std::shared_ptr& credentialsProvider, - const Aws::Client::ClientConfiguration& clientConfiguration); - - /* End of legacy constructors due deprecation */ - virtual ~RestXmlProtocolNamespaceClient(); - - - /** - * - */ - virtual Model::SimpleScalarPropertiesOutcome SimpleScalarProperties(const Model::SimpleScalarPropertiesRequest& request = {}) const; - - /** - * A Callable wrapper for SimpleScalarProperties that returns a future to the operation so that it can be executed in parallel to other requests. - */ - template - Model::SimpleScalarPropertiesOutcomeCallable SimpleScalarPropertiesCallable(const SimpleScalarPropertiesRequestT& request = {}) const - { - return SubmitCallable(&RestXmlProtocolNamespaceClient::SimpleScalarProperties, request); - } - - /** - * An Async wrapper for SimpleScalarProperties that queues the request into a thread executor and triggers associated callback when operation has finished. - */ - template - void SimpleScalarPropertiesAsync(const SimpleScalarPropertiesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr, const SimpleScalarPropertiesRequestT& request = {}) const - { - return SubmitAsync(&RestXmlProtocolNamespaceClient::SimpleScalarProperties, request, handler, context); - } - - - void OverrideEndpoint(const Aws::String& endpoint); - std::shared_ptr& accessEndpointProvider(); - private: - friend class Aws::Client::ClientWithAsyncTemplateMethods; - void init(const RestXmlProtocolNamespaceClientConfiguration& clientConfiguration); - - RestXmlProtocolNamespaceClientConfiguration m_clientConfiguration; - std::shared_ptr m_endpointProvider; - }; - -} // namespace RestXmlProtocolNamespace -} // namespace Aws diff --git a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespaceEndpointProvider.h b/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespaceEndpointProvider.h deleted file mode 100644 index 5f33fa5d242..00000000000 --- a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespaceEndpointProvider.h +++ /dev/null @@ -1,61 +0,0 @@ -/** - * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. - * SPDX-License-Identifier: Apache-2.0. - */ - -#pragma once -#include -#include -#include -#include -#include -#include - -#include - - -namespace Aws -{ -namespace RestXmlProtocolNamespace -{ -namespace Endpoint -{ -using EndpointParameters = Aws::Endpoint::EndpointParameters; -using Aws::Endpoint::EndpointProviderBase; -using Aws::Endpoint::DefaultEndpointProvider; - -using RestXmlProtocolNamespaceClientContextParameters = Aws::Endpoint::ClientContextParameters; - -using RestXmlProtocolNamespaceClientConfiguration = Aws::Client::GenericClientConfiguration; -using RestXmlProtocolNamespaceBuiltInParameters = Aws::Endpoint::BuiltInParameters; - -/** - * The type for the RestXmlProtocolNamespace Client Endpoint Provider. - * Inherit from this Base class / "Interface" should you want to provide a custom endpoint provider. - * The SDK must use service-specific type for each service per specification. - */ -using RestXmlProtocolNamespaceEndpointProviderBase = - EndpointProviderBase; - -using RestXmlProtocolNamespaceDefaultEpProviderBase = - DefaultEndpointProvider; - -/** - * Default endpoint provider used for this service - */ -class AWS_RESTXMLPROTOCOLNAMESPACE_API RestXmlProtocolNamespaceEndpointProvider : public RestXmlProtocolNamespaceDefaultEpProviderBase -{ -public: - using RestXmlProtocolNamespaceResolveEndpointOutcome = Aws::Endpoint::ResolveEndpointOutcome; - - RestXmlProtocolNamespaceEndpointProvider() - : RestXmlProtocolNamespaceDefaultEpProviderBase(Aws::RestXmlProtocolNamespace::RestXmlProtocolNamespaceEndpointRules::GetRulesBlob(), Aws::RestXmlProtocolNamespace::RestXmlProtocolNamespaceEndpointRules::RulesBlobSize) - {} - - ~RestXmlProtocolNamespaceEndpointProvider() - { - } -}; -} // namespace Endpoint -} // namespace RestXmlProtocolNamespace -} // namespace Aws diff --git a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespaceEndpointRules.h b/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespaceEndpointRules.h deleted file mode 100644 index 9e9f1d99b32..00000000000 --- a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespaceEndpointRules.h +++ /dev/null @@ -1,23 +0,0 @@ -/** - * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. - * SPDX-License-Identifier: Apache-2.0. - */ - -#pragma once -#include -#include - -namespace Aws -{ -namespace RestXmlProtocolNamespace -{ -class RestXmlProtocolNamespaceEndpointRules -{ -public: - static const size_t RulesBlobStrLen; - static const size_t RulesBlobSize; - - static const char* GetRulesBlob(); -}; -} // namespace RestXmlProtocolNamespace -} // namespace Aws diff --git a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespaceErrorMarshaller.h b/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespaceErrorMarshaller.h deleted file mode 100644 index cde62ab78be..00000000000 --- a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespaceErrorMarshaller.h +++ /dev/null @@ -1,23 +0,0 @@ -/** - * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. - * SPDX-License-Identifier: Apache-2.0. - */ - -#pragma once - -#include -#include - -namespace Aws -{ -namespace Client -{ - -class AWS_RESTXMLPROTOCOLNAMESPACE_API RestXmlProtocolNamespaceErrorMarshaller : public Aws::Client::XmlErrorMarshaller -{ -public: - Aws::Client::AWSError FindErrorByName(const char* exceptionName) const override; -}; - -} // namespace Client -} // namespace Aws diff --git a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespaceErrors.h b/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespaceErrors.h deleted file mode 100644 index 60a8b175c52..00000000000 --- a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespaceErrors.h +++ /dev/null @@ -1,72 +0,0 @@ -/** - * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. - * SPDX-License-Identifier: Apache-2.0. - */ - -#pragma once - -#include -#include -#include - -namespace Aws -{ -namespace RestXmlProtocolNamespace -{ -enum class RestXmlProtocolNamespaceErrors -{ - //From Core// - ////////////////////////////////////////////////////////////////////////////////////////// - INCOMPLETE_SIGNATURE = 0, - INTERNAL_FAILURE = 1, - INVALID_ACTION = 2, - INVALID_CLIENT_TOKEN_ID = 3, - INVALID_PARAMETER_COMBINATION = 4, - INVALID_QUERY_PARAMETER = 5, - INVALID_PARAMETER_VALUE = 6, - MISSING_ACTION = 7, // SDK should never allow - MISSING_AUTHENTICATION_TOKEN = 8, // SDK should never allow - MISSING_PARAMETER = 9, // SDK should never allow - OPT_IN_REQUIRED = 10, - REQUEST_EXPIRED = 11, - SERVICE_UNAVAILABLE = 12, - THROTTLING = 13, - VALIDATION = 14, - ACCESS_DENIED = 15, - RESOURCE_NOT_FOUND = 16, - UNRECOGNIZED_CLIENT = 17, - MALFORMED_QUERY_STRING = 18, - SLOW_DOWN = 19, - REQUEST_TIME_TOO_SKEWED = 20, - INVALID_SIGNATURE = 21, - SIGNATURE_DOES_NOT_MATCH = 22, - INVALID_ACCESS_KEY_ID = 23, - REQUEST_TIMEOUT = 24, - NETWORK_CONNECTION = 99, - - UNKNOWN = 100, - /////////////////////////////////////////////////////////////////////////////////////////// - - -}; - -class AWS_RESTXMLPROTOCOLNAMESPACE_API RestXmlProtocolNamespaceError : public Aws::Client::AWSError -{ -public: - RestXmlProtocolNamespaceError() {} - RestXmlProtocolNamespaceError(const Aws::Client::AWSError& rhs) : Aws::Client::AWSError(rhs) {} - RestXmlProtocolNamespaceError(Aws::Client::AWSError&& rhs) : Aws::Client::AWSError(rhs) {} - RestXmlProtocolNamespaceError(const Aws::Client::AWSError& rhs) : Aws::Client::AWSError(rhs) {} - RestXmlProtocolNamespaceError(Aws::Client::AWSError&& rhs) : Aws::Client::AWSError(rhs) {} - - template - T GetModeledError(); -}; - -namespace RestXmlProtocolNamespaceErrorMapper -{ - AWS_RESTXMLPROTOCOLNAMESPACE_API Aws::Client::AWSError GetErrorForName(const char* errorName); -} - -} // namespace RestXmlProtocolNamespace -} // namespace Aws diff --git a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespaceRequest.h b/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespaceRequest.h deleted file mode 100644 index fd8b8b1bb24..00000000000 --- a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespaceRequest.h +++ /dev/null @@ -1,46 +0,0 @@ -/** - * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. - * SPDX-License-Identifier: Apache-2.0. - */ - -#pragma once -#include -#include -#include -#include -#include - -namespace Aws -{ -namespace RestXmlProtocolNamespace -{ - class AWS_RESTXMLPROTOCOLNAMESPACE_API RestXmlProtocolNamespaceRequest : public Aws::AmazonSerializableWebServiceRequest - { - public: - using EndpointParameter = Aws::Endpoint::EndpointParameter; - using EndpointParameters = Aws::Endpoint::EndpointParameters; - - virtual ~RestXmlProtocolNamespaceRequest () {} - - void AddParametersToRequest(Aws::Http::HttpRequest& httpRequest) const { AWS_UNREFERENCED_PARAM(httpRequest); } - - inline Aws::Http::HeaderValueCollection GetHeaders() const override - { - auto headers = GetRequestSpecificHeaders(); - - if(headers.size() == 0 || (headers.size() > 0 && headers.count(Aws::Http::CONTENT_TYPE_HEADER) == 0)) - { - headers.emplace(Aws::Http::HeaderValuePair(Aws::Http::CONTENT_TYPE_HEADER, Aws::AMZN_XML_CONTENT_TYPE )); - } - headers.emplace(Aws::Http::HeaderValuePair(Aws::Http::API_VERSION_HEADER, "2019-12-16")); - return headers; - } - - protected: - virtual Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const { return Aws::Http::HeaderValueCollection(); } - - }; - - -} // namespace RestXmlProtocolNamespace -} // namespace Aws diff --git a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespaceServiceClientModel.h b/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespaceServiceClientModel.h deleted file mode 100644 index 8a85a2658f4..00000000000 --- a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespaceServiceClientModel.h +++ /dev/null @@ -1,81 +0,0 @@ -/** - * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. - * SPDX-License-Identifier: Apache-2.0. - */ - -#pragma once - -/* Generic header includes */ -#include -#include -#include -#include -#include -#include -#include -#include -#include -/* End of generic header includes */ - -/* Service model headers required in RestXmlProtocolNamespaceClient header */ -#include -#include -/* End of service model headers required in RestXmlProtocolNamespaceClient header */ - -namespace Aws -{ - namespace Http - { - class HttpClient; - class HttpClientFactory; - } // namespace Http - - namespace Utils - { - template< typename R, typename E> class Outcome; - - namespace Threading - { - class Executor; - } // namespace Threading - } // namespace Utils - - namespace Auth - { - class AWSCredentials; - class AWSCredentialsProvider; - } // namespace Auth - - namespace Client - { - class RetryStrategy; - } // namespace Client - - namespace RestXmlProtocolNamespace - { - using RestXmlProtocolNamespaceClientConfiguration = Aws::Client::GenericClientConfiguration; - using RestXmlProtocolNamespaceEndpointProviderBase = Aws::RestXmlProtocolNamespace::Endpoint::RestXmlProtocolNamespaceEndpointProviderBase; - using RestXmlProtocolNamespaceEndpointProvider = Aws::RestXmlProtocolNamespace::Endpoint::RestXmlProtocolNamespaceEndpointProvider; - - namespace Model - { - /* Service model forward declarations required in RestXmlProtocolNamespaceClient header */ - class SimpleScalarPropertiesRequest; - /* End of service model forward declarations required in RestXmlProtocolNamespaceClient header */ - - /* Service model Outcome class definitions */ - typedef Aws::Utils::Outcome SimpleScalarPropertiesOutcome; - /* End of service model Outcome class definitions */ - - /* Service model Outcome callable definitions */ - typedef std::future SimpleScalarPropertiesOutcomeCallable; - /* End of service model Outcome callable definitions */ - } // namespace Model - - class RestXmlProtocolNamespaceClient; - - /* Service model async handlers definitions */ - typedef std::function&) > SimpleScalarPropertiesResponseReceivedHandler; - /* End of service model async handlers definitions */ - } // namespace RestXmlProtocolNamespace -} // namespace Aws diff --git a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespace_EXPORTS.h b/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespace_EXPORTS.h deleted file mode 100644 index 69645f8d383..00000000000 --- a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/RestXmlProtocolNamespace_EXPORTS.h +++ /dev/null @@ -1,32 +0,0 @@ -/** - * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. - * SPDX-License-Identifier: Apache-2.0. - */ - -#pragma once - -#ifdef _MSC_VER - //disable windows complaining about max template size. - #pragma warning (disable : 4503) -#endif // _MSC_VER - -#if defined (USE_WINDOWS_DLL_SEMANTICS) || defined (_WIN32) - #ifdef _MSC_VER - #pragma warning(disable : 4251) - #endif // _MSC_VER - - #ifdef USE_IMPORT_EXPORT - #ifdef AWS_RESTXMLPROTOCOLNAMESPACE_EXPORTS - #define AWS_RESTXMLPROTOCOLNAMESPACE_API __declspec(dllexport) - #else - #define AWS_RESTXMLPROTOCOLNAMESPACE_API __declspec(dllimport) - #endif /* AWS_RESTXMLPROTOCOLNAMESPACE_EXPORTS */ - #define AWS_RESTXMLPROTOCOLNAMESPACE_EXTERN - #else - #define AWS_RESTXMLPROTOCOLNAMESPACE_API - #define AWS_RESTXMLPROTOCOLNAMESPACE_EXTERN extern - #endif // USE_IMPORT_EXPORT -#else // defined (USE_WINDOWS_DLL_SEMANTICS) || defined (WIN32) - #define AWS_RESTXMLPROTOCOLNAMESPACE_API - #define AWS_RESTXMLPROTOCOLNAMESPACE_EXTERN extern -#endif // defined (USE_WINDOWS_DLL_SEMANTICS) || defined (WIN32) diff --git a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/model/NestedWithNamespace.h b/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/model/NestedWithNamespace.h deleted file mode 100644 index 3d273028a31..00000000000 --- a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/model/NestedWithNamespace.h +++ /dev/null @@ -1,52 +0,0 @@ -/** - * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. - * SPDX-License-Identifier: Apache-2.0. - */ - -#pragma once -#include -#include -#include - -namespace Aws -{ -namespace Utils -{ -namespace Xml -{ - class XmlNode; -} // namespace Xml -} // namespace Utils -namespace RestXmlProtocolNamespace -{ -namespace Model -{ - - class NestedWithNamespace - { - public: - AWS_RESTXMLPROTOCOLNAMESPACE_API NestedWithNamespace() = default; - AWS_RESTXMLPROTOCOLNAMESPACE_API NestedWithNamespace(const Aws::Utils::Xml::XmlNode& xmlNode); - AWS_RESTXMLPROTOCOLNAMESPACE_API NestedWithNamespace& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); - - AWS_RESTXMLPROTOCOLNAMESPACE_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const; - - - ///@{ - - inline const Aws::String& GetAttrField() const { return m_attrField; } - inline bool AttrFieldHasBeenSet() const { return m_attrFieldHasBeenSet; } - template - void SetAttrField(AttrFieldT&& value) { m_attrFieldHasBeenSet = true; m_attrField = std::forward(value); } - template - NestedWithNamespace& WithAttrField(AttrFieldT&& value) { SetAttrField(std::forward(value)); return *this;} - ///@} - private: - - Aws::String m_attrField; - bool m_attrFieldHasBeenSet = false; - }; - -} // namespace Model -} // namespace RestXmlProtocolNamespace -} // namespace Aws diff --git a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/model/SimpleScalarPropertiesRequest.h b/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/model/SimpleScalarPropertiesRequest.h deleted file mode 100644 index ae975165a36..00000000000 --- a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/model/SimpleScalarPropertiesRequest.h +++ /dev/null @@ -1,182 +0,0 @@ -/** - * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. - * SPDX-License-Identifier: Apache-2.0. - */ - -#pragma once -#include -#include -#include -#include -#include - -namespace Aws -{ -namespace RestXmlProtocolNamespace -{ -namespace Model -{ - - /** - */ - class SimpleScalarPropertiesRequest : public RestXmlProtocolNamespaceRequest - { - public: - AWS_RESTXMLPROTOCOLNAMESPACE_API SimpleScalarPropertiesRequest() = default; - - // Service request name is the Operation name which will send this request out, - // each operation should has unique request name, so that we can get operation's name from this request. - // Note: this is not true for response, multiple operations may have the same response name, - // so we can not get operation's name from response. - inline virtual const char* GetServiceRequestName() const override { return "SimpleScalarProperties"; } - - AWS_RESTXMLPROTOCOLNAMESPACE_API Aws::String SerializePayload() const override; - - AWS_RESTXMLPROTOCOLNAMESPACE_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; - - - ///@{ - - inline const Aws::String& GetFoo() const { return m_foo; } - inline bool FooHasBeenSet() const { return m_fooHasBeenSet; } - template - void SetFoo(FooT&& value) { m_fooHasBeenSet = true; m_foo = std::forward(value); } - template - SimpleScalarPropertiesRequest& WithFoo(FooT&& value) { SetFoo(std::forward(value)); return *this;} - ///@} - - ///@{ - - inline const Aws::String& GetStringValue() const { return m_stringValue; } - inline bool StringValueHasBeenSet() const { return m_stringValueHasBeenSet; } - template - void SetStringValue(StringValueT&& value) { m_stringValueHasBeenSet = true; m_stringValue = std::forward(value); } - template - SimpleScalarPropertiesRequest& WithStringValue(StringValueT&& value) { SetStringValue(std::forward(value)); return *this;} - ///@} - - ///@{ - - inline bool GetTrueBooleanValue() const { return m_trueBooleanValue; } - inline bool TrueBooleanValueHasBeenSet() const { return m_trueBooleanValueHasBeenSet; } - inline void SetTrueBooleanValue(bool value) { m_trueBooleanValueHasBeenSet = true; m_trueBooleanValue = value; } - inline SimpleScalarPropertiesRequest& WithTrueBooleanValue(bool value) { SetTrueBooleanValue(value); return *this;} - ///@} - - ///@{ - - inline bool GetFalseBooleanValue() const { return m_falseBooleanValue; } - inline bool FalseBooleanValueHasBeenSet() const { return m_falseBooleanValueHasBeenSet; } - inline void SetFalseBooleanValue(bool value) { m_falseBooleanValueHasBeenSet = true; m_falseBooleanValue = value; } - inline SimpleScalarPropertiesRequest& WithFalseBooleanValue(bool value) { SetFalseBooleanValue(value); return *this;} - ///@} - - ///@{ - - inline int GetByteValue() const { return m_byteValue; } - inline bool ByteValueHasBeenSet() const { return m_byteValueHasBeenSet; } - inline void SetByteValue(int value) { m_byteValueHasBeenSet = true; m_byteValue = value; } - inline SimpleScalarPropertiesRequest& WithByteValue(int value) { SetByteValue(value); return *this;} - ///@} - - ///@{ - - inline int GetShortValue() const { return m_shortValue; } - inline bool ShortValueHasBeenSet() const { return m_shortValueHasBeenSet; } - inline void SetShortValue(int value) { m_shortValueHasBeenSet = true; m_shortValue = value; } - inline SimpleScalarPropertiesRequest& WithShortValue(int value) { SetShortValue(value); return *this;} - ///@} - - ///@{ - - inline int GetIntegerValue() const { return m_integerValue; } - inline bool IntegerValueHasBeenSet() const { return m_integerValueHasBeenSet; } - inline void SetIntegerValue(int value) { m_integerValueHasBeenSet = true; m_integerValue = value; } - inline SimpleScalarPropertiesRequest& WithIntegerValue(int value) { SetIntegerValue(value); return *this;} - ///@} - - ///@{ - - inline long long GetLongValue() const { return m_longValue; } - inline bool LongValueHasBeenSet() const { return m_longValueHasBeenSet; } - inline void SetLongValue(long long value) { m_longValueHasBeenSet = true; m_longValue = value; } - inline SimpleScalarPropertiesRequest& WithLongValue(long long value) { SetLongValue(value); return *this;} - ///@} - - ///@{ - - inline double GetFloatValue() const { return m_floatValue; } - inline bool FloatValueHasBeenSet() const { return m_floatValueHasBeenSet; } - inline void SetFloatValue(double value) { m_floatValueHasBeenSet = true; m_floatValue = value; } - inline SimpleScalarPropertiesRequest& WithFloatValue(double value) { SetFloatValue(value); return *this;} - ///@} - - ///@{ - - inline const NestedWithNamespace& GetNested() const { return m_nested; } - inline bool NestedHasBeenSet() const { return m_nestedHasBeenSet; } - template - void SetNested(NestedT&& value) { m_nestedHasBeenSet = true; m_nested = std::forward(value); } - template - SimpleScalarPropertiesRequest& WithNested(NestedT&& value) { SetNested(std::forward(value)); return *this;} - ///@} - - ///@{ - - inline double GetDoubleValue() const { return m_doubleValue; } - inline bool DoubleValueHasBeenSet() const { return m_doubleValueHasBeenSet; } - inline void SetDoubleValue(double value) { m_doubleValueHasBeenSet = true; m_doubleValue = value; } - inline SimpleScalarPropertiesRequest& WithDoubleValue(double value) { SetDoubleValue(value); return *this;} - ///@} - - ///@{ - - inline const Aws::String& GetRequestId() const { return m_requestId; } - inline bool RequestIdHasBeenSet() const { return m_requestIdHasBeenSet; } - template - void SetRequestId(RequestIdT&& value) { m_requestIdHasBeenSet = true; m_requestId = std::forward(value); } - template - SimpleScalarPropertiesRequest& WithRequestId(RequestIdT&& value) { SetRequestId(std::forward(value)); return *this;} - ///@} - private: - - Aws::String m_foo; - bool m_fooHasBeenSet = false; - - Aws::String m_stringValue; - bool m_stringValueHasBeenSet = false; - - bool m_trueBooleanValue{false}; - bool m_trueBooleanValueHasBeenSet = false; - - bool m_falseBooleanValue{false}; - bool m_falseBooleanValueHasBeenSet = false; - - int m_byteValue{0}; - bool m_byteValueHasBeenSet = false; - - int m_shortValue{0}; - bool m_shortValueHasBeenSet = false; - - int m_integerValue{0}; - bool m_integerValueHasBeenSet = false; - - long long m_longValue{0}; - bool m_longValueHasBeenSet = false; - - double m_floatValue{0.0}; - bool m_floatValueHasBeenSet = false; - - NestedWithNamespace m_nested; - bool m_nestedHasBeenSet = false; - - double m_doubleValue{0.0}; - bool m_doubleValueHasBeenSet = false; - - Aws::String m_requestId; - bool m_requestIdHasBeenSet = false; - }; - -} // namespace Model -} // namespace RestXmlProtocolNamespace -} // namespace Aws diff --git a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/model/SimpleScalarPropertiesResult.h b/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/model/SimpleScalarPropertiesResult.h deleted file mode 100644 index 267b93e5c46..00000000000 --- a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/include/aws/rest-xml-protocol-namespace/model/SimpleScalarPropertiesResult.h +++ /dev/null @@ -1,168 +0,0 @@ -/** - * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. - * SPDX-License-Identifier: Apache-2.0. - */ - -#pragma once -#include -#include -#include -#include - -namespace Aws -{ -template -class AmazonWebServiceResult; - -namespace Utils -{ -namespace Xml -{ - class XmlDocument; -} // namespace Xml -} // namespace Utils -namespace RestXmlProtocolNamespace -{ -namespace Model -{ - class SimpleScalarPropertiesResult - { - public: - AWS_RESTXMLPROTOCOLNAMESPACE_API SimpleScalarPropertiesResult() = default; - AWS_RESTXMLPROTOCOLNAMESPACE_API SimpleScalarPropertiesResult(const Aws::AmazonWebServiceResult& result); - AWS_RESTXMLPROTOCOLNAMESPACE_API SimpleScalarPropertiesResult& operator=(const Aws::AmazonWebServiceResult& result); - - - ///@{ - - inline const Aws::String& GetFoo() const { return m_foo; } - template - void SetFoo(FooT&& value) { m_fooHasBeenSet = true; m_foo = std::forward(value); } - template - SimpleScalarPropertiesResult& WithFoo(FooT&& value) { SetFoo(std::forward(value)); return *this;} - ///@} - - ///@{ - - inline const Aws::String& GetStringValue() const { return m_stringValue; } - template - void SetStringValue(StringValueT&& value) { m_stringValueHasBeenSet = true; m_stringValue = std::forward(value); } - template - SimpleScalarPropertiesResult& WithStringValue(StringValueT&& value) { SetStringValue(std::forward(value)); return *this;} - ///@} - - ///@{ - - inline bool GetTrueBooleanValue() const { return m_trueBooleanValue; } - inline void SetTrueBooleanValue(bool value) { m_trueBooleanValueHasBeenSet = true; m_trueBooleanValue = value; } - inline SimpleScalarPropertiesResult& WithTrueBooleanValue(bool value) { SetTrueBooleanValue(value); return *this;} - ///@} - - ///@{ - - inline bool GetFalseBooleanValue() const { return m_falseBooleanValue; } - inline void SetFalseBooleanValue(bool value) { m_falseBooleanValueHasBeenSet = true; m_falseBooleanValue = value; } - inline SimpleScalarPropertiesResult& WithFalseBooleanValue(bool value) { SetFalseBooleanValue(value); return *this;} - ///@} - - ///@{ - - inline int GetByteValue() const { return m_byteValue; } - inline void SetByteValue(int value) { m_byteValueHasBeenSet = true; m_byteValue = value; } - inline SimpleScalarPropertiesResult& WithByteValue(int value) { SetByteValue(value); return *this;} - ///@} - - ///@{ - - inline int GetShortValue() const { return m_shortValue; } - inline void SetShortValue(int value) { m_shortValueHasBeenSet = true; m_shortValue = value; } - inline SimpleScalarPropertiesResult& WithShortValue(int value) { SetShortValue(value); return *this;} - ///@} - - ///@{ - - inline int GetIntegerValue() const { return m_integerValue; } - inline void SetIntegerValue(int value) { m_integerValueHasBeenSet = true; m_integerValue = value; } - inline SimpleScalarPropertiesResult& WithIntegerValue(int value) { SetIntegerValue(value); return *this;} - ///@} - - ///@{ - - inline long long GetLongValue() const { return m_longValue; } - inline void SetLongValue(long long value) { m_longValueHasBeenSet = true; m_longValue = value; } - inline SimpleScalarPropertiesResult& WithLongValue(long long value) { SetLongValue(value); return *this;} - ///@} - - ///@{ - - inline double GetFloatValue() const { return m_floatValue; } - inline void SetFloatValue(double value) { m_floatValueHasBeenSet = true; m_floatValue = value; } - inline SimpleScalarPropertiesResult& WithFloatValue(double value) { SetFloatValue(value); return *this;} - ///@} - - ///@{ - - inline const NestedWithNamespace& GetNested() const { return m_nested; } - template - void SetNested(NestedT&& value) { m_nestedHasBeenSet = true; m_nested = std::forward(value); } - template - SimpleScalarPropertiesResult& WithNested(NestedT&& value) { SetNested(std::forward(value)); return *this;} - ///@} - - ///@{ - - inline double GetDoubleValue() const { return m_doubleValue; } - inline void SetDoubleValue(double value) { m_doubleValueHasBeenSet = true; m_doubleValue = value; } - inline SimpleScalarPropertiesResult& WithDoubleValue(double value) { SetDoubleValue(value); return *this;} - ///@} - - ///@{ - - inline const Aws::String& GetRequestId() const { return m_requestId; } - template - void SetRequestId(RequestIdT&& value) { m_requestIdHasBeenSet = true; m_requestId = std::forward(value); } - template - SimpleScalarPropertiesResult& WithRequestId(RequestIdT&& value) { SetRequestId(std::forward(value)); return *this;} - ///@} - private: - - Aws::String m_foo; - bool m_fooHasBeenSet = false; - - Aws::String m_stringValue; - bool m_stringValueHasBeenSet = false; - - bool m_trueBooleanValue{false}; - bool m_trueBooleanValueHasBeenSet = false; - - bool m_falseBooleanValue{false}; - bool m_falseBooleanValueHasBeenSet = false; - - int m_byteValue{0}; - bool m_byteValueHasBeenSet = false; - - int m_shortValue{0}; - bool m_shortValueHasBeenSet = false; - - int m_integerValue{0}; - bool m_integerValueHasBeenSet = false; - - long long m_longValue{0}; - bool m_longValueHasBeenSet = false; - - double m_floatValue{0.0}; - bool m_floatValueHasBeenSet = false; - - NestedWithNamespace m_nested; - bool m_nestedHasBeenSet = false; - - double m_doubleValue{0.0}; - bool m_doubleValueHasBeenSet = false; - - Aws::String m_requestId; - bool m_requestIdHasBeenSet = false; - }; - -} // namespace Model -} // namespace RestXmlProtocolNamespace -} // namespace Aws diff --git a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/RestXmlProtocolNamespaceClient.cpp b/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/RestXmlProtocolNamespaceClient.cpp deleted file mode 100644 index b7c74b14311..00000000000 --- a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/RestXmlProtocolNamespaceClient.cpp +++ /dev/null @@ -1,195 +0,0 @@ -/** - * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. - * SPDX-License-Identifier: Apache-2.0. - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include - -#include - - -using namespace Aws; -using namespace Aws::Auth; -using namespace Aws::Client; -using namespace Aws::RestXmlProtocolNamespace; -using namespace Aws::RestXmlProtocolNamespace::Model; -using namespace Aws::Http; -using namespace Aws::Utils::Xml; -using namespace smithy::components::tracing; -using ResolveEndpointOutcome = Aws::Endpoint::ResolveEndpointOutcome; - - -namespace Aws -{ - namespace RestXmlProtocolNamespace - { - const char SERVICE_NAME[] = "restxmlwithnamespace"; - const char ALLOCATION_TAG[] = "RestXmlProtocolNamespaceClient"; - } -} -const char* RestXmlProtocolNamespaceClient::GetServiceName() {return SERVICE_NAME;} -const char* RestXmlProtocolNamespaceClient::GetAllocationTag() {return ALLOCATION_TAG;} - -RestXmlProtocolNamespaceClient::RestXmlProtocolNamespaceClient(const RestXmlProtocolNamespace::RestXmlProtocolNamespaceClientConfiguration& clientConfiguration, - std::shared_ptr endpointProvider) : - BASECLASS(clientConfiguration, - Aws::MakeShared(ALLOCATION_TAG, - Aws::MakeShared(ALLOCATION_TAG), - SERVICE_NAME, - Aws::Region::ComputeSignerRegion(clientConfiguration.region)), - Aws::MakeShared(ALLOCATION_TAG)), - m_clientConfiguration(clientConfiguration), - m_endpointProvider(endpointProvider ? std::move(endpointProvider) : Aws::MakeShared(ALLOCATION_TAG)) -{ - init(m_clientConfiguration); -} - -RestXmlProtocolNamespaceClient::RestXmlProtocolNamespaceClient(const AWSCredentials& credentials, - std::shared_ptr endpointProvider, - const RestXmlProtocolNamespace::RestXmlProtocolNamespaceClientConfiguration& clientConfiguration) : - BASECLASS(clientConfiguration, - Aws::MakeShared(ALLOCATION_TAG, - Aws::MakeShared(ALLOCATION_TAG, credentials), - SERVICE_NAME, - Aws::Region::ComputeSignerRegion(clientConfiguration.region)), - Aws::MakeShared(ALLOCATION_TAG)), - m_clientConfiguration(clientConfiguration), - m_endpointProvider(endpointProvider ? std::move(endpointProvider) : Aws::MakeShared(ALLOCATION_TAG)) -{ - init(m_clientConfiguration); -} - -RestXmlProtocolNamespaceClient::RestXmlProtocolNamespaceClient(const std::shared_ptr& credentialsProvider, - std::shared_ptr endpointProvider, - const RestXmlProtocolNamespace::RestXmlProtocolNamespaceClientConfiguration& clientConfiguration) : - BASECLASS(clientConfiguration, - Aws::MakeShared(ALLOCATION_TAG, - credentialsProvider, - SERVICE_NAME, - Aws::Region::ComputeSignerRegion(clientConfiguration.region)), - Aws::MakeShared(ALLOCATION_TAG)), - m_clientConfiguration(clientConfiguration), - m_endpointProvider(endpointProvider ? std::move(endpointProvider) : Aws::MakeShared(ALLOCATION_TAG)) -{ - init(m_clientConfiguration); -} - - /* Legacy constructors due deprecation */ - RestXmlProtocolNamespaceClient::RestXmlProtocolNamespaceClient(const Client::ClientConfiguration& clientConfiguration) : - BASECLASS(clientConfiguration, - Aws::MakeShared(ALLOCATION_TAG, - Aws::MakeShared(ALLOCATION_TAG), - SERVICE_NAME, - Aws::Region::ComputeSignerRegion(clientConfiguration.region)), - Aws::MakeShared(ALLOCATION_TAG)), - m_clientConfiguration(clientConfiguration), - m_endpointProvider(Aws::MakeShared(ALLOCATION_TAG)) -{ - init(m_clientConfiguration); -} - -RestXmlProtocolNamespaceClient::RestXmlProtocolNamespaceClient(const AWSCredentials& credentials, - const Client::ClientConfiguration& clientConfiguration) : - BASECLASS(clientConfiguration, - Aws::MakeShared(ALLOCATION_TAG, - Aws::MakeShared(ALLOCATION_TAG, credentials), - SERVICE_NAME, - Aws::Region::ComputeSignerRegion(clientConfiguration.region)), - Aws::MakeShared(ALLOCATION_TAG)), - m_clientConfiguration(clientConfiguration), - m_endpointProvider(Aws::MakeShared(ALLOCATION_TAG)) -{ - init(m_clientConfiguration); -} - -RestXmlProtocolNamespaceClient::RestXmlProtocolNamespaceClient(const std::shared_ptr& credentialsProvider, - const Client::ClientConfiguration& clientConfiguration) : - BASECLASS(clientConfiguration, - Aws::MakeShared(ALLOCATION_TAG, - credentialsProvider, - SERVICE_NAME, - Aws::Region::ComputeSignerRegion(clientConfiguration.region)), - Aws::MakeShared(ALLOCATION_TAG)), - m_clientConfiguration(clientConfiguration), - m_endpointProvider(Aws::MakeShared(ALLOCATION_TAG)) -{ - init(m_clientConfiguration); -} - - /* End of legacy constructors due deprecation */ -RestXmlProtocolNamespaceClient::~RestXmlProtocolNamespaceClient() -{ - ShutdownSdkClient(this, -1); -} - -std::shared_ptr& RestXmlProtocolNamespaceClient::accessEndpointProvider() -{ - return m_endpointProvider; -} - -void RestXmlProtocolNamespaceClient::init(const RestXmlProtocolNamespace::RestXmlProtocolNamespaceClientConfiguration& config) -{ - AWSClient::SetServiceClientName("Rest Xml Protocol Namespace"); - if (!m_clientConfiguration.executor) { - if (!m_clientConfiguration.configFactories.executorCreateFn()) { - AWS_LOGSTREAM_FATAL(ALLOCATION_TAG, "Failed to initialize client: config is missing Executor or executorCreateFn"); - m_isInitialized = false; - return; - } - m_clientConfiguration.executor = m_clientConfiguration.configFactories.executorCreateFn(); - } - AWS_CHECK_PTR(SERVICE_NAME, m_endpointProvider); - m_endpointProvider->InitBuiltInParameters(config); -} - -void RestXmlProtocolNamespaceClient::OverrideEndpoint(const Aws::String& endpoint) -{ - AWS_CHECK_PTR(SERVICE_NAME, m_endpointProvider); - m_endpointProvider->OverrideEndpoint(endpoint); -} - -SimpleScalarPropertiesOutcome RestXmlProtocolNamespaceClient::SimpleScalarProperties(const SimpleScalarPropertiesRequest& request) const -{ - AWS_OPERATION_GUARD(SimpleScalarProperties); - AWS_OPERATION_CHECK_PTR(m_endpointProvider, SimpleScalarProperties, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE); - AWS_OPERATION_CHECK_PTR(m_telemetryProvider, SimpleScalarProperties, CoreErrors, CoreErrors::NOT_INITIALIZED); - auto tracer = m_telemetryProvider->getTracer(this->GetServiceClientName(), {}); - auto meter = m_telemetryProvider->getMeter(this->GetServiceClientName(), {}); - AWS_OPERATION_CHECK_PTR(meter, SimpleScalarProperties, CoreErrors, CoreErrors::NOT_INITIALIZED); - auto span = tracer->CreateSpan(Aws::String(this->GetServiceClientName()) + "." + request.GetServiceRequestName(), - {{ TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName() }, { TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName() }, { TracingUtils::SMITHY_SYSTEM_DIMENSION, TracingUtils::SMITHY_METHOD_AWS_VALUE }}, - smithy::components::tracing::SpanKind::CLIENT); - return TracingUtils::MakeCallWithTiming( - [&]()-> SimpleScalarPropertiesOutcome { - auto endpointResolutionOutcome = TracingUtils::MakeCallWithTiming( - [&]() -> ResolveEndpointOutcome { return m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams()); }, - TracingUtils::SMITHY_CLIENT_ENDPOINT_RESOLUTION_METRIC, - *meter, - {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); - AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, SimpleScalarProperties, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage()); - endpointResolutionOutcome.GetResult().AddPathSegments("/SimpleScalarProperties"); - return SimpleScalarPropertiesOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT)); - }, - TracingUtils::SMITHY_CLIENT_DURATION_METRIC, - *meter, - {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}}); -} - diff --git a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/RestXmlProtocolNamespaceEndpointProvider.cpp b/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/RestXmlProtocolNamespaceEndpointProvider.cpp deleted file mode 100644 index 4cbe4db6fc0..00000000000 --- a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/RestXmlProtocolNamespaceEndpointProvider.cpp +++ /dev/null @@ -1,16 +0,0 @@ -/** - * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. - * SPDX-License-Identifier: Apache-2.0. - */ - -#include - -namespace Aws -{ -namespace RestXmlProtocolNamespace -{ -namespace Endpoint -{ -} // namespace Endpoint -} // namespace RestXmlProtocolNamespace -} // namespace Aws diff --git a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/RestXmlProtocolNamespaceEndpointRules.cpp b/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/RestXmlProtocolNamespaceEndpointRules.cpp deleted file mode 100644 index 6e1572b66f5..00000000000 --- a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/RestXmlProtocolNamespaceEndpointRules.cpp +++ /dev/null @@ -1,70 +0,0 @@ -/** - * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. - * SPDX-License-Identifier: Apache-2.0. - */ - -#include -#include - -namespace Aws -{ -namespace RestXmlProtocolNamespace -{ -const size_t RestXmlProtocolNamespaceEndpointRules::RulesBlobStrLen = 1086; -const size_t RestXmlProtocolNamespaceEndpointRules::RulesBlobSize = 1087; - -using RulesBlobT = Aws::Array; -static constexpr RulesBlobT RulesBlob = {{ -'{','"','v','e','r','s','i','o','n','"',':','"','1','.','3','"',',','"','p','a','r','a','m','e','t', -'e','r','s','"',':','{','"','R','e','g','i','o','n','"',':','{','"','b','u','i','l','t','I','n','"', -':','"','A','W','S',':',':','R','e','g','i','o','n','"',',','"','r','e','q','u','i','r','e','d','"', -':','t','r','u','e',',','"','d','o','c','u','m','e','n','t','a','t','i','o','n','"',':','"','T','h', -'e',' ','A','W','S',' ','r','e','g','i','o','n',' ','u','s','e','d',' ','t','o',' ','d','i','s','p', -'a','t','c','h',' ','t','h','e',' ','r','e','q','u','e','s','t','.','"',',','"','t','y','p','e','"', -':','"','S','t','r','i','n','g','"','}',',','"','U','s','e','D','u','a','l','S','t','a','c','k','"', -':','{','"','b','u','i','l','t','I','n','"',':','"','A','W','S',':',':','U','s','e','D','u','a','l', -'S','t','a','c','k','"',',','"','r','e','q','u','i','r','e','d','"',':','t','r','u','e',',','"','d', -'e','f','a','u','l','t','"',':','f','a','l','s','e',',','"','d','o','c','u','m','e','n','t','a','t', -'i','o','n','"',':','"','W','h','e','n',' ','t','r','u','e',',',' ','u','s','e',' ','t','h','e',' ', -'d','u','a','l','-','s','t','a','c','k',' ','e','n','d','p','o','i','n','t','.',' ','I','f',' ','t', -'h','e',' ','c','o','n','f','i','g','u','r','e','d',' ','e','n','d','p','o','i','n','t',' ','d','o', -'e','s',' ','n','o','t',' ','s','u','p','p','o','r','t',' ','d','u','a','l','-','s','t','a','c','k', -',',' ','d','i','s','p','a','t','c','h','i','n','g',' ','t','h','e',' ','r','e','q','u','e','s','t', -' ','M','A','Y',' ','r','e','t','u','r','n',' ','a','n',' ','e','r','r','o','r','.','"',',','"','t', -'y','p','e','"',':','"','B','o','o','l','e','a','n','"','}',',','"','U','s','e','F','I','P','S','"', -':','{','"','b','u','i','l','t','I','n','"',':','"','A','W','S',':',':','U','s','e','F','I','P','S', -'"',',','"','r','e','q','u','i','r','e','d','"',':','t','r','u','e',',','"','d','e','f','a','u','l', -'t','"',':','f','a','l','s','e',',','"','d','o','c','u','m','e','n','t','a','t','i','o','n','"',':', -'"','W','h','e','n',' ','t','r','u','e',',',' ','s','e','n','d',' ','t','h','i','s',' ','r','e','q', -'u','e','s','t',' ','t','o',' ','t','h','e',' ','F','I','P','S','-','c','o','m','p','l','i','a','n', -'t',' ','r','e','g','i','o','n','a','l',' ','e','n','d','p','o','i','n','t','.',' ','I','f',' ','t', -'h','e',' ','c','o','n','f','i','g','u','r','e','d',' ','e','n','d','p','o','i','n','t',' ','d','o', -'e','s',' ','n','o','t',' ','h','a','v','e',' ','a',' ','F','I','P','S',' ','c','o','m','p','l','i', -'a','n','t',' ','e','n','d','p','o','i','n','t',',',' ','d','i','s','p','a','t','c','h','i','n','g', -' ','t','h','e',' ','r','e','q','u','e','s','t',' ','w','i','l','l',' ','r','e','t','u','r','n',' ', -'a','n',' ','e','r','r','o','r','.','"',',','"','t','y','p','e','"',':','"','B','o','o','l','e','a', -'n','"','}',',','"','E','n','d','p','o','i','n','t','"',':','{','"','b','u','i','l','t','I','n','"', -':','"','S','D','K',':',':','E','n','d','p','o','i','n','t','"',',','"','r','e','q','u','i','r','e', -'d','"',':','f','a','l','s','e',',','"','d','o','c','u','m','e','n','t','a','t','i','o','n','"',':', -'"','O','v','e','r','r','i','d','e',' ','t','h','e',' ','e','n','d','p','o','i','n','t',' ','u','s', -'e','d',' ','t','o',' ','s','e','n','d',' ','t','h','i','s',' ','r','e','q','u','e','s','t','"',',', -'"','t','y','p','e','"',':','"','S','t','r','i','n','g','"','}','}',',','"','r','u','l','e','s','"', -':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"', -':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t', -'i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l', -'"',':','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',',','"','p','r','o', -'p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[', -'{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R', -'e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n', -'g','N','a','m','e','"',':','"','t','e','s','t','-','s','e','r','v','i','c','e','"','}',']','}',',', -'"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d', -'p','o','i','n','t','"','}',']','}',']','}','\0' -}}; - -const char* RestXmlProtocolNamespaceEndpointRules::GetRulesBlob() -{ - return RulesBlob.data(); -} - -} // namespace RestXmlProtocolNamespace -} // namespace Aws diff --git a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/RestXmlProtocolNamespaceErrorMarshaller.cpp b/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/RestXmlProtocolNamespaceErrorMarshaller.cpp deleted file mode 100644 index 0643396666e..00000000000 --- a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/RestXmlProtocolNamespaceErrorMarshaller.cpp +++ /dev/null @@ -1,22 +0,0 @@ -/** - * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. - * SPDX-License-Identifier: Apache-2.0. - */ - -#include -#include -#include - -using namespace Aws::Client; -using namespace Aws::RestXmlProtocolNamespace; - -AWSError RestXmlProtocolNamespaceErrorMarshaller::FindErrorByName(const char* errorName) const -{ - AWSError error = RestXmlProtocolNamespaceErrorMapper::GetErrorForName(errorName); - if(error.GetErrorType() != CoreErrors::UNKNOWN) - { - return error; - } - - return AWSErrorMarshaller::FindErrorByName(errorName); -} \ No newline at end of file diff --git a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/RestXmlProtocolNamespaceErrors.cpp b/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/RestXmlProtocolNamespaceErrors.cpp deleted file mode 100644 index 94c45cb3b15..00000000000 --- a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/RestXmlProtocolNamespaceErrors.cpp +++ /dev/null @@ -1,32 +0,0 @@ -/** - * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. - * SPDX-License-Identifier: Apache-2.0. - */ - -#include -#include -#include -#include - -using namespace Aws::Client; -using namespace Aws::Utils; -using namespace Aws::RestXmlProtocolNamespace; - -namespace Aws -{ -namespace RestXmlProtocolNamespace -{ -namespace RestXmlProtocolNamespaceErrorMapper -{ - - - -AWSError GetErrorForName(const char* errorName) -{ - AWS_UNREFERENCED_PARAM(errorName); - return AWSError(CoreErrors::UNKNOWN, false); -} - -} // namespace RestXmlProtocolNamespaceErrorMapper -} // namespace RestXmlProtocolNamespace -} // namespace Aws diff --git a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/RestXmlProtocolNamespaceRequest.cpp b/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/RestXmlProtocolNamespaceRequest.cpp deleted file mode 100644 index edfe4a31e4b..00000000000 --- a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/RestXmlProtocolNamespaceRequest.cpp +++ /dev/null @@ -1,14 +0,0 @@ -/** - * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. - * SPDX-License-Identifier: Apache-2.0. - */ - - -#include - -namespace Aws -{ -namespace RestXmlProtocolNamespace -{ -} // namespace RestXmlProtocolNamespace -} // namespace Aws diff --git a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/model/NestedWithNamespace.cpp b/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/model/NestedWithNamespace.cpp deleted file mode 100644 index ef48f1b0d81..00000000000 --- a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/model/NestedWithNamespace.cpp +++ /dev/null @@ -1,57 +0,0 @@ -/** - * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. - * SPDX-License-Identifier: Apache-2.0. - */ - -#include -#include -#include -#include - -#include - -using namespace Aws::Utils::Xml; -using namespace Aws::Utils; - -namespace Aws -{ -namespace RestXmlProtocolNamespace -{ -namespace Model -{ - -NestedWithNamespace::NestedWithNamespace(const XmlNode& xmlNode) -{ - *this = xmlNode; -} - -NestedWithNamespace& NestedWithNamespace::operator =(const XmlNode& xmlNode) -{ - XmlNode resultNode = xmlNode; - - if(!resultNode.IsNull()) - { - auto attrField = resultNode.GetAttributeValue("xsi:someName"); - if(!attrField.empty()) - { - m_attrField = Aws::Utils::Xml::DecodeEscapedXmlText(attrField); - m_attrFieldHasBeenSet = true; - } - } - - return *this; -} - -void NestedWithNamespace::AddToNode(XmlNode& parentNode) const -{ - Aws::StringStream ss; - if(m_attrFieldHasBeenSet) - { - parentNode.SetAttributeValue("xsi:someName", m_attrField); - } - -} - -} // namespace Model -} // namespace RestXmlProtocolNamespace -} // namespace Aws diff --git a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/model/SimpleScalarPropertiesRequest.cpp b/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/model/SimpleScalarPropertiesRequest.cpp deleted file mode 100644 index 82826f8bd92..00000000000 --- a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/model/SimpleScalarPropertiesRequest.cpp +++ /dev/null @@ -1,126 +0,0 @@ -/** - * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. - * SPDX-License-Identifier: Apache-2.0. - */ - -#include -#include -#include -#include -#include - -#include - -using namespace Aws::RestXmlProtocolNamespace::Model; -using namespace Aws::Utils::Xml; -using namespace Aws::Utils; - - -Aws::String SimpleScalarPropertiesRequest::SerializePayload() const -{ - XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("SimpleScalarPropertiesRequest"); - - XmlNode parentNode = payloadDoc.GetRootElement(); - parentNode.SetAttributeValue("xmlns", "https://example.com"); - - Aws::StringStream ss; - if(m_stringValueHasBeenSet) - { - XmlNode stringValueNode = parentNode.CreateChildElement("stringValue"); - stringValueNode.SetText(m_stringValue); - } - - if(m_trueBooleanValueHasBeenSet) - { - XmlNode trueBooleanValueNode = parentNode.CreateChildElement("trueBooleanValue"); - ss << std::boolalpha << m_trueBooleanValue; - trueBooleanValueNode.SetText(ss.str()); - ss.str(""); - } - - if(m_falseBooleanValueHasBeenSet) - { - XmlNode falseBooleanValueNode = parentNode.CreateChildElement("falseBooleanValue"); - ss << std::boolalpha << m_falseBooleanValue; - falseBooleanValueNode.SetText(ss.str()); - ss.str(""); - } - - if(m_byteValueHasBeenSet) - { - XmlNode byteValueNode = parentNode.CreateChildElement("byteValue"); - ss << m_byteValue; - byteValueNode.SetText(ss.str()); - ss.str(""); - } - - if(m_shortValueHasBeenSet) - { - XmlNode shortValueNode = parentNode.CreateChildElement("shortValue"); - ss << m_shortValue; - shortValueNode.SetText(ss.str()); - ss.str(""); - } - - if(m_integerValueHasBeenSet) - { - XmlNode integerValueNode = parentNode.CreateChildElement("integerValue"); - ss << m_integerValue; - integerValueNode.SetText(ss.str()); - ss.str(""); - } - - if(m_longValueHasBeenSet) - { - XmlNode longValueNode = parentNode.CreateChildElement("longValue"); - ss << m_longValue; - longValueNode.SetText(ss.str()); - ss.str(""); - } - - if(m_floatValueHasBeenSet) - { - XmlNode floatValueNode = parentNode.CreateChildElement("floatValue"); - ss << m_floatValue; - floatValueNode.SetText(ss.str()); - ss.str(""); - } - - if(m_nestedHasBeenSet) - { - XmlNode nestedNode = parentNode.CreateChildElement("Nested"); - m_nested.AddToNode(nestedNode); - } - - if(m_doubleValueHasBeenSet) - { - XmlNode doubleValueNode = parentNode.CreateChildElement("DoubleDribble"); - ss << m_doubleValue; - doubleValueNode.SetText(ss.str()); - ss.str(""); - } - - return payloadDoc.ConvertToString(); -} - - -Aws::Http::HeaderValueCollection SimpleScalarPropertiesRequest::GetRequestSpecificHeaders() const -{ - Aws::Http::HeaderValueCollection headers; - Aws::StringStream ss; - if(m_fooHasBeenSet) - { - ss << m_foo; - headers.emplace("x-foo", ss.str()); - ss.str(""); - } - - if(m_requestIdHasBeenSet) - { - ss << m_requestId; - headers.emplace("x-amzn-requestid", ss.str()); - ss.str(""); - } - - return headers; -} diff --git a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/model/SimpleScalarPropertiesResult.cpp b/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/model/SimpleScalarPropertiesResult.cpp deleted file mode 100644 index c546d46d538..00000000000 --- a/generated/protocol-tests/test-clients/aws-cpp-sdk-rest-xml-protocol-namespace/source/model/SimpleScalarPropertiesResult.cpp +++ /dev/null @@ -1,109 +0,0 @@ -/** - * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. - * SPDX-License-Identifier: Apache-2.0. - */ - -#include -#include -#include -#include -#include - -#include - -using namespace Aws::RestXmlProtocolNamespace::Model; -using namespace Aws::Utils::Xml; -using namespace Aws::Utils; -using namespace Aws; - -SimpleScalarPropertiesResult::SimpleScalarPropertiesResult(const Aws::AmazonWebServiceResult& result) -{ - *this = result; -} - -SimpleScalarPropertiesResult& SimpleScalarPropertiesResult::operator =(const Aws::AmazonWebServiceResult& result) -{ - const XmlDocument& xmlDocument = result.GetPayload(); - XmlNode resultNode = xmlDocument.GetRootElement(); - - if(!resultNode.IsNull()) - { - XmlNode stringValueNode = resultNode.FirstChild("stringValue"); - if(!stringValueNode.IsNull()) - { - m_stringValue = Aws::Utils::Xml::DecodeEscapedXmlText(stringValueNode.GetText()); - m_stringValueHasBeenSet = true; - } - XmlNode trueBooleanValueNode = resultNode.FirstChild("trueBooleanValue"); - if(!trueBooleanValueNode.IsNull()) - { - m_trueBooleanValue = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(trueBooleanValueNode.GetText()).c_str()).c_str()); - m_trueBooleanValueHasBeenSet = true; - } - XmlNode falseBooleanValueNode = resultNode.FirstChild("falseBooleanValue"); - if(!falseBooleanValueNode.IsNull()) - { - m_falseBooleanValue = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(falseBooleanValueNode.GetText()).c_str()).c_str()); - m_falseBooleanValueHasBeenSet = true; - } - XmlNode byteValueNode = resultNode.FirstChild("byteValue"); - if(!byteValueNode.IsNull()) - { - m_byteValue = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(byteValueNode.GetText()).c_str()).c_str()); - m_byteValueHasBeenSet = true; - } - XmlNode shortValueNode = resultNode.FirstChild("shortValue"); - if(!shortValueNode.IsNull()) - { - m_shortValue = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(shortValueNode.GetText()).c_str()).c_str()); - m_shortValueHasBeenSet = true; - } - XmlNode integerValueNode = resultNode.FirstChild("integerValue"); - if(!integerValueNode.IsNull()) - { - m_integerValue = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(integerValueNode.GetText()).c_str()).c_str()); - m_integerValueHasBeenSet = true; - } - XmlNode longValueNode = resultNode.FirstChild("longValue"); - if(!longValueNode.IsNull()) - { - m_longValue = StringUtils::ConvertToInt64(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(longValueNode.GetText()).c_str()).c_str()); - m_longValueHasBeenSet = true; - } - XmlNode floatValueNode = resultNode.FirstChild("floatValue"); - if(!floatValueNode.IsNull()) - { - m_floatValue = StringUtils::ConvertToDouble(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(floatValueNode.GetText()).c_str()).c_str()); - m_floatValueHasBeenSet = true; - } - XmlNode nestedNode = resultNode.FirstChild("Nested"); - if(!nestedNode.IsNull()) - { - m_nested = nestedNode; - m_nestedHasBeenSet = true; - } - XmlNode doubleValueNode = resultNode.FirstChild("DoubleDribble"); - if(!doubleValueNode.IsNull()) - { - m_doubleValue = StringUtils::ConvertToDouble(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(doubleValueNode.GetText()).c_str()).c_str()); - m_doubleValueHasBeenSet = true; - } - } - - const auto& headers = result.GetHeaderValueCollection(); - const auto& fooIter = headers.find("x-foo"); - if(fooIter != headers.end()) - { - m_foo = fooIter->second; - m_fooHasBeenSet = true; - } - - const auto& requestIdIter = headers.find("x-amzn-requestid"); - if(requestIdIter != headers.end()) - { - m_requestId = requestIdIter->second; - m_requestIdHasBeenSet = true; - } - - return *this; -} diff --git a/generated/protocol-tests/tests/input/ec2/CMakeLists.txt b/generated/protocol-tests/tests/input/ec2/CMakeLists.txt index d854c672a68..010974ea78f 100644 --- a/generated/protocol-tests/tests/input/ec2/CMakeLists.txt +++ b/generated/protocol-tests/tests/input/ec2/CMakeLists.txt @@ -6,6 +6,7 @@ add_project(ec2-input-protocol-tests file(GLOB AWS_EC2_INPUT_PROTOCOL_TESTS_SRC "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp" + "${CMAKE_CURRENT_SOURCE_DIR}/tests/*.cpp" ) if(MSVC AND BUILD_SHARED_LIBS) diff --git a/generated/protocol-tests/tests/input/ec2/tests/EmptyInputAndEmptyOutputTest.cpp b/generated/protocol-tests/tests/input/ec2/tests/EmptyInputAndEmptyOutputTest.cpp new file mode 100644 index 00000000000..556a96feb1e --- /dev/null +++ b/generated/protocol-tests/tests/input/ec2/tests/EmptyInputAndEmptyOutputTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using EmptyInputAndEmptyOutput = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(EmptyInputAndEmptyOutput, Ec2QueryEmptyInputAndEmptyOutput) { + EC2ProtocolClient client; + EmptyInputAndEmptyOutputRequest request; + + auto outcome = client.EmptyInputAndEmptyOutput(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/ec2/tests/EndpointOperationTest.cpp b/generated/protocol-tests/tests/input/ec2/tests/EndpointOperationTest.cpp new file mode 100644 index 00000000000..3f338264390 --- /dev/null +++ b/generated/protocol-tests/tests/input/ec2/tests/EndpointOperationTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using EndpointOperation = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(EndpointOperation, Ec2QueryEndpointTrait) { + EC2ProtocolClient client; + EndpointOperationRequest request; + + auto outcome = client.EndpointOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/ec2/tests/EndpointWithHostLabelOperationTest.cpp b/generated/protocol-tests/tests/input/ec2/tests/EndpointWithHostLabelOperationTest.cpp new file mode 100644 index 00000000000..e3bd95b9220 --- /dev/null +++ b/generated/protocol-tests/tests/input/ec2/tests/EndpointWithHostLabelOperationTest.cpp @@ -0,0 +1,21 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using EndpointWithHostLabelOperation = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(EndpointWithHostLabelOperation, Ec2QueryEndpointTraitWithHostLabel) { + EC2ProtocolClient client; + EndpointWithHostLabelOperationRequest request; + request.SetLabel(R"(bar)"); + + auto outcome = client.EndpointWithHostLabelOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/ec2/tests/HostWithPathOperationTest.cpp b/generated/protocol-tests/tests/input/ec2/tests/HostWithPathOperationTest.cpp new file mode 100644 index 00000000000..f547f9b9629 --- /dev/null +++ b/generated/protocol-tests/tests/input/ec2/tests/HostWithPathOperationTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HostWithPathOperation = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(HostWithPathOperation, Ec2QueryHostWithPath) { + EC2ProtocolClient client; + HostWithPathOperationRequest request; + + auto outcome = client.HostWithPathOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/ec2/tests/NestedStructuresTest.cpp b/generated/protocol-tests/tests/input/ec2/tests/NestedStructuresTest.cpp new file mode 100644 index 00000000000..ff3f5e28eb0 --- /dev/null +++ b/generated/protocol-tests/tests/input/ec2/tests/NestedStructuresTest.cpp @@ -0,0 +1,31 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using NestedStructures = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(NestedStructures, Ec2NestedStructures) { + EC2ProtocolClient client; + NestedStructuresRequest request; + { + StructArg requestNested; + requestNested.SetStringArg(R"(foo)"); + requestNested.SetOtherArg(true); + { + StructArg requestNestedRecursiveArg; + requestNestedRecursiveArg.SetStringArg(R"(baz)"); + requestNested.SetRecursiveArg(requestNestedRecursiveArg); + } + request.SetNested(requestNested); + } + + auto outcome = client.NestedStructures(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/ec2/tests/NoInputAndOutputTest.cpp b/generated/protocol-tests/tests/input/ec2/tests/NoInputAndOutputTest.cpp new file mode 100644 index 00000000000..1fd9d36990f --- /dev/null +++ b/generated/protocol-tests/tests/input/ec2/tests/NoInputAndOutputTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using NoInputAndOutput = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(NoInputAndOutput, Ec2QueryNoInputAndOutput) { + EC2ProtocolClient client; + NoInputAndOutputRequest request; + + auto outcome = client.NoInputAndOutput(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/ec2/tests/PutWithContentEncodingTest.cpp b/generated/protocol-tests/tests/input/ec2/tests/PutWithContentEncodingTest.cpp new file mode 100644 index 00000000000..0e1b22d32f6 --- /dev/null +++ b/generated/protocol-tests/tests/input/ec2/tests/PutWithContentEncodingTest.cpp @@ -0,0 +1,287 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using PutWithContentEncoding = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(PutWithContentEncoding, SDKAppliedContentEncoding_ec2Query) { + EC2ProtocolClient client; + PutWithContentEncodingRequest request; + request.SetData(R"(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 +)"); + + auto outcome = client.PutWithContentEncoding(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(PutWithContentEncoding, SDKAppendsGzipAndIgnoresHttpProvidedEncoding_ec2Query) { + EC2ProtocolClient client; + PutWithContentEncodingRequest request; + request.SetEncoding(R"(custom)"); + request.SetData(R"(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 +)"); + + auto outcome = client.PutWithContentEncoding(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/ec2/tests/QueryIdempotencyTokenAutoFillTest.cpp b/generated/protocol-tests/tests/input/ec2/tests/QueryIdempotencyTokenAutoFillTest.cpp new file mode 100644 index 00000000000..48ed94b1635 --- /dev/null +++ b/generated/protocol-tests/tests/input/ec2/tests/QueryIdempotencyTokenAutoFillTest.cpp @@ -0,0 +1,29 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using QueryIdempotencyTokenAutoFill = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(QueryIdempotencyTokenAutoFill, Ec2ProtocolIdempotencyTokenAutoFill) { + EC2ProtocolClient client; + QueryIdempotencyTokenAutoFillRequest request; + + auto outcome = client.QueryIdempotencyTokenAutoFill(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(QueryIdempotencyTokenAutoFill, Ec2ProtocolIdempotencyTokenAutoFillIsSet) { + EC2ProtocolClient client; + QueryIdempotencyTokenAutoFillRequest request; + request.SetToken(R"(00000000-0000-4000-8000-000000000123)"); + + auto outcome = client.QueryIdempotencyTokenAutoFill(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/ec2/tests/QueryListsTest.cpp b/generated/protocol-tests/tests/input/ec2/tests/QueryListsTest.cpp new file mode 100644 index 00000000000..08450403529 --- /dev/null +++ b/generated/protocol-tests/tests/input/ec2/tests/QueryListsTest.cpp @@ -0,0 +1,71 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using QueryLists = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(QueryLists, Ec2Lists) { + EC2ProtocolClient client; + QueryListsRequest request; + request.SetListArg({R"(foo)", R"(bar)", R"(baz)"}); + { + GreetingStruct requestComplexListArgItem; + requestComplexListArgItem.SetHi(R"(hello)"); + request.AddComplexListArg(requestComplexListArgItem); + } + { + GreetingStruct requestComplexListArgItem; + requestComplexListArgItem.SetHi(R"(hola)"); + request.AddComplexListArg(requestComplexListArgItem); + } + + auto outcome = client.QueryLists(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(QueryLists, Ec2EmptyQueryLists) { + EC2ProtocolClient client; + QueryListsRequest request; + request.SetListArg({}); + + auto outcome = client.QueryLists(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(QueryLists, Ec2ListArgWithXmlNameMember) { + EC2ProtocolClient client; + QueryListsRequest request; + request.SetListArgWithXmlNameMember({R"(A)", R"(B)"}); + + auto outcome = client.QueryLists(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(QueryLists, Ec2ListMemberWithXmlName) { + EC2ProtocolClient client; + QueryListsRequest request; + request.SetListArgWithXmlName({R"(A)", R"(B)"}); + + auto outcome = client.QueryLists(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(QueryLists, Ec2ListNestedStructWithList) { + EC2ProtocolClient client; + QueryListsRequest request; + { + NestedStructWithList requestNestedWithList; + requestNestedWithList.SetListArg({R"(A)", R"(B)"}); + request.SetNestedWithList(requestNestedWithList); + } + + auto outcome = client.QueryLists(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/ec2/tests/QueryTimestampsTest.cpp b/generated/protocol-tests/tests/input/ec2/tests/QueryTimestampsTest.cpp new file mode 100644 index 00000000000..f4f782c968c --- /dev/null +++ b/generated/protocol-tests/tests/input/ec2/tests/QueryTimestampsTest.cpp @@ -0,0 +1,23 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using QueryTimestamps = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(QueryTimestamps, Ec2TimestampsInput) { + EC2ProtocolClient client; + QueryTimestampsRequest request; + request.SetNormalFormat(Aws::Utils::DateTime(1422172800)); + request.SetEpochMember(Aws::Utils::DateTime(1422172800)); + request.SetEpochTarget(Aws::Utils::DateTime(1422172800)); + + auto outcome = client.QueryTimestamps(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/ec2/tests/SimpleInputParamsTest.cpp b/generated/protocol-tests/tests/input/ec2/tests/SimpleInputParamsTest.cpp new file mode 100644 index 00000000000..0afb50e231b --- /dev/null +++ b/generated/protocol-tests/tests/input/ec2/tests/SimpleInputParamsTest.cpp @@ -0,0 +1,134 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using SimpleInputParams = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(SimpleInputParams, Ec2SimpleInputParamsStrings) { + EC2ProtocolClient client; + SimpleInputParamsRequest request; + request.SetFoo(R"(val1)"); + request.SetBar(R"(val2)"); + + auto outcome = client.SimpleInputParams(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleInputParams, Ec2SimpleInputParamsStringAndBooleanTrue) { + EC2ProtocolClient client; + SimpleInputParamsRequest request; + request.SetFoo(R"(val1)"); + request.SetBaz(true); + + auto outcome = client.SimpleInputParams(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleInputParams, Ec2SimpleInputParamsStringsAndBooleanFalse) { + EC2ProtocolClient client; + SimpleInputParamsRequest request; + request.SetBaz(false); + + auto outcome = client.SimpleInputParams(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleInputParams, Ec2SimpleInputParamsInteger) { + EC2ProtocolClient client; + SimpleInputParamsRequest request; + request.SetBam(10); + + auto outcome = client.SimpleInputParams(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleInputParams, Ec2SimpleInputParamsFloat) { + EC2ProtocolClient client; + SimpleInputParamsRequest request; + request.SetBoo(10.8); + + auto outcome = client.SimpleInputParams(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleInputParams, Ec2SimpleInputParamsBlob) { + EC2ProtocolClient client; + SimpleInputParamsRequest request; + request.SetQux(R"(value)"); + + auto outcome = client.SimpleInputParams(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleInputParams, Ec2Enums) { + EC2ProtocolClient client; + SimpleInputParamsRequest request; + request.SetFooEnum(FooEnumMapper::GetFooEnumForName(R"e(Foo)e")); + + auto outcome = client.SimpleInputParams(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleInputParams, Ec2Query) { + EC2ProtocolClient client; + SimpleInputParamsRequest request; + request.SetHasQueryName(R"(Hi)"); + + auto outcome = client.SimpleInputParams(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleInputParams, Ec2QueryIsPreferred) { + EC2ProtocolClient client; + SimpleInputParamsRequest request; + request.SetHasQueryAndXmlName(R"(Hi)"); + + auto outcome = client.SimpleInputParams(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleInputParams, Ec2XmlNameIsUppercased) { + EC2ProtocolClient client; + SimpleInputParamsRequest request; + request.SetUsesXmlName(R"(Hi)"); + + auto outcome = client.SimpleInputParams(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleInputParams, Ec2QuerySupportsNaNFloatInputs) { + EC2ProtocolClient client; + SimpleInputParamsRequest request; + request.SetFloatValue(std::numeric_limits::quiet_NaN()); + request.SetBoo(std::numeric_limits::quiet_NaN()); + + auto outcome = client.SimpleInputParams(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleInputParams, Ec2QuerySupportsInfinityFloatInputs) { + EC2ProtocolClient client; + SimpleInputParamsRequest request; + request.SetFloatValue(std::numeric_limits::infinity()); + request.SetBoo(std::numeric_limits::infinity()); + + auto outcome = client.SimpleInputParams(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleInputParams, Ec2QuerySupportsNegativeInfinityFloatInputs) { + EC2ProtocolClient client; + SimpleInputParamsRequest request; + request.SetFloatValue(-std::numeric_limits::infinity()); + request.SetBoo(-std::numeric_limits::infinity()); + + auto outcome = client.SimpleInputParams(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/json/CMakeLists.txt b/generated/protocol-tests/tests/input/json/CMakeLists.txt index c3e2ee65099..c38db9bbdeb 100644 --- a/generated/protocol-tests/tests/input/json/CMakeLists.txt +++ b/generated/protocol-tests/tests/input/json/CMakeLists.txt @@ -6,6 +6,7 @@ add_project(json-input-protocol-tests file(GLOB AWS_JSON_INPUT_PROTOCOL_TESTS_SRC "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp" + "${CMAKE_CURRENT_SOURCE_DIR}/tests/*.cpp" ) if(MSVC AND BUILD_SHARED_LIBS) diff --git a/generated/protocol-tests/tests/input/json/tests/EmptyOperationTest.cpp b/generated/protocol-tests/tests/input/json/tests/EmptyOperationTest.cpp new file mode 100644 index 00000000000..7cd4df4c903 --- /dev/null +++ b/generated/protocol-tests/tests/input/json/tests/EmptyOperationTest.cpp @@ -0,0 +1,36 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using EmptyOperation = AWS_PROTOCOL_TEST_SUITE; +using JsonProtocolClient = Aws::JsonProtocol::JsonProtocolClient; +using namespace Aws::JsonProtocol::Model; + +AWS_PROTOCOL_TEST(EmptyOperation, sends_requests_to_slash) { + JsonProtocolClient client; + EmptyOperationRequest request; + + auto outcome = client.EmptyOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(EmptyOperation, includes_x_amz_target_and_content_type) { + JsonProtocolClient client; + EmptyOperationRequest request; + + auto outcome = client.EmptyOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(EmptyOperation, json_1_1_client_sends_empty_payload_for_no_input_shape) { + JsonProtocolClient client; + EmptyOperationRequest request; + + auto outcome = client.EmptyOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/json/tests/EndpointOperationTest.cpp b/generated/protocol-tests/tests/input/json/tests/EndpointOperationTest.cpp new file mode 100644 index 00000000000..c57865b5d23 --- /dev/null +++ b/generated/protocol-tests/tests/input/json/tests/EndpointOperationTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using EndpointOperation = AWS_PROTOCOL_TEST_SUITE; +using JsonProtocolClient = Aws::JsonProtocol::JsonProtocolClient; +using namespace Aws::JsonProtocol::Model; + +AWS_PROTOCOL_TEST(EndpointOperation, AwsJson11EndpointTrait) { + JsonProtocolClient client; + EndpointOperationRequest request; + + auto outcome = client.EndpointOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/json/tests/EndpointWithHostLabelOperationTest.cpp b/generated/protocol-tests/tests/input/json/tests/EndpointWithHostLabelOperationTest.cpp new file mode 100644 index 00000000000..dd267a143c5 --- /dev/null +++ b/generated/protocol-tests/tests/input/json/tests/EndpointWithHostLabelOperationTest.cpp @@ -0,0 +1,21 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using EndpointWithHostLabelOperation = AWS_PROTOCOL_TEST_SUITE; +using JsonProtocolClient = Aws::JsonProtocol::JsonProtocolClient; +using namespace Aws::JsonProtocol::Model; + +AWS_PROTOCOL_TEST(EndpointWithHostLabelOperation, AwsJson11EndpointTraitWithHostLabel) { + JsonProtocolClient client; + EndpointWithHostLabelOperationRequest request; + request.SetLabel(R"(bar)"); + + auto outcome = client.EndpointWithHostLabelOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/json/tests/HostWithPathOperationTest.cpp b/generated/protocol-tests/tests/input/json/tests/HostWithPathOperationTest.cpp new file mode 100644 index 00000000000..3a2936e48b6 --- /dev/null +++ b/generated/protocol-tests/tests/input/json/tests/HostWithPathOperationTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HostWithPathOperation = AWS_PROTOCOL_TEST_SUITE; +using JsonProtocolClient = Aws::JsonProtocol::JsonProtocolClient; +using namespace Aws::JsonProtocol::Model; + +AWS_PROTOCOL_TEST(HostWithPathOperation, AwsJson11HostWithPath) { + JsonProtocolClient client; + HostWithPathOperationRequest request; + + auto outcome = client.HostWithPathOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/json/tests/JsonEnumsTest.cpp b/generated/protocol-tests/tests/input/json/tests/JsonEnumsTest.cpp new file mode 100644 index 00000000000..031827a77a0 --- /dev/null +++ b/generated/protocol-tests/tests/input/json/tests/JsonEnumsTest.cpp @@ -0,0 +1,26 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using JsonEnums = AWS_PROTOCOL_TEST_SUITE; +using JsonProtocolClient = Aws::JsonProtocol::JsonProtocolClient; +using namespace Aws::JsonProtocol::Model; + +AWS_PROTOCOL_TEST(JsonEnums, AwsJson11Enums) { + JsonProtocolClient client; + JsonEnumsRequest request; + request.SetFooEnum1(FooEnumMapper::GetFooEnumForName(R"e(Foo)e")); + request.SetFooEnum2(FooEnumMapper::GetFooEnumForName(R"e(0)e")); + request.SetFooEnum3(FooEnumMapper::GetFooEnumForName(R"e(1)e")); + request.SetFooEnumList({FooEnumMapper::GetFooEnumForName(R"e(Foo)e"), FooEnumMapper::GetFooEnumForName(R"e(0)e")}); + request.SetFooEnumSet({FooEnumMapper::GetFooEnumForName(R"e(Foo)e"), FooEnumMapper::GetFooEnumForName(R"e(0)e")}); + request.SetFooEnumMap({{"hi", FooEnumMapper::GetFooEnumForName(R"e(Foo)e")}, {"zero", FooEnumMapper::GetFooEnumForName(R"e(0)e")}}); + + auto outcome = client.JsonEnums(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/json/tests/JsonIntEnumsTest.cpp b/generated/protocol-tests/tests/input/json/tests/JsonIntEnumsTest.cpp new file mode 100644 index 00000000000..3301d67e9e4 --- /dev/null +++ b/generated/protocol-tests/tests/input/json/tests/JsonIntEnumsTest.cpp @@ -0,0 +1,26 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using JsonIntEnums = AWS_PROTOCOL_TEST_SUITE; +using JsonProtocolClient = Aws::JsonProtocol::JsonProtocolClient; +using namespace Aws::JsonProtocol::Model; + +AWS_PROTOCOL_TEST(JsonIntEnums, AwsJson11IntEnums) { + JsonProtocolClient client; + JsonIntEnumsRequest request; + request.SetIntEnum1(1); + request.SetIntEnum2(2); + request.SetIntEnum3(3); + request.SetIntEnumList({1, 2}); + request.SetIntEnumSet({1, 2}); + request.SetIntEnumMap({{"a", 1}, {"b", 2}}); + + auto outcome = client.JsonIntEnums(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/json/tests/JsonUnionsTest.cpp b/generated/protocol-tests/tests/input/json/tests/JsonUnionsTest.cpp new file mode 100644 index 00000000000..d655edaee5d --- /dev/null +++ b/generated/protocol-tests/tests/input/json/tests/JsonUnionsTest.cpp @@ -0,0 +1,133 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using JsonUnions = AWS_PROTOCOL_TEST_SUITE; +using JsonProtocolClient = Aws::JsonProtocol::JsonProtocolClient; +using namespace Aws::JsonProtocol::Model; + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson11SerializeStringUnionValue) { + JsonProtocolClient client; + JsonUnionsRequest request; + { + MyUnion requestContents; + requestContents.SetStringValue(R"(foo)"); + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson11SerializeBooleanUnionValue) { + JsonProtocolClient client; + JsonUnionsRequest request; + { + MyUnion requestContents; + requestContents.SetBooleanValue(true); + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson11SerializeNumberUnionValue) { + JsonProtocolClient client; + JsonUnionsRequest request; + { + MyUnion requestContents; + requestContents.SetNumberValue(1); + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson11SerializeBlobUnionValue) { + JsonProtocolClient client; + JsonUnionsRequest request; + { + MyUnion requestContents; + requestContents.SetBlobValue(R"(foo)"); + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson11SerializeTimestampUnionValue) { + JsonProtocolClient client; + JsonUnionsRequest request; + { + MyUnion requestContents; + requestContents.SetTimestampValue(Aws::Utils::DateTime(1398796238)); + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson11SerializeEnumUnionValue) { + JsonProtocolClient client; + JsonUnionsRequest request; + { + MyUnion requestContents; + requestContents.SetEnumValue(FooEnumMapper::GetFooEnumForName(R"e(Foo)e")); + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson11SerializeListUnionValue) { + JsonProtocolClient client; + JsonUnionsRequest request; + { + MyUnion requestContents; + requestContents.SetListValue({R"(foo)", R"(bar)"}); + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson11SerializeMapUnionValue) { + JsonProtocolClient client; + JsonUnionsRequest request; + { + MyUnion requestContents; + requestContents.SetMapValue({{"foo", R"(bar)"}, {"spam", R"(eggs)"}}); + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson11SerializeStructureUnionValue) { + JsonProtocolClient client; + JsonUnionsRequest request; + { + MyUnion requestContents; + { + GreetingStruct requestContentsStructureValue; + requestContentsStructureValue.SetHi(R"(hello)"); + requestContents.SetStructureValue(requestContentsStructureValue); + } + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/json/tests/KitchenSinkOperationTest.cpp b/generated/protocol-tests/tests/input/json/tests/KitchenSinkOperationTest.cpp new file mode 100644 index 00000000000..06b72bff6e3 --- /dev/null +++ b/generated/protocol-tests/tests/input/json/tests/KitchenSinkOperationTest.cpp @@ -0,0 +1,360 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using KitchenSinkOperation = AWS_PROTOCOL_TEST_SUITE; +using JsonProtocolClient = Aws::JsonProtocol::JsonProtocolClient; +using namespace Aws::JsonProtocol::Model; + +AWS_PROTOCOL_TEST(KitchenSinkOperation, serializes_string_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + request.SetString(R"(abc xyz)"); + + auto outcome = client.KitchenSinkOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, serializes_string_shapes_with_jsonvalue_trait) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + request.SetJsonValue(R"({"string":"value","number":1234.5,"boolTrue":true,"boolFalse":false,"array":[1,2,3,4],"object":{"key":"value"},"null":null})"); + + auto outcome = client.KitchenSinkOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, serializes_integer_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + request.SetInteger(1234); + + auto outcome = client.KitchenSinkOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, serializes_long_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + request.SetLong(999999999999); + + auto outcome = client.KitchenSinkOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, serializes_float_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + request.SetFloat(1234.5); + + auto outcome = client.KitchenSinkOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, serializes_double_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + request.SetDouble(1234.5); + + auto outcome = client.KitchenSinkOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, serializes_blob_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + request.SetBlob(R"(binary-value)"); + + auto outcome = client.KitchenSinkOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, serializes_boolean_shapes_true) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + request.SetBoolean(true); + + auto outcome = client.KitchenSinkOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, serializes_boolean_shapes_false) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + request.SetBoolean(false); + + auto outcome = client.KitchenSinkOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, serializes_timestamp_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + request.SetTimestamp(Aws::Utils::DateTime(946845296)); + + auto outcome = client.KitchenSinkOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, serializes_timestamp_shapes_with_iso8601_timestampformat) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + request.SetIso8601Timestamp(Aws::Utils::DateTime(946845296)); + + auto outcome = client.KitchenSinkOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, serializes_timestamp_shapes_with_httpdate_timestampformat) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + request.SetHttpdateTimestamp(Aws::Utils::DateTime(946845296)); + + auto outcome = client.KitchenSinkOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, serializes_timestamp_shapes_with_unixtimestamp_timestampformat) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + request.SetUnixTimestamp(Aws::Utils::DateTime(946845296)); + + auto outcome = client.KitchenSinkOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, serializes_list_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + request.SetListOfStrings({R"(abc)", R"(mno)", R"(xyz)"}); + + auto outcome = client.KitchenSinkOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, serializes_empty_list_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + request.SetListOfStrings({}); + + auto outcome = client.KitchenSinkOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, serializes_list_of_map_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + { + Aws::Map requestListOfMapsOfStringsItem; + requestListOfMapsOfStringsItem["foo"] = R"(bar)"; + request.AddListOfMapsOfStrings(requestListOfMapsOfStringsItem); + } + { + Aws::Map requestListOfMapsOfStringsItem; + requestListOfMapsOfStringsItem["abc"] = R"(xyz)"; + request.AddListOfMapsOfStrings(requestListOfMapsOfStringsItem); + } + { + Aws::Map requestListOfMapsOfStringsItem; + requestListOfMapsOfStringsItem["red"] = R"(blue)"; + request.AddListOfMapsOfStrings(requestListOfMapsOfStringsItem); + } + + auto outcome = client.KitchenSinkOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, serializes_list_of_structure_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + { + SimpleStruct requestListOfStructsItem; + requestListOfStructsItem.SetValue(R"(abc)"); + request.AddListOfStructs(requestListOfStructsItem); + } + { + SimpleStruct requestListOfStructsItem; + requestListOfStructsItem.SetValue(R"(mno)"); + request.AddListOfStructs(requestListOfStructsItem); + } + { + SimpleStruct requestListOfStructsItem; + requestListOfStructsItem.SetValue(R"(xyz)"); + request.AddListOfStructs(requestListOfStructsItem); + } + + auto outcome = client.KitchenSinkOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, serializes_list_of_recursive_structure_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + { + KitchenSink requestRecursiveListItem; + { + KitchenSink requestRecursiveListItemRecursiveListItem; + { + KitchenSink requestRecursiveListItemRecursiveListItemRecursiveListItem; + requestRecursiveListItemRecursiveListItemRecursiveListItem.SetInteger(123); + requestRecursiveListItemRecursiveListItem.AddRecursiveList(requestRecursiveListItemRecursiveListItemRecursiveListItem); + } + requestRecursiveListItem.AddRecursiveList(requestRecursiveListItemRecursiveListItem); + } + request.AddRecursiveList(requestRecursiveListItem); + } + + auto outcome = client.KitchenSinkOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, serializes_map_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + request.SetMapOfStrings({{"abc", R"(xyz)"}, {"mno", R"(hjk)"}}); + + auto outcome = client.KitchenSinkOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, serializes_empty_map_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + request.SetMapOfStrings({}); + + auto outcome = client.KitchenSinkOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, serializes_map_of_list_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + request.SetMapOfListsOfStrings({{"abc", {R"(abc)", R"(xyz)"}}, {"mno", {R"(xyz)", R"(abc)"}}}); + + auto outcome = client.KitchenSinkOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, serializes_map_of_structure_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + { + SimpleStruct requestMapOfStructsItem; + requestMapOfStructsItem.SetValue(R"(value-1)"); + request.AddMapOfStructs("key1", requestMapOfStructsItem); + } + { + SimpleStruct requestMapOfStructsItem; + requestMapOfStructsItem.SetValue(R"(value-2)"); + request.AddMapOfStructs("key2", requestMapOfStructsItem); + } + + auto outcome = client.KitchenSinkOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, serializes_map_of_recursive_structure_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + { + KitchenSink requestRecursiveMapItem; + { + KitchenSink requestRecursiveMapItemRecursiveMapItem; + { + KitchenSink requestRecursiveMapItemRecursiveMapItemRecursiveMapItem; + requestRecursiveMapItemRecursiveMapItemRecursiveMapItem.SetBoolean(false); + requestRecursiveMapItemRecursiveMapItem.AddRecursiveMap("key3", requestRecursiveMapItemRecursiveMapItemRecursiveMapItem); + } + requestRecursiveMapItem.AddRecursiveMap("key2", requestRecursiveMapItemRecursiveMapItem); + } + request.AddRecursiveMap("key1", requestRecursiveMapItem); + } + + auto outcome = client.KitchenSinkOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, serializes_structure_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + { + SimpleStruct requestSimpleStruct; + requestSimpleStruct.SetValue(R"(abc)"); + request.SetSimpleStruct(requestSimpleStruct); + } + + auto outcome = client.KitchenSinkOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, serializes_structure_members_with_locationname_traits) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + { + StructWithJsonName requestStructWithJsonName; + requestStructWithJsonName.SetValue(R"(some-value)"); + request.SetStructWithJsonName(requestStructWithJsonName); + } + + auto outcome = client.KitchenSinkOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, serializes_empty_structure_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + { + SimpleStruct requestSimpleStruct; + request.SetSimpleStruct(requestSimpleStruct); + } + + auto outcome = client.KitchenSinkOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, serializes_structure_which_have_no_members) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + { + EmptyStruct requestEmptyStruct; + request.SetEmptyStruct(requestEmptyStruct); + } + + auto outcome = client.KitchenSinkOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, serializes_recursive_structure_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + request.SetString(R"(top-value)"); + request.SetBoolean(false); + { + KitchenSink requestRecursiveStruct; + requestRecursiveStruct.SetString(R"(nested-value)"); + requestRecursiveStruct.SetBoolean(true); + { + KitchenSink requestRecursiveStructRecursiveListItem; + requestRecursiveStructRecursiveListItem.SetString(R"(string-only)"); + requestRecursiveStruct.AddRecursiveList(requestRecursiveStructRecursiveListItem); + } + { + KitchenSink requestRecursiveStructRecursiveListItem; + { + KitchenSink requestRecursiveStructRecursiveListItemRecursiveStruct; + requestRecursiveStructRecursiveListItemRecursiveStruct.SetMapOfStrings({{"color", R"(red)"}, {"size", R"(large)"}}); + requestRecursiveStructRecursiveListItem.SetRecursiveStruct(requestRecursiveStructRecursiveListItemRecursiveStruct); + } + requestRecursiveStruct.AddRecursiveList(requestRecursiveStructRecursiveListItem); + } + request.SetRecursiveStruct(requestRecursiveStruct); + } + + auto outcome = client.KitchenSinkOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/json/tests/NullOperationTest.cpp b/generated/protocol-tests/tests/input/json/tests/NullOperationTest.cpp new file mode 100644 index 00000000000..4ee26afee49 --- /dev/null +++ b/generated/protocol-tests/tests/input/json/tests/NullOperationTest.cpp @@ -0,0 +1,21 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using NullOperation = AWS_PROTOCOL_TEST_SUITE; +using JsonProtocolClient = Aws::JsonProtocol::JsonProtocolClient; +using namespace Aws::JsonProtocol::Model; + +AWS_PROTOCOL_TEST(NullOperation, AwsJson11StructuresDontSerializeNullValues) { + JsonProtocolClient client; + NullOperationRequest request; + request.SetString(R"(null)"); + + auto outcome = client.NullOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/json/tests/OperationWithOptionalInputOutputTest.cpp b/generated/protocol-tests/tests/input/json/tests/OperationWithOptionalInputOutputTest.cpp new file mode 100644 index 00000000000..67b87335be8 --- /dev/null +++ b/generated/protocol-tests/tests/input/json/tests/OperationWithOptionalInputOutputTest.cpp @@ -0,0 +1,29 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using OperationWithOptionalInputOutput = AWS_PROTOCOL_TEST_SUITE; +using JsonProtocolClient = Aws::JsonProtocol::JsonProtocolClient; +using namespace Aws::JsonProtocol::Model; + +AWS_PROTOCOL_TEST(OperationWithOptionalInputOutput, can_call_operation_with_no_input_or_output) { + JsonProtocolClient client; + OperationWithOptionalInputOutputRequest request; + + auto outcome = client.OperationWithOptionalInputOutput(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(OperationWithOptionalInputOutput, can_call_operation_with_optional_input) { + JsonProtocolClient client; + OperationWithOptionalInputOutputRequest request; + request.SetValue(R"(Hi)"); + + auto outcome = client.OperationWithOptionalInputOutput(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/json/tests/PutAndGetInlineDocumentsTest.cpp b/generated/protocol-tests/tests/input/json/tests/PutAndGetInlineDocumentsTest.cpp new file mode 100644 index 00000000000..3fcb3f4d67e --- /dev/null +++ b/generated/protocol-tests/tests/input/json/tests/PutAndGetInlineDocumentsTest.cpp @@ -0,0 +1,24 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using PutAndGetInlineDocuments = AWS_PROTOCOL_TEST_SUITE; +using JsonProtocolClient = Aws::JsonProtocol::JsonProtocolClient; +using namespace Aws::JsonProtocol::Model; + +AWS_PROTOCOL_TEST(PutAndGetInlineDocuments, PutAndGetInlineDocumentsInput) { + JsonProtocolClient client; + PutAndGetInlineDocumentsRequest request; + { + Aws::Utils::Document requestInlineDocument(R"j({"foo":"bar"})j"); + request.SetInlineDocument(requestInlineDocument); + } + + auto outcome = client.PutAndGetInlineDocuments(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/json/tests/PutWithContentEncodingTest.cpp b/generated/protocol-tests/tests/input/json/tests/PutWithContentEncodingTest.cpp new file mode 100644 index 00000000000..fdbf3d1ce2e --- /dev/null +++ b/generated/protocol-tests/tests/input/json/tests/PutWithContentEncodingTest.cpp @@ -0,0 +1,287 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using PutWithContentEncoding = AWS_PROTOCOL_TEST_SUITE; +using JsonProtocolClient = Aws::JsonProtocol::JsonProtocolClient; +using namespace Aws::JsonProtocol::Model; + +AWS_PROTOCOL_TEST(PutWithContentEncoding, SDKAppliedContentEncoding_awsJson1_1) { + JsonProtocolClient client; + PutWithContentEncodingRequest request; + request.SetData(R"(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 +)"); + + auto outcome = client.PutWithContentEncoding(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(PutWithContentEncoding, SDKAppendsGzipAndIgnoresHttpProvidedEncoding_awsJson1_1) { + JsonProtocolClient client; + PutWithContentEncodingRequest request; + request.SetEncoding(R"(custom)"); + request.SetData(R"(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 +)"); + + auto outcome = client.PutWithContentEncoding(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/json/tests/SimpleScalarPropertiesTest.cpp b/generated/protocol-tests/tests/input/json/tests/SimpleScalarPropertiesTest.cpp new file mode 100644 index 00000000000..faf72ec0bdd --- /dev/null +++ b/generated/protocol-tests/tests/input/json/tests/SimpleScalarPropertiesTest.cpp @@ -0,0 +1,42 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using SimpleScalarProperties = AWS_PROTOCOL_TEST_SUITE; +using JsonProtocolClient = Aws::JsonProtocol::JsonProtocolClient; +using namespace Aws::JsonProtocol::Model; + +AWS_PROTOCOL_TEST(SimpleScalarProperties, AwsJson11SupportsNaNFloatInputs) { + JsonProtocolClient client; + SimpleScalarPropertiesRequest request; + request.SetFloatValue(std::numeric_limits::quiet_NaN()); + request.SetDoubleValue(std::numeric_limits::quiet_NaN()); + + auto outcome = client.SimpleScalarProperties(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, AwsJson11SupportsInfinityFloatInputs) { + JsonProtocolClient client; + SimpleScalarPropertiesRequest request; + request.SetFloatValue(std::numeric_limits::infinity()); + request.SetDoubleValue(std::numeric_limits::infinity()); + + auto outcome = client.SimpleScalarProperties(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, AwsJson11SupportsNegativeInfinityFloatInputs) { + JsonProtocolClient client; + SimpleScalarPropertiesRequest request; + request.SetFloatValue(-std::numeric_limits::infinity()); + request.SetDoubleValue(-std::numeric_limits::infinity()); + + auto outcome = client.SimpleScalarProperties(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/json_1_0/CMakeLists.txt b/generated/protocol-tests/tests/input/json_1_0/CMakeLists.txt index b7ade0374f3..5f9247e309a 100644 --- a/generated/protocol-tests/tests/input/json_1_0/CMakeLists.txt +++ b/generated/protocol-tests/tests/input/json_1_0/CMakeLists.txt @@ -6,6 +6,7 @@ add_project(json_1_0-input-protocol-tests file(GLOB AWS_JSON_1_0_INPUT_PROTOCOL_TESTS_SRC "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp" + "${CMAKE_CURRENT_SOURCE_DIR}/tests/*.cpp" ) if(MSVC AND BUILD_SHARED_LIBS) diff --git a/generated/protocol-tests/tests/input/json_1_0/tests/EmptyInputAndEmptyOutputTest.cpp b/generated/protocol-tests/tests/input/json_1_0/tests/EmptyInputAndEmptyOutputTest.cpp new file mode 100644 index 00000000000..07f0733858d --- /dev/null +++ b/generated/protocol-tests/tests/input/json_1_0/tests/EmptyInputAndEmptyOutputTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using EmptyInputAndEmptyOutput = AWS_PROTOCOL_TEST_SUITE; +using JSONRPC10Client = Aws::JSONRPC10::JSONRPC10Client; +using namespace Aws::JSONRPC10::Model; + +AWS_PROTOCOL_TEST(EmptyInputAndEmptyOutput, AwsJson10EmptyInputAndEmptyOutput) { + JSONRPC10Client client; + EmptyInputAndEmptyOutputRequest request; + + auto outcome = client.EmptyInputAndEmptyOutput(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/json_1_0/tests/EndpointOperationTest.cpp b/generated/protocol-tests/tests/input/json_1_0/tests/EndpointOperationTest.cpp new file mode 100644 index 00000000000..5b24d239901 --- /dev/null +++ b/generated/protocol-tests/tests/input/json_1_0/tests/EndpointOperationTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using EndpointOperation = AWS_PROTOCOL_TEST_SUITE; +using JSONRPC10Client = Aws::JSONRPC10::JSONRPC10Client; +using namespace Aws::JSONRPC10::Model; + +AWS_PROTOCOL_TEST(EndpointOperation, AwsJson10EndpointTrait) { + JSONRPC10Client client; + EndpointOperationRequest request; + + auto outcome = client.EndpointOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/json_1_0/tests/EndpointWithHostLabelOperationTest.cpp b/generated/protocol-tests/tests/input/json_1_0/tests/EndpointWithHostLabelOperationTest.cpp new file mode 100644 index 00000000000..8c99a942e2b --- /dev/null +++ b/generated/protocol-tests/tests/input/json_1_0/tests/EndpointWithHostLabelOperationTest.cpp @@ -0,0 +1,21 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using EndpointWithHostLabelOperation = AWS_PROTOCOL_TEST_SUITE; +using JSONRPC10Client = Aws::JSONRPC10::JSONRPC10Client; +using namespace Aws::JSONRPC10::Model; + +AWS_PROTOCOL_TEST(EndpointWithHostLabelOperation, AwsJson10EndpointTraitWithHostLabel) { + JSONRPC10Client client; + EndpointWithHostLabelOperationRequest request; + request.SetLabel(R"(bar)"); + + auto outcome = client.EndpointWithHostLabelOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/json_1_0/tests/HostWithPathOperationTest.cpp b/generated/protocol-tests/tests/input/json_1_0/tests/HostWithPathOperationTest.cpp new file mode 100644 index 00000000000..4c9aed63d9c --- /dev/null +++ b/generated/protocol-tests/tests/input/json_1_0/tests/HostWithPathOperationTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HostWithPathOperation = AWS_PROTOCOL_TEST_SUITE; +using JSONRPC10Client = Aws::JSONRPC10::JSONRPC10Client; +using namespace Aws::JSONRPC10::Model; + +AWS_PROTOCOL_TEST(HostWithPathOperation, AwsJson10HostWithPath) { + JSONRPC10Client client; + HostWithPathOperationRequest request; + + auto outcome = client.HostWithPathOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/json_1_0/tests/JsonUnionsTest.cpp b/generated/protocol-tests/tests/input/json_1_0/tests/JsonUnionsTest.cpp new file mode 100644 index 00000000000..c729fd04f1a --- /dev/null +++ b/generated/protocol-tests/tests/input/json_1_0/tests/JsonUnionsTest.cpp @@ -0,0 +1,146 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using JsonUnions = AWS_PROTOCOL_TEST_SUITE; +using JSONRPC10Client = Aws::JSONRPC10::JSONRPC10Client; +using namespace Aws::JSONRPC10::Model; + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson10SerializeStringUnionValue) { + JSONRPC10Client client; + JsonUnionsRequest request; + { + MyUnion requestContents; + requestContents.SetStringValue(R"(foo)"); + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson10SerializeBooleanUnionValue) { + JSONRPC10Client client; + JsonUnionsRequest request; + { + MyUnion requestContents; + requestContents.SetBooleanValue(true); + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson10SerializeNumberUnionValue) { + JSONRPC10Client client; + JsonUnionsRequest request; + { + MyUnion requestContents; + requestContents.SetNumberValue(1); + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson10SerializeBlobUnionValue) { + JSONRPC10Client client; + JsonUnionsRequest request; + { + MyUnion requestContents; + requestContents.SetBlobValue(R"(foo)"); + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson10SerializeTimestampUnionValue) { + JSONRPC10Client client; + JsonUnionsRequest request; + { + MyUnion requestContents; + requestContents.SetTimestampValue(Aws::Utils::DateTime(1398796238)); + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson10SerializeEnumUnionValue) { + JSONRPC10Client client; + JsonUnionsRequest request; + { + MyUnion requestContents; + requestContents.SetEnumValue(FooEnumMapper::GetFooEnumForName(R"e(Foo)e")); + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson10SerializeIntEnumUnionValue) { + JSONRPC10Client client; + JsonUnionsRequest request; + { + MyUnion requestContents; + requestContents.SetIntEnumValue(1); + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson10SerializeListUnionValue) { + JSONRPC10Client client; + JsonUnionsRequest request; + { + MyUnion requestContents; + requestContents.SetListValue({R"(foo)", R"(bar)"}); + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson10SerializeMapUnionValue) { + JSONRPC10Client client; + JsonUnionsRequest request; + { + MyUnion requestContents; + requestContents.SetMapValue({{"foo", R"(bar)"}, {"spam", R"(eggs)"}}); + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson10SerializeStructureUnionValue) { + JSONRPC10Client client; + JsonUnionsRequest request; + { + MyUnion requestContents; + { + GreetingStruct requestContentsStructureValue; + requestContentsStructureValue.SetHi(R"(hello)"); + requestContents.SetStructureValue(requestContentsStructureValue); + } + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/json_1_0/tests/NoInputAndNoOutputTest.cpp b/generated/protocol-tests/tests/input/json_1_0/tests/NoInputAndNoOutputTest.cpp new file mode 100644 index 00000000000..97fd783b529 --- /dev/null +++ b/generated/protocol-tests/tests/input/json_1_0/tests/NoInputAndNoOutputTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using NoInputAndNoOutput = AWS_PROTOCOL_TEST_SUITE; +using JSONRPC10Client = Aws::JSONRPC10::JSONRPC10Client; +using namespace Aws::JSONRPC10::Model; + +AWS_PROTOCOL_TEST(NoInputAndNoOutput, AwsJson10MustAlwaysSendEmptyJsonPayload) { + JSONRPC10Client client; + NoInputAndNoOutputRequest request; + + auto outcome = client.NoInputAndNoOutput(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/json_1_0/tests/NoInputAndOutputTest.cpp b/generated/protocol-tests/tests/input/json_1_0/tests/NoInputAndOutputTest.cpp new file mode 100644 index 00000000000..03bf37d7cee --- /dev/null +++ b/generated/protocol-tests/tests/input/json_1_0/tests/NoInputAndOutputTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using NoInputAndOutput = AWS_PROTOCOL_TEST_SUITE; +using JSONRPC10Client = Aws::JSONRPC10::JSONRPC10Client; +using namespace Aws::JSONRPC10::Model; + +AWS_PROTOCOL_TEST(NoInputAndOutput, AwsJson10NoInputAndOutput) { + JSONRPC10Client client; + NoInputAndOutputRequest request; + + auto outcome = client.NoInputAndOutput(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/json_1_0/tests/PutWithContentEncodingTest.cpp b/generated/protocol-tests/tests/input/json_1_0/tests/PutWithContentEncodingTest.cpp new file mode 100644 index 00000000000..98f33d11a75 --- /dev/null +++ b/generated/protocol-tests/tests/input/json_1_0/tests/PutWithContentEncodingTest.cpp @@ -0,0 +1,287 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using PutWithContentEncoding = AWS_PROTOCOL_TEST_SUITE; +using JSONRPC10Client = Aws::JSONRPC10::JSONRPC10Client; +using namespace Aws::JSONRPC10::Model; + +AWS_PROTOCOL_TEST(PutWithContentEncoding, SDKAppliedContentEncoding_awsJson1_0) { + JSONRPC10Client client; + PutWithContentEncodingRequest request; + request.SetData(R"(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 +)"); + + auto outcome = client.PutWithContentEncoding(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(PutWithContentEncoding, SDKAppendsGzipAndIgnoresHttpProvidedEncoding_awsJson1_0) { + JSONRPC10Client client; + PutWithContentEncodingRequest request; + request.SetEncoding(R"(custom)"); + request.SetData(R"(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 +)"); + + auto outcome = client.PutWithContentEncoding(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/json_1_0/tests/SimpleScalarPropertiesTest.cpp b/generated/protocol-tests/tests/input/json_1_0/tests/SimpleScalarPropertiesTest.cpp new file mode 100644 index 00000000000..da1c489b6bb --- /dev/null +++ b/generated/protocol-tests/tests/input/json_1_0/tests/SimpleScalarPropertiesTest.cpp @@ -0,0 +1,42 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using SimpleScalarProperties = AWS_PROTOCOL_TEST_SUITE; +using JSONRPC10Client = Aws::JSONRPC10::JSONRPC10Client; +using namespace Aws::JSONRPC10::Model; + +AWS_PROTOCOL_TEST(SimpleScalarProperties, AwsJson10SupportsNaNFloatInputs) { + JSONRPC10Client client; + SimpleScalarPropertiesRequest request; + request.SetFloatValue(std::numeric_limits::quiet_NaN()); + request.SetDoubleValue(std::numeric_limits::quiet_NaN()); + + auto outcome = client.SimpleScalarProperties(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, AwsJson10SupportsInfinityFloatInputs) { + JSONRPC10Client client; + SimpleScalarPropertiesRequest request; + request.SetFloatValue(std::numeric_limits::infinity()); + request.SetDoubleValue(std::numeric_limits::infinity()); + + auto outcome = client.SimpleScalarProperties(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, AwsJson10SupportsNegativeInfinityFloatInputs) { + JSONRPC10Client client; + SimpleScalarPropertiesRequest request; + request.SetFloatValue(-std::numeric_limits::infinity()); + request.SetDoubleValue(-std::numeric_limits::infinity()); + + auto outcome = client.SimpleScalarProperties(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/query/CMakeLists.txt b/generated/protocol-tests/tests/input/query/CMakeLists.txt index 3b044ff4509..cb5812fa0b7 100644 --- a/generated/protocol-tests/tests/input/query/CMakeLists.txt +++ b/generated/protocol-tests/tests/input/query/CMakeLists.txt @@ -6,6 +6,7 @@ add_project(query-input-protocol-tests file(GLOB AWS_QUERY_INPUT_PROTOCOL_TESTS_SRC "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp" + "${CMAKE_CURRENT_SOURCE_DIR}/tests/*.cpp" ) if(MSVC AND BUILD_SHARED_LIBS) diff --git a/generated/protocol-tests/tests/input/query/tests/EmptyInputAndEmptyOutputTest.cpp b/generated/protocol-tests/tests/input/query/tests/EmptyInputAndEmptyOutputTest.cpp new file mode 100644 index 00000000000..cc4c6bb1f7c --- /dev/null +++ b/generated/protocol-tests/tests/input/query/tests/EmptyInputAndEmptyOutputTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using EmptyInputAndEmptyOutput = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(EmptyInputAndEmptyOutput, QueryEmptyInputAndEmptyOutput) { + QueryProtocolClient client; + EmptyInputAndEmptyOutputRequest request; + + auto outcome = client.EmptyInputAndEmptyOutput(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/query/tests/EndpointOperationTest.cpp b/generated/protocol-tests/tests/input/query/tests/EndpointOperationTest.cpp new file mode 100644 index 00000000000..13331ab750d --- /dev/null +++ b/generated/protocol-tests/tests/input/query/tests/EndpointOperationTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using EndpointOperation = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(EndpointOperation, AwsQueryEndpointTrait) { + QueryProtocolClient client; + EndpointOperationRequest request; + + auto outcome = client.EndpointOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/query/tests/EndpointWithHostLabelOperationTest.cpp b/generated/protocol-tests/tests/input/query/tests/EndpointWithHostLabelOperationTest.cpp new file mode 100644 index 00000000000..9d6821755cf --- /dev/null +++ b/generated/protocol-tests/tests/input/query/tests/EndpointWithHostLabelOperationTest.cpp @@ -0,0 +1,21 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using EndpointWithHostLabelOperation = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(EndpointWithHostLabelOperation, AwsQueryEndpointTraitWithHostLabel) { + QueryProtocolClient client; + EndpointWithHostLabelOperationRequest request; + request.SetLabel(R"(bar)"); + + auto outcome = client.EndpointWithHostLabelOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/query/tests/HostWithPathOperationTest.cpp b/generated/protocol-tests/tests/input/query/tests/HostWithPathOperationTest.cpp new file mode 100644 index 00000000000..786dd5db99e --- /dev/null +++ b/generated/protocol-tests/tests/input/query/tests/HostWithPathOperationTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HostWithPathOperation = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(HostWithPathOperation, QueryHostWithPath) { + QueryProtocolClient client; + HostWithPathOperationRequest request; + + auto outcome = client.HostWithPathOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/query/tests/NestedStructuresTest.cpp b/generated/protocol-tests/tests/input/query/tests/NestedStructuresTest.cpp new file mode 100644 index 00000000000..8c2580fec5a --- /dev/null +++ b/generated/protocol-tests/tests/input/query/tests/NestedStructuresTest.cpp @@ -0,0 +1,31 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using NestedStructures = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(NestedStructures, NestedStructures) { + QueryProtocolClient client; + NestedStructuresRequest request; + { + StructArg requestNested; + requestNested.SetStringArg(R"(foo)"); + requestNested.SetOtherArg(true); + { + StructArg requestNestedRecursiveArg; + requestNestedRecursiveArg.SetStringArg(R"(baz)"); + requestNested.SetRecursiveArg(requestNestedRecursiveArg); + } + request.SetNested(requestNested); + } + + auto outcome = client.NestedStructures(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/query/tests/NoInputAndNoOutputTest.cpp b/generated/protocol-tests/tests/input/query/tests/NoInputAndNoOutputTest.cpp new file mode 100644 index 00000000000..9e5811978a7 --- /dev/null +++ b/generated/protocol-tests/tests/input/query/tests/NoInputAndNoOutputTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using NoInputAndNoOutput = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(NoInputAndNoOutput, QueryNoInputAndNoOutput) { + QueryProtocolClient client; + NoInputAndNoOutputRequest request; + + auto outcome = client.NoInputAndNoOutput(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/query/tests/NoInputAndOutputTest.cpp b/generated/protocol-tests/tests/input/query/tests/NoInputAndOutputTest.cpp new file mode 100644 index 00000000000..4e607c6eefa --- /dev/null +++ b/generated/protocol-tests/tests/input/query/tests/NoInputAndOutputTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using NoInputAndOutput = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(NoInputAndOutput, QueryNoInputAndOutput) { + QueryProtocolClient client; + NoInputAndOutputRequest request; + + auto outcome = client.NoInputAndOutput(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/query/tests/PutWithContentEncodingTest.cpp b/generated/protocol-tests/tests/input/query/tests/PutWithContentEncodingTest.cpp new file mode 100644 index 00000000000..39b0348994f --- /dev/null +++ b/generated/protocol-tests/tests/input/query/tests/PutWithContentEncodingTest.cpp @@ -0,0 +1,287 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using PutWithContentEncoding = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(PutWithContentEncoding, SDKAppliedContentEncoding_awsQuery) { + QueryProtocolClient client; + PutWithContentEncodingRequest request; + request.SetData(R"(RjCEL3kBwqPivZUXGiyA5JCujtWgJAkKRlnTEsNYfBRGOS0f7LT6R3bCSOXeJ4auSHzQ4BEZZTklUyj5 +1HEojihShQC2jkQJrNdGOZNSW49yRO0XbnGmeczUHbZqZRelLFKW4xjru9uTuB8lFCtwoGgciFsgqTF8 +5HYcoqINTRxuAwGuRUMoNO473QT0BtCQoKUkAyVaypG0hBZdGNoJhunBfW0d3HWTYlzz9pXElyZhq3C1 +2PDB17GEoOYXmTxDecysmPOdo5z6T0HFhujfeJFIQQ8dirmXcG4F3v0bZdf6AZ3jsiVh6RnEXIPxPbOi +gIXDWTMUr4Pg3f2LdYCM01eAb2qTdgsEN0MUDhEIfn68I2tnWvcozyUFpg1ez6pyWP8ssWVfFrckREIM +Mb0cTUVqSVSM8bnFiF9SoXM6ZoGMKfX1mT708OYk7SqZ1JlCTkecDJDoR5ED2q2MWKUGR6jjnEV0GtD8 +WJO6AcF0DptY9Hk16Bav3z6c5FeBvrGDrxTFVgRUk8SychzjrcqJ4qskwN8rL3zslC0oqobQRnLFOvwJ +prSzBIwdH2yAuxokXAdVRa1u9NGNRvfWJfKkwbbVz8yV76RUF9KNhAUmwyYDrLnxNj8ROl8B7dv8Gans +7Bit52wcdiJyjBW1pAodB7zqqVwtBx5RaSpF7kEMXexYXp9N0J1jlXzdeg5Wgg4pO7TJNr2joiPVAiFf +efwMMCNBkYx2z7cRxVxCJZMXXzxSKMGgdTN24bJ5UgE0TxyV52RC0wGWG49S1x5jGrvmxKCIgYPs0w3Z +0I3XcdB0WEj4x4xRztB9Cx2Mc4qFYQdzS9kOioAgNBti1rBySZ8lFZM2zqxvBsJTTJsmcKPr1crqiXjM +oVWdM4ObOO6QA7Pu4c1hT68CrTmbcecjFcxHkgsqdixnFtN6keMGL9Z2YMjZOjYYzbUEwLJqUVWalkIB +BkgBRqZpzxx5nB5t0qDH35KjsfKM5cinQaFoRq9y9Z82xdCoKZOsUbxZkk1kVmy1jPDCBhkhixkc5PKS +FoSKTbeK7kuCEZCtR9OfF2k2MqbygGFsFu2sgb1Zn2YdDbaRwRGeaLhswta09UNSMUo8aTixgoYVHxwy +vraLB6olPSPegeLOnmBeWyKmEfPdbpdGm4ev4vA2AUFuLIeFz0LkCSN0NgQMrr8ALEm1UNpJLReg1ZAX +zZh7gtQTZUaBVdMJokaJpLk6FPxSA6zkwB5TegSqhrFIsmvpY3VNWmTUq7H0iADdh3dRQ8Is97bTsbwu +vAEOjh4FQ9wPSFzEtcSJeYQft5GfWYPisDImjjvHVFshFFkNy2nN18pJmhVPoJc456tgbdfEIdGhIADC +6UPcSSzE1FxlPpILqZrp3i4NvvKoiOa4a8tnALd2XRHHmsvALn2Wmfu07b86gZlu4yOyuUFNoWI6tFvd +bHnqSJYNQlFESv13gJw609DBzNnrIgBGYBAcDRrIGAnflRKwVDUnDFrUQmE8xNG6jRlyb1p2Y2RrfBtG +cKqhuGNiT2DfxpY89ektZ98waPhJrFEPJToNH8EADzBorh3T0h4YP1IeLmaI7SOxeuVrk1kjRqMK0rUB +lUJgJNtCE35jCyoHMwPQlyi78ZaVv8COVQ24zcGpw0MTy6JUsDzAC3jLNY6xCb40SZV9XzG7nWvXA5Ej +YC1gTXxF4AtFexIdDZ4RJbtYMyXt8LsEJerwwpkfqvDwsiFuqYC6vIn9RoZO5kI0F35XtUITDQYKZ4eq +WBV0itxTyyR5Rp6g30pZEmEqOusDaIh96CEmHpOBYAQZ7u1QTfzRdysIGMpzbx5gj9Dxm2PO1glWzY7P +lVqQiBlXSGDOkBkrB6SkiAxknt9zsPdTTsf3r3nid4hdiPrZmGWNgjOO1khSxZSzBdltrCESNnQmlnP5 +ZOHA0eSYXwy8j4od5ZmjA3IpFOEPW2MutMbxIbJpg5dIx2x7WxespftenRLgl3CxcpPDcnb9w8LCHBg7 +SEjrEer6Y8wVLFWsQiv6nTdCPZz9cGqwgtCaiHRy8lTWFgdfWd397vw9rduGld3uUFeFRGjYrphqEmHi +hiG0GhE6wRFVUsGJtvOCYkVREvbEdxPFeJvlAvOcs9HKbtptlTusvYB86vR2bNcIY4f5JZu2X6sGa354 +7LRk0ps2zqYjat3hMR7XDC8KiKceBteFsXoDjfVxTYKelpedTxqWAafrKhaoAVuNM98PSnkuIWGzjSUC +NsDJTt6vt1D1afBVPWVmnQ7ZQdtEtLIEwAWYjemAztreELIr1E9fPEILm1Ke4KctP9I0I72Dh4eylNZD +0DEr2Hg7cWFckuZ0Av5d0IPRARXikEGDHl8uh12TXL9v2Uh0ZVSJMEYvxGSbZvkWz8TjWSk3hKA2a7GL +Jm3Ho7e1C34gE1XRGcEthxvURxt4OKBqN3ZNaMIuDTWinoQAutMcUqtm4MoL7RGPiCHUrvTwQPSirsmA +QmOEu8nOpnP77Fivh9jLGx5ta7nL6jrsWUsBqiN1lzpdPYLRR4mUIAj6sNWiDEk4pkbHSMEcqbWw6Zl7 +psEyPDHalCNhWMA3RSK3skURzQDZ0oBV5W7vjVIZ4d3uCKsk6zrzEI9u5mx7p9RdNKodXfzqYt0ULdtc +3RW0hIfw2KvrO3BD2QrtgAkfrFBGVvlJSUoh0MvLz8DeXxfuiuq9Ttu7wvsqVI4Piah6WNEXtHHGPJO3 +Ghc75Bnv2To4VS2v8rmyKAPIIVTuYBHZN6sZ4FhFzbrslCIdk0eadaU60naqiNWU3CsxplIYGyeThmJ7 +9u4h6Y2OmiPZjFPS2bAzwgAozYTVefII9aEaWZ0hxHZeu1FW7r79dkdO73ZqRfas9u8Z7LLBPCw5pV0F +5I0pHDgNb6MogoxF4NZJfVtIX1vCHhhVLrXjrYNJU2fD9Fw8kT8Ie2HDBJnqAvYKmryQ1r9ulo3Me3rH +q9s2Y5uCDxu9iQNhnpwIm57WYGFeqd2fnQeY2IziD3Jgx0KSrmOH0jgi0RwJyfGXaORPq3bQQqljuACo +kO6io9t5VI8PbNxSHTRbtYiPciUslbT0g7SpCLrRPOBRJ4DDk56pjghpeoUagJ5xJ4wjBzBuXnAGkNnP +Tfpiuz2r3oSBAi8sB9wiYK2z9sp4gZyQsqdVNzAEgKatOxBRBmJCBYpjO98ZQrF83XApPpfFg0ujB2PW +1iYF9NkgwIKB5oB6KVTOmSKJk11mVermPgeugHbzdd2zUP6fP8fWbhseqk2t8ahGvqjs2CDHFIWXl5jc +fCknbykE3ANt7lnAfJQ2ddduLGiqrX4HWx6jcWw08Es6BkleO0IDbaWrb95d5isvFlzJsf0TyDIXF4uq +bBDCi0XPWqtRJ2iqmnJa2GbBe9GmAOWMkBFSilMyC4sR395WSDpD56fx0NGoU6cHrRu9xF2Bgh7RGSfl +ch2GXEeE02fDpSHFNvJBlOEqqfkIX6oCa6KY9NThqeIjYsT184XR2ZI7akXRaw1gMOGpk4FmUxk6WIuX +4ei1SLQgSdl7OEdRtJklZ76eFrMbkJQ2TDhu8f7mVuiy53GUMIvCrP9xYGZGmCIDm2e4U2BDi3F7C5xK +3bDZXwlQp6z4BSqTy2OVEWxXUJfjPMOL5Mc7AvDeKtxAS73pVIv0HgHIa4NBAdC7uLG0zXuu1FF6z2XY +yUhk03fMZhYe7vVxsul3WE7U01fuN8z2y0eKwBW1RFBE1eKIaR9Y01sIWQWbSrfHfDrdZiElhmhHehfs +0EfrR4sLYdQshJuvhTeKGJDaEhtPQwwJ9mUYGtuCL9RozWx1XI4bHNlzBTW0BVokYiJGlPe7wdxNzJD7 +JgS7Lwv6jGKngVf86imGZyzqwiteWFPdNUoWdTvUPSMO5xIUK9mo5QpwbBOAmyYzVq42o3Qs90N9khEV +U36LB99fw8PtGHH5wsCHshfauwnNPj0blGXzke0kQ4JNCVH7Jtn0Y0aeejkSxFtwtxoYs6zHl1Lxxpsd +sw5vBy49CEtoltDW367lVAwDjWdx20msGB7qJCkEDrzu7EXSO22782QX9NBRcN9ppX0C25I0FMA4Wnhz +9zIpiXRrsTH35jzM8Cjt4EVLGNU3O0HuEvAer3cENnMJtngdrT86ox3fihMQbiuy4Bh4DEcP5in2VjbT +3qbnoCNvOi8Fmmf7KlGlWAOceL5OHVE5lljjQEMzEQOCEgrk5mDKgwSBJQBNauIDSC1a5iEQjB8Xxp4C +qeKyyWY9IOntNrtU5ny4lNprHJd36dKFeBLKcGCOvgHBXdOZloMF0YTRExw7hreEO9IoTGVHJ4teWsNr +HdtagUHjkeZkdMMfnUGNv5aBNtFMqhcZH6EitEa9lGPkKBbJpoom3u8D8EHSIF1H5EZqqx9TLY5hWAIG +PwJ4qwkpCGw5rCLVrjw7ARKukIFzNULANqjHUMcJ002TlUosJM4xJ4aAgckpLVGOGuPDhGAAexEcQmbg +UsZdmqQrtuVUyyLteLbLbqtR6CTlcAIwY3xyMCmPgyefE0FEUODBoxQtRUuYTL9RC5o1sYb2PvcxUQfb +iJFi2CAl99pAzcckU2qVCxniARslIxM5pmMRGsQX9ZzYAfZrbg6ce6S74I8UMlgRQ2QVyvUjKKOE6IrJ +Lng370emHfe5m6LZULD5YiZutkD5ipjL2Bz77DvTE5kNPUhuoKBcTJcUgytfXAKUTWOcRKNlq0GImrxM +Jfr7AWbLFFNKGLeTrVDBwpcokJCv0zcOKWe8fd2xkeXkZTdmM66IgM27cyYmtQ6YF26Kd0qrWJeVZJV9 +3fyLYYvKN5csbRY2BHoYE5ERARRW65IrpkXMf48OrCXMtDIP0Z7wxI9DiTeKKeH4uuguhCJnwzR3WxLA +VU6eBJEd7ZjS6JA83w7decq8uDI7LGKjcz1FySp3B7fE9DkHRGXxbsL7Fjar6vW2mAv8CuvI20B6jctp +2yLDs24sPfB3sSxrrlhbuT1m6DZqiN0dl6umKx7NGZhmOTVGr20jfcxhqPQwTJfd7kel4rvxip4BqkvT +7STy8knJ2BXGyJeNgwo1PXUZRDVy0LCTsSF1RFuRZe8cktHl9lgw8ntdPn1pVFL0MwJkJfdXBNUp5gNv +50FTkrpo1t6wq4CVbcfj2XOrOzvBUzNH26sXGABI1gGxCdp2jEZrHgqQaWIaTJVTuguZhxqDvdYsrwFW +YN58uuNcKHIrGdRSigyZInwQDYk0pjcqdSeU0WVU3Y9htzZBR7XRaCJr5YTZvq7fwermb5tuwb37lPLq +B2IGg0iftkVbXaSyfCwVaRbfLBb88so0QqpmJGirFu8FcDiXOV1zTr8yW9XLdYQuUjh43xrXLdgsuYff +CagInUk1eU1aLjVZoJRsNmStmOEpAqlYMwTvx7w6j2f421Cxr5cNZBIVlAxlXN2QiDqJ9v3sHhHkTanc +lQuH8ptUyX8qncpBuXXBn7cSez9N0EoxCBl1GHUagbjstgJo4gzLvTmVIY6MiWYOBitzNUHfyqKwtKUr +VoSCdZcGeA9lHUPA7PUprRRaT3m1hGKPyshtVS2ikG48w3oVerln1N1qGdtz46gZCrndw3LZ1B362RfW +zDPuXbpsyLsRMTt1Rz1oKHRXp3iE41hkhQH6pxlvyCW2INnHt5XU8zRamOB3oW0udOhMpQFDjRkOcy06 +b4t0QTHvoRqmBna3WXzIMZyeK3GChF5eF8oDXRbjhk7BB6YKCgqwWUzEJ5K47HMSlhFkBUjaPRjdGM0z +zOMwhW6b1NvSwP7XM1P5yi1oPvOspts1vr29SXqrMMrBhVogeodWyd69NqrO4jkyBxKmlXifoTowpfiY +2cUCE0XMZqxUN39LCP09JqZifaEcBEo3mgtm1tWu5QR2GNq7UyQf4RIPSDOpDCAtwoPhRgdT1lJdcj4U +lnH0wrJ8Uwu7c08L7ErnIrDATqCrOjpSbzGP1xHENABYONC4TknFPrJ8pe40A8fzGT0qBw9mAM1SKcHO +foiLcMC9AjHTqJzDG3xplSLPG9or2rMeq7Fzp9r0y7uJRMxgg51EbjfvYlH466A3ggvL2WQlDXjJqPW3 +BJGWAWDNN9LK8f46bADKPxakpkx23S9O47rGSXfDhVSIZsDympxWX1UOzWwMZRHkofVeKqizgbKkGgUT +WykE9gRoRAOd9wfHZDYKa9i0LaPDiaUMvnU1gdBIqIoiVsdJ9swX47oxvMtOxtcS0zlD6llDkBuIiU5g +PwRCYmtkkb25c8iRJXwGFPjI1wJ34I1z1ENicPdosPiUe9ZC2jnXIKzEdv01x2ER7DNDF3yxOwOhxNxI +GqsmC92j25UQQFu9ZstOZ28AoCkuOYs0Uycm5u8jR1T39dMBwrko09rC65ENLnsxM8oebmyFCPiGJ1ED +5Xqc9qZ237f1OnETAoEOwqUSvrdPTv56U7hV91EMTyC812MLQpr2710E3VVpsUCUMNhIxdt7UXZ1UNFb +jgzpZLXnf4DHrv6B7kq6UI50KMxcw1HZE2GpODfUTzNFLaqdrvzxKe5eUWdcojBaRbD4fFdVYJTElYDH +NNVh6ofkoeWcs9CWGFmSBe0T4K8phFeygQg0prKMELNEy6qENzVtG9ZDcqj3a7L6ZLtvq50anWp7fAVu +fwz55g4iM2Z2fA0pnwHDL7tt67zTxGITvsnJsZSpeq1EQsZcwtkBV9liu7Rl7jiVT1IIRtchB8TsTiaA +wVHIQQ9RIOTiPQdKNqi1kC9iGlUqWK93gblNWlBw1eYB9Wk8FQogutwTf0caNMx8D4nPbANcmOOlskIy +zALh15OlTrWnhP95rf08AN2J026zDE2DUF9k0eCevYBQIDjqKNW4XCZnjbHoIcKzbY5VzPbMs3ZyMz8K +SucBmgPg6wrSK5ykbkapS5vuqvXc9GbjQJ8bPNzoxoWGyjbZvDs2OBrIqBmcQb2DLJ8v38McQ4mC4UsS +jf4PyfSCtpk274QZjvLCZbLiCBxQegk7jUU0NmTFJAcYCxd9xMWdlFkiszcltT2YzwuFFz7iA6aa4n5L +HpBNfUA01GcAi1aCMYhmooS4zSlYcSOZkovMz36U3Fd9WtqIEOJLi7HMgHQDgNMdK6DTzAdHQtxerxVF +HJnPrfNVG7270r3bp0bPnLNYLhObbAn6zqSAUeLtI2Y4KJDjBKCAh2vvYGbu0e2REYJWRj7MkGevsSSy +b1kCXLt6tKGWAb7lt5c0xyJgUIJW7pdtnwgT0ZCa24BecCAwNnG5U2EwQbcjZGsFxqNGfaemd3oFEhES +BaE0Fxms9UKTnMafu8wvZ2xymMrUduuRzOjDeX7oD5YsLC88V8CGMLxbbxIpt94KGykbr6e7L0R4oZl1 +tKMgFwQ2p9Txdbp0Y293LcsJymKizqI0F2xEp7y4SmWOJqHZtsbz80wVV9nv41CvtfxuSoGZJ5cNB7pI +BgzNcQCeH3Jt0RaGGwboxxpuFbzilmkMFXxJm87tD4WNgu01nHfGCKeQcySEBZpVfJgi6sDFJ8uWnvKm +9mPLHurtWzEfKqUEa1iC71bXjw5wrvhv9BYW8JSUELHmDquftQyKdq0DZXhULMHGQLf4e95WIaoA14LL +bThz77kuhKULPTu2MNrBUKGorurhGugo5gs4ZUezSsUOe3KxYdrFMdGgny1GgTxMSMTp2RAZytKjv4kQ +Vx7XgzvpQLIbDjUPAkJv6lScwIRq1W3Ne0Rh0V6Bmn6U5uIuWnJjULmbaQiSODj3z0mAZvak0mSWIGwT +TX83HztcC4W7e1f6a1thmcc5K61Icehla2hBELWPpixTkyC4eEVmk9Rq0m0ZXtx0JX2ZQXqXDEyePyMe +J70sdSzXk72zusqhY4yuOMGgbYNHqxOToK6NxujR7e4dV3Wk5JnSUthym8scjcPeCiKDNY4cHfTMnDXJ +9zLVy01LtNKYpJ1s8FxVxigmxQNKEbIamxhx6yqwGC4aiISVOOUEjvNOdaUfXfUsE6jEwtwxyGxjlRK1 +cLyxXttq4QWN6PehgHv7jXykzPjInbEysebFvvPOOMdunmJvcCNMSvjUda8fL6xfGo0FDrLg8XZipd6S +oPVdYtyIM1Dg40KbBA3JuumPYtXuJaHrZnjZmdnM5OVo4ZNxktfCVT0c6bnD4bAeyn4bYt1ZPaX6hQHh +JtvNYfpD0ONYlmqKuToQAMlz52Fh6bj45EbX89L5eLlSpWeyBlGotzriB0EPlclrGi5l2B5oPb1aB1ag +yyYuu44l0F1oOVYnBIZsxIsHVITxi9lEuVPFkWASOUNuVQXfM4n5hxWR9qtuKnIcPsvbJsv1U10XlKh3 +KisqPhHU15xrCLr5gwFxPUKiNTLUBrkzgBOHXPVsHcLCiSD0YU56TRGfvEom43TWUKPPfl9Z54tgVQuT +jCRlaljAzeniQIcbbHZnn3f0HxbDG3DFYqWSxNrXabHhRsIOhhUHSPENyhGSTVO5t0XX5CdMspJPCd02 +3Oqv32ccbUK4O3YH6LEvp0WO3kSl5n50odVkI9B0i0iq4UPFGMkM8bEQJbgJoOH71P10vtdevJFQE4g2 +yhimiM53ZJRWgSZveHtENZc0Gjo0F9eioak9BnPpY1QxAFPC817svuhEstcU69bLCA4D1rO5R8AuIIBq +yQJcifFLvbpAEYTLKJqysZrU8EEl3TSdC13A9hZvk4NC8VGEDAxcNrKw313dZp17kZPO5HSd1y6sljAW +A9M1d6FMYV5SlBWf3WZNCUPS7qKNlda2YBsC6IUVB363f5RLGQOQHwbaijBSRCkrVoRxBHtc0Bd5J9V9 +P5uMTXkpZOxRcCQvImGgcmGuxxLb5zTqfS2xu7v3Sf3IIesSt9tVzcEcdbEvLGVJkLk4mb3G30DbIbri +PZ09JkweDvMaQ3bxT2nfkz3Ilihkw9jqikkCCCz7E8h6z6KbhQErEW9VzJZzMCgJsyPjFam6iNwpe07S +hyOvNVw2t9wpzL5xM11DvVzQwDaWEytNRHzDBs4KwEtpI2IpjUyVZHSwA0UGqqkzoCgrJFlNOvPlXqcS +IcREouUIBmuttkrhPWJtSxOOgpsdvBR3kTOzAXNzSKxoaBAb0c5SDMUc6FIyGA8x5wg5DkUgjFUUodEt +OYaB2VHVePW9mxHeBTdKWLzJow4ZZvjnoBuVigXljKCNh137ckV2y3Yg3Xi4UzJEI2V5Rw9AfnMs7xUw +VHOFCg189maD3bmZAe7b4eaGZhyy4HVKjqCXmIH7vsEjRvbnfB0SQxxpuqBDJbHNCtW4vM643ZQQBVPP +a7oXSQIq9w2dHp0A7dtkocCZdQp9FKR9XdJAFIbVSHzIF1ZogeZlc0pXuNE0tagvD57xwDRFkAuoQyMu +YDdZasXrpSmEE5UjHVkyYsISn8QsfXurzDybX468aoRoks654jjmRY5zi1oB8TcMdC2c3sicNaqfeuhd +H1nPX7l4RpdqWMR7gGx9slXtG8S3KxpOi4qCD7yg3saD66nun4dzksQURoTUdXyrJR5UpHsfIlTF1aJa +MdXyQtQnrkl00TeghQd00rRFZsCnhi0qrCSKiBfB2EVrd9RPpbgwJGZHuIQecdBmNetc2ylSEClqVBPR +GOPPIxrnswEZjmnS0jxKW9VSM1QVxSPJnPFswCqT95SoKD6CP4xdX28WIUGiNaIKodXXJHEIsXBCxLsr +PwWPCtoplC6hhpKmW5dQo92iCTyY2KioKzO8XR6FKm6qonMKVEwQNtlYE9c97KMtEnp25VOdMP46SQXS +YsSVp7vm8LP87VYI8SOKcW3s2oedYFtt45rvDzoTF0GmS6wELQ9uo98HhjQAI1Dt91cgjJOwygNmLoZE +X5K2zQiNA163uMCl5xzaBqY4YTL0wgALg3IFdYSp0RFYLWdt6IxoGI1tnoxcjlUEPo5eGIc3mS3SmaLn +OdumfUQQ4Jgmgaa5anUVQsfBDrlAN5oaX7O0JO71SSPSWiHBsT9WIPy2J1Cace9ZZLRxblFPSXcvsuHh +hvnhWQltEDAe7MgvkFQ8lGVFa8jhzijoF9kLmMhMILSzYnfXnZPNP7TlAAwlLHK1RqlpHskJqb6CPpGP +QvOAhEMsM3zJ2KejZx0esxkjxA0ZufVvGAMN3vTUMplQaF4RiQkp9fzBXf3CMk01dWjOMMIEXTeKzIQe +EcffzjixWU9FpAyGp2rVl4ETRgqljOGw4UgK31r0ZIEGnH0xGz1FtbW1OcQM008JVujRqulCucEMmntr +)"); + + auto outcome = client.PutWithContentEncoding(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(PutWithContentEncoding, SDKAppendsGzipAndIgnoresHttpProvidedEncoding_awsQuery) { + QueryProtocolClient client; + PutWithContentEncodingRequest request; + request.SetEncoding(R"(custom)"); + request.SetData(R"(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 +)"); + + auto outcome = client.PutWithContentEncoding(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/query/tests/QueryIdempotencyTokenAutoFillTest.cpp b/generated/protocol-tests/tests/input/query/tests/QueryIdempotencyTokenAutoFillTest.cpp new file mode 100644 index 00000000000..d0a134236d8 --- /dev/null +++ b/generated/protocol-tests/tests/input/query/tests/QueryIdempotencyTokenAutoFillTest.cpp @@ -0,0 +1,29 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using QueryIdempotencyTokenAutoFill = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(QueryIdempotencyTokenAutoFill, QueryProtocolIdempotencyTokenAutoFill) { + QueryProtocolClient client; + QueryIdempotencyTokenAutoFillRequest request; + + auto outcome = client.QueryIdempotencyTokenAutoFill(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(QueryIdempotencyTokenAutoFill, QueryProtocolIdempotencyTokenAutoFillIsSet) { + QueryProtocolClient client; + QueryIdempotencyTokenAutoFillRequest request; + request.SetToken(R"(00000000-0000-4000-8000-000000000123)"); + + auto outcome = client.QueryIdempotencyTokenAutoFill(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/query/tests/QueryListsTest.cpp b/generated/protocol-tests/tests/input/query/tests/QueryListsTest.cpp new file mode 100644 index 00000000000..7645f345047 --- /dev/null +++ b/generated/protocol-tests/tests/input/query/tests/QueryListsTest.cpp @@ -0,0 +1,80 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using QueryLists = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(QueryLists, QueryLists) { + QueryProtocolClient client; + QueryListsRequest request; + request.SetListArg({R"(foo)", R"(bar)", R"(baz)"}); + { + GreetingStruct requestComplexListArgItem; + requestComplexListArgItem.SetHi(R"(hello)"); + request.AddComplexListArg(requestComplexListArgItem); + } + { + GreetingStruct requestComplexListArgItem; + requestComplexListArgItem.SetHi(R"(hola)"); + request.AddComplexListArg(requestComplexListArgItem); + } + + auto outcome = client.QueryLists(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(QueryLists, EmptyQueryLists) { + QueryProtocolClient client; + QueryListsRequest request; + request.SetListArg({}); + + auto outcome = client.QueryLists(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(QueryLists, FlattenedQueryLists) { + QueryProtocolClient client; + QueryListsRequest request; + request.SetFlattenedListArg({R"(A)", R"(B)"}); + + auto outcome = client.QueryLists(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(QueryLists, QueryListArgWithXmlNameMember) { + QueryProtocolClient client; + QueryListsRequest request; + request.SetListArgWithXmlNameMember({R"(A)", R"(B)"}); + + auto outcome = client.QueryLists(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(QueryLists, QueryFlattenedListArgWithXmlName) { + QueryProtocolClient client; + QueryListsRequest request; + request.SetFlattenedListArgWithXmlName({R"(A)", R"(B)"}); + + auto outcome = client.QueryLists(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(QueryLists, QueryNestedStructWithList) { + QueryProtocolClient client; + QueryListsRequest request; + { + NestedStructWithList requestNestedWithList; + requestNestedWithList.SetListArg({R"(A)", R"(B)"}); + request.SetNestedWithList(requestNestedWithList); + } + + auto outcome = client.QueryLists(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/query/tests/QueryMapsTest.cpp b/generated/protocol-tests/tests/input/query/tests/QueryMapsTest.cpp new file mode 100644 index 00000000000..06e9f535c02 --- /dev/null +++ b/generated/protocol-tests/tests/input/query/tests/QueryMapsTest.cpp @@ -0,0 +1,106 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using QueryMaps = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(QueryMaps, QuerySimpleQueryMaps) { + QueryProtocolClient client; + QueryMapsRequest request; + request.SetMapArg({{"bar", R"(Bar)"}, {"foo", R"(Foo)"}}); + + auto outcome = client.QueryMaps(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(QueryMaps, QuerySimpleQueryMapsWithXmlName) { + QueryProtocolClient client; + QueryMapsRequest request; + request.SetRenamedMapArg({{"foo", R"(Foo)"}}); + + auto outcome = client.QueryMaps(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(QueryMaps, QueryComplexQueryMaps) { + QueryProtocolClient client; + QueryMapsRequest request; + { + GreetingStruct requestComplexMapArgItem; + requestComplexMapArgItem.SetHi(R"(Bar)"); + request.AddComplexMapArg("bar", requestComplexMapArgItem); + } + { + GreetingStruct requestComplexMapArgItem; + requestComplexMapArgItem.SetHi(R"(Foo)"); + request.AddComplexMapArg("foo", requestComplexMapArgItem); + } + + auto outcome = client.QueryMaps(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(QueryMaps, QueryEmptyQueryMaps) { + QueryProtocolClient client; + QueryMapsRequest request; + request.SetMapArg({}); + + auto outcome = client.QueryMaps(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(QueryMaps, QueryQueryMapWithMemberXmlName) { + QueryProtocolClient client; + QueryMapsRequest request; + request.SetMapWithXmlMemberName({{"bar", R"(Bar)"}, {"foo", R"(Foo)"}}); + + auto outcome = client.QueryMaps(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(QueryMaps, QueryFlattenedQueryMaps) { + QueryProtocolClient client; + QueryMapsRequest request; + request.SetFlattenedMap({{"bar", R"(Bar)"}, {"foo", R"(Foo)"}}); + + auto outcome = client.QueryMaps(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(QueryMaps, QueryFlattenedQueryMapsWithXmlName) { + QueryProtocolClient client; + QueryMapsRequest request; + request.SetFlattenedMapWithXmlName({{"bar", R"(Bar)"}, {"foo", R"(Foo)"}}); + + auto outcome = client.QueryMaps(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(QueryMaps, QueryQueryMapOfLists) { + QueryProtocolClient client; + QueryMapsRequest request; + request.SetMapOfLists({{"bar", {R"(C)", R"(D)"}}, {"foo", {R"(A)", R"(B)"}}}); + + auto outcome = client.QueryMaps(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(QueryMaps, QueryNestedStructWithMap) { + QueryProtocolClient client; + QueryMapsRequest request; + { + NestedStructWithMap requestNestedStructWithMap; + requestNestedStructWithMap.SetMapArg({{"bar", R"(Bar)"}, {"foo", R"(Foo)"}}); + request.SetNestedStructWithMap(requestNestedStructWithMap); + } + + auto outcome = client.QueryMaps(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/query/tests/QueryTimestampsTest.cpp b/generated/protocol-tests/tests/input/query/tests/QueryTimestampsTest.cpp new file mode 100644 index 00000000000..7b4099d22d1 --- /dev/null +++ b/generated/protocol-tests/tests/input/query/tests/QueryTimestampsTest.cpp @@ -0,0 +1,23 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using QueryTimestamps = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(QueryTimestamps, QueryTimestampsInput) { + QueryProtocolClient client; + QueryTimestampsRequest request; + request.SetNormalFormat(Aws::Utils::DateTime(1422172800)); + request.SetEpochMember(Aws::Utils::DateTime(1422172800)); + request.SetEpochTarget(Aws::Utils::DateTime(1422172800)); + + auto outcome = client.QueryTimestamps(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/query/tests/SimpleInputParamsTest.cpp b/generated/protocol-tests/tests/input/query/tests/SimpleInputParamsTest.cpp new file mode 100644 index 00000000000..d196c276c6d --- /dev/null +++ b/generated/protocol-tests/tests/input/query/tests/SimpleInputParamsTest.cpp @@ -0,0 +1,116 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using SimpleInputParams = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(SimpleInputParams, QuerySimpleInputParamsStrings) { + QueryProtocolClient client; + SimpleInputParamsRequest request; + request.SetFoo(R"(val1)"); + request.SetBar(R"(val2)"); + + auto outcome = client.SimpleInputParams(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleInputParams, QuerySimpleInputParamsStringAndBooleanTrue) { + QueryProtocolClient client; + SimpleInputParamsRequest request; + request.SetFoo(R"(val1)"); + request.SetBaz(true); + + auto outcome = client.SimpleInputParams(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleInputParams, QuerySimpleInputParamsStringsAndBooleanFalse) { + QueryProtocolClient client; + SimpleInputParamsRequest request; + request.SetBaz(false); + + auto outcome = client.SimpleInputParams(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleInputParams, QuerySimpleInputParamsInteger) { + QueryProtocolClient client; + SimpleInputParamsRequest request; + request.SetBam(10); + + auto outcome = client.SimpleInputParams(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleInputParams, QuerySimpleInputParamsFloat) { + QueryProtocolClient client; + SimpleInputParamsRequest request; + request.SetBoo(10.8); + + auto outcome = client.SimpleInputParams(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleInputParams, QuerySimpleInputParamsBlob) { + QueryProtocolClient client; + SimpleInputParamsRequest request; + request.SetQux(R"(value)"); + + auto outcome = client.SimpleInputParams(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleInputParams, QueryEnums) { + QueryProtocolClient client; + SimpleInputParamsRequest request; + request.SetFooEnum(FooEnumMapper::GetFooEnumForName(R"e(Foo)e")); + + auto outcome = client.SimpleInputParams(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleInputParams, QueryIntEnums) { + QueryProtocolClient client; + SimpleInputParamsRequest request; + request.SetIntegerEnum(1); + + auto outcome = client.SimpleInputParams(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleInputParams, AwsQuerySupportsNaNFloatInputs) { + QueryProtocolClient client; + SimpleInputParamsRequest request; + request.SetFloatValue(std::numeric_limits::quiet_NaN()); + request.SetBoo(std::numeric_limits::quiet_NaN()); + + auto outcome = client.SimpleInputParams(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleInputParams, AwsQuerySupportsInfinityFloatInputs) { + QueryProtocolClient client; + SimpleInputParamsRequest request; + request.SetFloatValue(std::numeric_limits::infinity()); + request.SetBoo(std::numeric_limits::infinity()); + + auto outcome = client.SimpleInputParams(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleInputParams, AwsQuerySupportsNegativeInfinityFloatInputs) { + QueryProtocolClient client; + SimpleInputParamsRequest request; + request.SetFloatValue(-std::numeric_limits::infinity()); + request.SetBoo(-std::numeric_limits::infinity()); + + auto outcome = client.SimpleInputParams(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/CMakeLists.txt b/generated/protocol-tests/tests/input/rest-json/CMakeLists.txt index c4f11ad9f74..4a31b254128 100644 --- a/generated/protocol-tests/tests/input/rest-json/CMakeLists.txt +++ b/generated/protocol-tests/tests/input/rest-json/CMakeLists.txt @@ -6,6 +6,7 @@ add_project(rest-json-input-protocol-tests file(GLOB AWS_REST_JSON_INPUT_PROTOCOL_TESTS_SRC "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp" + "${CMAKE_CURRENT_SOURCE_DIR}/tests/*.cpp" ) if(MSVC AND BUILD_SHARED_LIBS) diff --git a/generated/protocol-tests/tests/input/rest-json/tests/AllQueryStringTypesTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/AllQueryStringTypesTest.cpp new file mode 100644 index 00000000000..f5791fcae0d --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/AllQueryStringTypesTest.cpp @@ -0,0 +1,104 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using AllQueryStringTypes = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(AllQueryStringTypes, RestJsonAllQueryStringTypes) { + RestJsonProtocolClient client; + AllQueryStringTypesRequest request; + request.SetQueryString(R"(Hello there)"); + request.SetQueryStringList({R"(a)", R"(b)", R"(c)"}); + request.SetQueryStringSet({R"(a)", R"(b)", R"(c)"}); + request.SetQueryByte(1); + request.SetQueryShort(2); + request.SetQueryInteger(3); + request.SetQueryIntegerList({1, 2, 3}); + request.SetQueryIntegerSet({1, 2, 3}); + request.SetQueryLong(4); + request.SetQueryFloat(1.1); + request.SetQueryDouble(1.1); + request.SetQueryDoubleList({1.1, 2.1, 3.1}); + request.SetQueryBoolean(true); + request.SetQueryBooleanList({true, false, true}); + request.SetQueryTimestamp(Aws::Utils::DateTime(1)); + request.SetQueryTimestampList({Aws::Utils::DateTime(1), Aws::Utils::DateTime(2), Aws::Utils::DateTime(3)}); + request.SetQueryEnum(FooEnumMapper::GetFooEnumForName(R"e(Foo)e")); + request.SetQueryEnumList({FooEnumMapper::GetFooEnumForName(R"e(Foo)e"), FooEnumMapper::GetFooEnumForName(R"e(Baz)e"), FooEnumMapper::GetFooEnumForName(R"e(Bar)e")}); + request.SetQueryIntegerEnum(1); + request.SetQueryIntegerEnumList({1, 2, 3}); + request.SetQueryParamsMapOfStringList({{"String", {R"(Hello there)"}}, {"StringList", {R"(a)", R"(b)", R"(c)"}}, {"StringSet", {R"(a)", R"(b)", R"(c)"}}, {"Byte", {R"(1)"}}, {"Short", {R"(2)"}}, {"Integer", {R"(3)"}}, {"IntegerList", {R"(1)", R"(2)", R"(3)"}}, {"IntegerSet", {R"(1)", R"(2)", R"(3)"}}, {"Long", {R"(4)"}}, {"Float", {R"(1.1)"}}, {"Double", {R"(1.1)"}}, {"DoubleList", {R"(1.1)", R"(2.1)", R"(3.1)"}}, {"Boolean", {R"(true)"}}, {"BooleanList", {R"(true)", R"(false)", R"(true)"}}, {"Timestamp", {R"(1970-01-01T00:00:01Z)"}}, {"TimestampList", {R"(1970-01-01T00:00:01Z)", R"(1970-01-01T00:00:02Z)", R"(1970-01-01T00:00:03Z)"}}, {"Enum", {R"(Foo)"}}, {"EnumList", {R"(Foo)", R"(Baz)", R"(Bar)"}}, {"IntegerEnum", {R"(1)"}}, {"IntegerEnumList", {R"(1)", R"(2)", R"(3)"}}}); + + auto outcome = client.AllQueryStringTypes(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(AllQueryStringTypes, RestJsonQueryStringMap) { + RestJsonProtocolClient client; + AllQueryStringTypesRequest request; + request.SetQueryParamsMapOfStringList({{"QueryParamsStringKeyA", {R"(Foo)"}}, {"QueryParamsStringKeyB", {R"(Bar)"}}}); + + auto outcome = client.AllQueryStringTypes(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(AllQueryStringTypes, RestJsonQueryStringEscaping) { + RestJsonProtocolClient client; + AllQueryStringTypesRequest request; + request.SetQueryString(R"( %:/?#[]@!$&'()*+,;=😹)"); + request.SetQueryParamsMapOfStringList({{"String", {R"( %:/?#[]@!$&'()*+,;=😹)"}}}); + + auto outcome = client.AllQueryStringTypes(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(AllQueryStringTypes, RestJsonSupportsNaNFloatQueryValues) { + RestJsonProtocolClient client; + AllQueryStringTypesRequest request; + request.SetQueryFloat(std::numeric_limits::quiet_NaN()); + request.SetQueryDouble(std::numeric_limits::quiet_NaN()); + request.SetQueryParamsMapOfStringList({{"Float", {R"(NaN)"}}, {"Double", {R"(NaN)"}}}); + + auto outcome = client.AllQueryStringTypes(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(AllQueryStringTypes, RestJsonSupportsInfinityFloatQueryValues) { + RestJsonProtocolClient client; + AllQueryStringTypesRequest request; + request.SetQueryFloat(std::numeric_limits::infinity()); + request.SetQueryDouble(std::numeric_limits::infinity()); + request.SetQueryParamsMapOfStringList({{"Float", {R"(Infinity)"}}, {"Double", {R"(Infinity)"}}}); + + auto outcome = client.AllQueryStringTypes(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(AllQueryStringTypes, RestJsonSupportsNegativeInfinityFloatQueryValues) { + RestJsonProtocolClient client; + AllQueryStringTypesRequest request; + request.SetQueryFloat(-std::numeric_limits::infinity()); + request.SetQueryDouble(-std::numeric_limits::infinity()); + request.SetQueryParamsMapOfStringList({{"Float", {R"(-Infinity)"}}, {"Double", {R"(-Infinity)"}}}); + + auto outcome = client.AllQueryStringTypes(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(AllQueryStringTypes, RestJsonZeroAndFalseQueryValues) { + RestJsonProtocolClient client; + AllQueryStringTypesRequest request; + request.SetQueryInteger(0); + request.SetQueryBoolean(false); + request.SetQueryParamsMapOfStringList({{"Integer", {R"(0)"}}, {"Boolean", {R"(false)"}}}); + + auto outcome = client.AllQueryStringTypes(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/ConstantAndVariableQueryStringTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/ConstantAndVariableQueryStringTest.cpp new file mode 100644 index 00000000000..68a9a1ea0f0 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/ConstantAndVariableQueryStringTest.cpp @@ -0,0 +1,31 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using ConstantAndVariableQueryString = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(ConstantAndVariableQueryString, RestJsonConstantAndVariableQueryStringMissingOneValue) { + RestJsonProtocolClient client; + ConstantAndVariableQueryStringRequest request; + request.SetBaz(R"(bam)"); + + auto outcome = client.ConstantAndVariableQueryString(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(ConstantAndVariableQueryString, RestJsonConstantAndVariableQueryStringAllValues) { + RestJsonProtocolClient client; + ConstantAndVariableQueryStringRequest request; + request.SetBaz(R"(bam)"); + request.SetMaybeSet(R"(yes)"); + + auto outcome = client.ConstantAndVariableQueryString(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/ConstantQueryStringTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/ConstantQueryStringTest.cpp new file mode 100644 index 00000000000..7f41379f712 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/ConstantQueryStringTest.cpp @@ -0,0 +1,21 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using ConstantQueryString = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(ConstantQueryString, RestJsonConstantQueryString) { + RestJsonProtocolClient client; + ConstantQueryStringRequest request; + request.SetHello(R"(hi)"); + + auto outcome = client.ConstantQueryString(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/DocumentTypeAsMapValueTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/DocumentTypeAsMapValueTest.cpp new file mode 100644 index 00000000000..0d12c9ab4f0 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/DocumentTypeAsMapValueTest.cpp @@ -0,0 +1,32 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using DocumentTypeAsMapValue = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(DocumentTypeAsMapValue, DocumentTypeAsMapValueInput) { + RestJsonProtocolClient client; + DocumentTypeAsMapValueRequest request; + { + Aws::Utils::Document requestDocValuedMapItem(R"j({"f":1,"o":2})j"); + request.AddDocValuedMap("foo", requestDocValuedMapItem); + } + { + Aws::Utils::Document requestDocValuedMapItem(R"j(["b","a","r"])j"); + request.AddDocValuedMap("bar", requestDocValuedMapItem); + } + { + Aws::Utils::Document requestDocValuedMapItem(R"j("BAZ")j"); + request.AddDocValuedMap("baz", requestDocValuedMapItem); + } + + auto outcome = client.DocumentTypeAsMapValue(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/DocumentTypeAsPayloadTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/DocumentTypeAsPayloadTest.cpp new file mode 100644 index 00000000000..cfd1b8e0733 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/DocumentTypeAsPayloadTest.cpp @@ -0,0 +1,36 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using DocumentTypeAsPayload = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(DocumentTypeAsPayload, DocumentTypeAsPayloadInput) { + RestJsonProtocolClient client; + DocumentTypeAsPayloadRequest request; + { + Aws::Utils::Document requestDocumentValue(R"j({"foo":"bar"})j"); + request.SetDocumentValue(requestDocumentValue); + } + + auto outcome = client.DocumentTypeAsPayload(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(DocumentTypeAsPayload, DocumentTypeAsPayloadInputString) { + RestJsonProtocolClient client; + DocumentTypeAsPayloadRequest request; + { + Aws::Utils::Document requestDocumentValue(R"j("hello")j"); + request.SetDocumentValue(requestDocumentValue); + } + + auto outcome = client.DocumentTypeAsPayload(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/DocumentTypeTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/DocumentTypeTest.cpp new file mode 100644 index 00000000000..311753577ec --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/DocumentTypeTest.cpp @@ -0,0 +1,77 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using DocumentType = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(DocumentType, DocumentTypeInputWithObject) { + RestJsonProtocolClient client; + DocumentTypeRequest request; + request.SetStringValue(R"(string)"); + { + Aws::Utils::Document requestDocumentValue(R"j({"foo":"bar"})j"); + request.SetDocumentValue(requestDocumentValue); + } + + auto outcome = client.DocumentType(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(DocumentType, DocumentInputWithString) { + RestJsonProtocolClient client; + DocumentTypeRequest request; + request.SetStringValue(R"(string)"); + { + Aws::Utils::Document requestDocumentValue(R"j("hello")j"); + request.SetDocumentValue(requestDocumentValue); + } + + auto outcome = client.DocumentType(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(DocumentType, DocumentInputWithNumber) { + RestJsonProtocolClient client; + DocumentTypeRequest request; + request.SetStringValue(R"(string)"); + { + Aws::Utils::Document requestDocumentValue(R"j(10)j"); + request.SetDocumentValue(requestDocumentValue); + } + + auto outcome = client.DocumentType(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(DocumentType, DocumentInputWithBoolean) { + RestJsonProtocolClient client; + DocumentTypeRequest request; + request.SetStringValue(R"(string)"); + { + Aws::Utils::Document requestDocumentValue(R"j(true)j"); + request.SetDocumentValue(requestDocumentValue); + } + + auto outcome = client.DocumentType(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(DocumentType, DocumentInputWithList) { + RestJsonProtocolClient client; + DocumentTypeRequest request; + request.SetStringValue(R"(string)"); + { + Aws::Utils::Document requestDocumentValue(R"j([true,"hi",[1,2],{"foo":{"baz":[3,4]}}])j"); + request.SetDocumentValue(requestDocumentValue); + } + + auto outcome = client.DocumentType(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/EmptyInputAndEmptyOutputTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/EmptyInputAndEmptyOutputTest.cpp new file mode 100644 index 00000000000..ca4031340ec --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/EmptyInputAndEmptyOutputTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using EmptyInputAndEmptyOutput = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(EmptyInputAndEmptyOutput, RestJsonEmptyInputAndEmptyOutput) { + RestJsonProtocolClient client; + EmptyInputAndEmptyOutputRequest request; + + auto outcome = client.EmptyInputAndEmptyOutput(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/EndpointOperationTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/EndpointOperationTest.cpp new file mode 100644 index 00000000000..8f50469b4f4 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/EndpointOperationTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using EndpointOperation = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(EndpointOperation, RestJsonEndpointTrait) { + RestJsonProtocolClient client; + EndpointOperationRequest request; + + auto outcome = client.EndpointOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/EndpointWithHostLabelOperationTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/EndpointWithHostLabelOperationTest.cpp new file mode 100644 index 00000000000..daf84254571 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/EndpointWithHostLabelOperationTest.cpp @@ -0,0 +1,21 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using EndpointWithHostLabelOperation = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(EndpointWithHostLabelOperation, RestJsonEndpointTraitWithHostLabel) { + RestJsonProtocolClient client; + EndpointWithHostLabelOperationRequest request; + request.SetLabel(R"(bar)"); + + auto outcome = client.EndpointWithHostLabelOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/HostWithPathOperationTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/HostWithPathOperationTest.cpp new file mode 100644 index 00000000000..287ef1aae44 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/HostWithPathOperationTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HostWithPathOperation = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(HostWithPathOperation, RestJsonHostWithPath) { + RestJsonProtocolClient client; + HostWithPathOperationRequest request; + + auto outcome = client.HostWithPathOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/HttpChecksumRequiredTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/HttpChecksumRequiredTest.cpp new file mode 100644 index 00000000000..ef246c041d0 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/HttpChecksumRequiredTest.cpp @@ -0,0 +1,21 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpChecksumRequired = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(HttpChecksumRequired, RestJsonHttpChecksumRequired) { + RestJsonProtocolClient client; + HttpChecksumRequiredRequest request; + request.SetFoo(R"(base64 encoded md5 checksum)"); + + auto outcome = client.HttpChecksumRequired(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/HttpEnumPayloadTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/HttpEnumPayloadTest.cpp new file mode 100644 index 00000000000..4ddeb4bd1b3 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/HttpEnumPayloadTest.cpp @@ -0,0 +1,21 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpEnumPayload = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(HttpEnumPayload, RestJsonEnumPayloadRequest) { + RestJsonProtocolClient client; + HttpEnumPayloadRequest request; + request.SetPayload(StringEnumMapper::GetStringEnumForName(R"e(enumvalue)e")); + + auto outcome = client.HttpEnumPayload(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/HttpPayloadTraitsTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/HttpPayloadTraitsTest.cpp new file mode 100644 index 00000000000..ab412dbd432 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/HttpPayloadTraitsTest.cpp @@ -0,0 +1,31 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpPayloadTraits = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(HttpPayloadTraits, RestJsonHttpPayloadTraitsWithBlob) { + RestJsonProtocolClient client; + HttpPayloadTraitsRequest request; + request.SetFoo(R"(Foo)"); + request.SetBody([](){ return Aws::MakeShared("Test", R"(blobby blob blob)", std::ios_base::in | std::ios_base::binary); }() ); + + auto outcome = client.HttpPayloadTraits(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(HttpPayloadTraits, RestJsonHttpPayloadTraitsWithNoBlobBody) { + RestJsonProtocolClient client; + HttpPayloadTraitsRequest request; + request.SetFoo(R"(Foo)"); + + auto outcome = client.HttpPayloadTraits(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/HttpPayloadWithStructureTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/HttpPayloadWithStructureTest.cpp new file mode 100644 index 00000000000..36268bc2c53 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/HttpPayloadWithStructureTest.cpp @@ -0,0 +1,26 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpPayloadWithStructure = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(HttpPayloadWithStructure, RestJsonHttpPayloadWithStructure) { + RestJsonProtocolClient client; + HttpPayloadWithStructureRequest request; + { + NestedPayload requestNested; + requestNested.SetGreeting(R"(hello)"); + requestNested.SetName(R"(Phreddy)"); + request.SetNested(requestNested); + } + + auto outcome = client.HttpPayloadWithStructure(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/HttpPayloadWithUnionTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/HttpPayloadWithUnionTest.cpp new file mode 100644 index 00000000000..318ddb2987d --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/HttpPayloadWithUnionTest.cpp @@ -0,0 +1,33 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpPayloadWithUnion = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(HttpPayloadWithUnion, RestJsonHttpPayloadWithUnion) { + RestJsonProtocolClient client; + HttpPayloadWithUnionRequest request; + { + UnionPayload requestNested; + requestNested.SetGreeting(R"(hello)"); + request.SetNested(requestNested); + } + + auto outcome = client.HttpPayloadWithUnion(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(HttpPayloadWithUnion, RestJsonHttpPayloadWithUnsetUnion) { + RestJsonProtocolClient client; + HttpPayloadWithUnionRequest request; + + auto outcome = client.HttpPayloadWithUnion(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/HttpPrefixHeadersTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/HttpPrefixHeadersTest.cpp new file mode 100644 index 00000000000..5329afcd1e5 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/HttpPrefixHeadersTest.cpp @@ -0,0 +1,41 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpPrefixHeaders = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(HttpPrefixHeaders, RestJsonHttpPrefixHeadersArePresent) { + RestJsonProtocolClient client; + HttpPrefixHeadersRequest request; + request.SetFoo(R"(Foo)"); + request.SetFooMap({{"abc", R"(Abc value)"}, {"def", R"(Def value)"}}); + + auto outcome = client.HttpPrefixHeaders(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(HttpPrefixHeaders, RestJsonHttpPrefixHeadersAreNotPresent) { + RestJsonProtocolClient client; + HttpPrefixHeadersRequest request; + request.SetFoo(R"(Foo)"); + request.SetFooMap({}); + + auto outcome = client.HttpPrefixHeaders(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(HttpPrefixHeaders, RestJsonHttpPrefixEmptyHeaders) { + RestJsonProtocolClient client; + HttpPrefixHeadersRequest request; + request.SetFooMap({{"abc", R"()"}}); + + auto outcome = client.HttpPrefixHeaders(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/HttpRequestWithFloatLabelsTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/HttpRequestWithFloatLabelsTest.cpp new file mode 100644 index 00000000000..1f390731953 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/HttpRequestWithFloatLabelsTest.cpp @@ -0,0 +1,42 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpRequestWithFloatLabels = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(HttpRequestWithFloatLabels, RestJsonSupportsNaNFloatLabels) { + RestJsonProtocolClient client; + HttpRequestWithFloatLabelsRequest request; + request.SetFloat(std::numeric_limits::quiet_NaN()); + request.SetDouble(std::numeric_limits::quiet_NaN()); + + auto outcome = client.HttpRequestWithFloatLabels(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(HttpRequestWithFloatLabels, RestJsonSupportsInfinityFloatLabels) { + RestJsonProtocolClient client; + HttpRequestWithFloatLabelsRequest request; + request.SetFloat(std::numeric_limits::infinity()); + request.SetDouble(std::numeric_limits::infinity()); + + auto outcome = client.HttpRequestWithFloatLabels(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(HttpRequestWithFloatLabels, RestJsonSupportsNegativeInfinityFloatLabels) { + RestJsonProtocolClient client; + HttpRequestWithFloatLabelsRequest request; + request.SetFloat(-std::numeric_limits::infinity()); + request.SetDouble(-std::numeric_limits::infinity()); + + auto outcome = client.HttpRequestWithFloatLabels(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/HttpRequestWithGreedyLabelInPathTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/HttpRequestWithGreedyLabelInPathTest.cpp new file mode 100644 index 00000000000..1d0b2d51a64 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/HttpRequestWithGreedyLabelInPathTest.cpp @@ -0,0 +1,22 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpRequestWithGreedyLabelInPath = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(HttpRequestWithGreedyLabelInPath, RestJsonHttpRequestWithGreedyLabelInPath) { + RestJsonProtocolClient client; + HttpRequestWithGreedyLabelInPathRequest request; + request.SetFoo(R"(hello/escape)"); + request.SetBaz(R"(there/guy)"); + + auto outcome = client.HttpRequestWithGreedyLabelInPath(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/HttpRequestWithLabelsAndTimestampFormatTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/HttpRequestWithLabelsAndTimestampFormatTest.cpp new file mode 100644 index 00000000000..60fa1743a11 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/HttpRequestWithLabelsAndTimestampFormatTest.cpp @@ -0,0 +1,27 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpRequestWithLabelsAndTimestampFormat = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(HttpRequestWithLabelsAndTimestampFormat, RestJsonHttpRequestWithLabelsAndTimestampFormat) { + RestJsonProtocolClient client; + HttpRequestWithLabelsAndTimestampFormatRequest request; + request.SetMemberEpochSeconds(Aws::Utils::DateTime(1576540098)); + request.SetMemberHttpDate(Aws::Utils::DateTime(1576540098)); + request.SetMemberDateTime(Aws::Utils::DateTime(1576540098)); + request.SetDefaultFormat(Aws::Utils::DateTime(1576540098)); + request.SetTargetEpochSeconds(Aws::Utils::DateTime(1576540098)); + request.SetTargetHttpDate(Aws::Utils::DateTime(1576540098)); + request.SetTargetDateTime(Aws::Utils::DateTime(1576540098)); + + auto outcome = client.HttpRequestWithLabelsAndTimestampFormat(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/HttpRequestWithLabelsTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/HttpRequestWithLabelsTest.cpp new file mode 100644 index 00000000000..da012112d00 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/HttpRequestWithLabelsTest.cpp @@ -0,0 +1,44 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpRequestWithLabels = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(HttpRequestWithLabels, RestJsonInputWithHeadersAndAllParams) { + RestJsonProtocolClient client; + HttpRequestWithLabelsRequest request; + request.SetString(R"(string)"); + request.SetShort(1); + request.SetInteger(2); + request.SetLong(3); + request.SetFloat(4.1); + request.SetDouble(5.1); + request.SetBoolean(true); + request.SetTimestamp(Aws::Utils::DateTime(1576540098)); + + auto outcome = client.HttpRequestWithLabels(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(HttpRequestWithLabels, RestJsonHttpRequestLabelEscaping) { + RestJsonProtocolClient client; + HttpRequestWithLabelsRequest request; + request.SetString(R"( %:/?#[]@!$&'()*+,;=😹)"); + request.SetShort(1); + request.SetInteger(2); + request.SetLong(3); + request.SetFloat(4.1); + request.SetDouble(5.1); + request.SetBoolean(true); + request.SetTimestamp(Aws::Utils::DateTime(1576540098)); + + auto outcome = client.HttpRequestWithLabels(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/HttpRequestWithRegexLiteralTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/HttpRequestWithRegexLiteralTest.cpp new file mode 100644 index 00000000000..781df314557 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/HttpRequestWithRegexLiteralTest.cpp @@ -0,0 +1,21 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpRequestWithRegexLiteral = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(HttpRequestWithRegexLiteral, RestJsonToleratesRegexCharsInSegments) { + RestJsonProtocolClient client; + HttpRequestWithRegexLiteralRequest request; + request.SetStr(R"(abc)"); + + auto outcome = client.HttpRequestWithRegexLiteral(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/HttpStringPayloadTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/HttpStringPayloadTest.cpp new file mode 100644 index 00000000000..7fd51a994f7 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/HttpStringPayloadTest.cpp @@ -0,0 +1,21 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpStringPayload = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(HttpStringPayload, RestJsonStringPayloadRequest) { + RestJsonProtocolClient client; + HttpStringPayloadRequest request; + request.SetBody([](){ return Aws::MakeShared("Test", R"(rawstring)", std::ios_base::in | std::ios_base::binary); }() ); + + auto outcome = client.HttpStringPayload(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/InputAndOutputWithHeadersTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/InputAndOutputWithHeadersTest.cpp new file mode 100644 index 00000000000..43ceb30edf3 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/InputAndOutputWithHeadersTest.cpp @@ -0,0 +1,117 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using InputAndOutputWithHeaders = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, RestJsonInputAndOutputWithStringHeaders) { + RestJsonProtocolClient client; + InputAndOutputWithHeadersRequest request; + request.SetHeaderString(R"(Hello)"); + request.SetHeaderStringList({R"(a)", R"(b)", R"(c)"}); + request.SetHeaderStringSet({R"(a)", R"(b)", R"(c)"}); + + auto outcome = client.InputAndOutputWithHeaders(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, RestJsonInputAndOutputWithQuotedStringHeaders) { + RestJsonProtocolClient client; + InputAndOutputWithHeadersRequest request; + request.SetHeaderStringList({R"(b,c)", R"("def")", R"(a)"}); + + auto outcome = client.InputAndOutputWithHeaders(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, RestJsonInputAndOutputWithNumericHeaders) { + RestJsonProtocolClient client; + InputAndOutputWithHeadersRequest request; + request.SetHeaderByte(1); + request.SetHeaderShort(123); + request.SetHeaderInteger(123); + request.SetHeaderLong(123); + request.SetHeaderFloat(1.1); + request.SetHeaderDouble(1.1); + request.SetHeaderIntegerList({1, 2, 3}); + + auto outcome = client.InputAndOutputWithHeaders(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, RestJsonInputAndOutputWithBooleanHeaders) { + RestJsonProtocolClient client; + InputAndOutputWithHeadersRequest request; + request.SetHeaderTrueBool(true); + request.SetHeaderFalseBool(false); + request.SetHeaderBooleanList({true, false, true}); + + auto outcome = client.InputAndOutputWithHeaders(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, RestJsonInputAndOutputWithTimestampHeaders) { + RestJsonProtocolClient client; + InputAndOutputWithHeadersRequest request; + request.SetHeaderTimestampList({Aws::Utils::DateTime(1576540098), Aws::Utils::DateTime(1576540098)}); + + auto outcome = client.InputAndOutputWithHeaders(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, RestJsonInputAndOutputWithEnumHeaders) { + RestJsonProtocolClient client; + InputAndOutputWithHeadersRequest request; + request.SetHeaderEnum(FooEnumMapper::GetFooEnumForName(R"e(Foo)e")); + request.SetHeaderEnumList({FooEnumMapper::GetFooEnumForName(R"e(Foo)e"), FooEnumMapper::GetFooEnumForName(R"e(Bar)e"), FooEnumMapper::GetFooEnumForName(R"e(Baz)e")}); + + auto outcome = client.InputAndOutputWithHeaders(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, RestJsonInputAndOutputWithIntEnumHeaders) { + RestJsonProtocolClient client; + InputAndOutputWithHeadersRequest request; + request.SetHeaderIntegerEnum(1); + request.SetHeaderIntegerEnumList({1, 2, 3}); + + auto outcome = client.InputAndOutputWithHeaders(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, RestJsonSupportsNaNFloatHeaderInputs) { + RestJsonProtocolClient client; + InputAndOutputWithHeadersRequest request; + request.SetHeaderFloat(std::numeric_limits::quiet_NaN()); + request.SetHeaderDouble(std::numeric_limits::quiet_NaN()); + + auto outcome = client.InputAndOutputWithHeaders(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, RestJsonSupportsInfinityFloatHeaderInputs) { + RestJsonProtocolClient client; + InputAndOutputWithHeadersRequest request; + request.SetHeaderFloat(std::numeric_limits::infinity()); + request.SetHeaderDouble(std::numeric_limits::infinity()); + + auto outcome = client.InputAndOutputWithHeaders(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, RestJsonSupportsNegativeInfinityFloatHeaderInputs) { + RestJsonProtocolClient client; + InputAndOutputWithHeadersRequest request; + request.SetHeaderFloat(-std::numeric_limits::infinity()); + request.SetHeaderDouble(-std::numeric_limits::infinity()); + + auto outcome = client.InputAndOutputWithHeaders(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/JsonBlobsTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/JsonBlobsTest.cpp new file mode 100644 index 00000000000..50c51a1ef51 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/JsonBlobsTest.cpp @@ -0,0 +1,21 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using JsonBlobs = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(JsonBlobs, RestJsonJsonBlobs) { + RestJsonProtocolClient client; + JsonBlobsRequest request; + request.SetData(R"(value)"); + + auto outcome = client.JsonBlobs(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/JsonEnumsTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/JsonEnumsTest.cpp new file mode 100644 index 00000000000..f12927c5c89 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/JsonEnumsTest.cpp @@ -0,0 +1,26 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using JsonEnums = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(JsonEnums, RestJsonJsonEnums) { + RestJsonProtocolClient client; + JsonEnumsRequest request; + request.SetFooEnum1(FooEnumMapper::GetFooEnumForName(R"e(Foo)e")); + request.SetFooEnum2(FooEnumMapper::GetFooEnumForName(R"e(0)e")); + request.SetFooEnum3(FooEnumMapper::GetFooEnumForName(R"e(1)e")); + request.SetFooEnumList({FooEnumMapper::GetFooEnumForName(R"e(Foo)e"), FooEnumMapper::GetFooEnumForName(R"e(0)e")}); + request.SetFooEnumSet({FooEnumMapper::GetFooEnumForName(R"e(Foo)e"), FooEnumMapper::GetFooEnumForName(R"e(0)e")}); + request.SetFooEnumMap({{"hi", FooEnumMapper::GetFooEnumForName(R"e(Foo)e")}, {"zero", FooEnumMapper::GetFooEnumForName(R"e(0)e")}}); + + auto outcome = client.JsonEnums(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/JsonIntEnumsTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/JsonIntEnumsTest.cpp new file mode 100644 index 00000000000..52212108a19 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/JsonIntEnumsTest.cpp @@ -0,0 +1,26 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using JsonIntEnums = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(JsonIntEnums, RestJsonJsonIntEnums) { + RestJsonProtocolClient client; + JsonIntEnumsRequest request; + request.SetIntegerEnum1(1); + request.SetIntegerEnum2(2); + request.SetIntegerEnum3(3); + request.SetIntegerEnumList({1, 2, 3}); + request.SetIntegerEnumSet({1, 2}); + request.SetIntegerEnumMap({{"abc", 1}, {"def", 2}}); + + auto outcome = client.JsonIntEnums(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/JsonListsTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/JsonListsTest.cpp new file mode 100644 index 00000000000..ccd7ed6b924 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/JsonListsTest.cpp @@ -0,0 +1,60 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using JsonLists = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(JsonLists, RestJsonLists) { + RestJsonProtocolClient client; + JsonListsRequest request; + request.SetStringList({R"(foo)", R"(bar)"}); + request.SetStringSet({R"(foo)", R"(bar)"}); + request.SetIntegerList({1, 2}); + request.SetBooleanList({true, false}); + request.SetTimestampList({Aws::Utils::DateTime(1398796238), Aws::Utils::DateTime(1398796238)}); + request.SetEnumList({FooEnumMapper::GetFooEnumForName(R"e(Foo)e"), FooEnumMapper::GetFooEnumForName(R"e(0)e")}); + request.SetIntEnumList({1, 2}); + { + Aws::Vector requestNestedStringListItem; + requestNestedStringListItem.emplace_back(R"(foo)"); + requestNestedStringListItem.emplace_back(R"(bar)"); + request.AddNestedStringList(requestNestedStringListItem); + } + { + Aws::Vector requestNestedStringListItem; + requestNestedStringListItem.emplace_back(R"(baz)"); + requestNestedStringListItem.emplace_back(R"(qux)"); + request.AddNestedStringList(requestNestedStringListItem); + } + { + StructureListMember requestStructureListItem; + requestStructureListItem.SetA(R"(1)"); + requestStructureListItem.SetB(R"(2)"); + request.AddStructureList(requestStructureListItem); + } + { + StructureListMember requestStructureListItem; + requestStructureListItem.SetA(R"(3)"); + requestStructureListItem.SetB(R"(4)"); + request.AddStructureList(requestStructureListItem); + } + + auto outcome = client.JsonLists(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonLists, RestJsonListsEmpty) { + RestJsonProtocolClient client; + JsonListsRequest request; + request.SetStringList({}); + + auto outcome = client.JsonLists(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/JsonMapsTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/JsonMapsTest.cpp new file mode 100644 index 00000000000..dd6672e9fca --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/JsonMapsTest.cpp @@ -0,0 +1,49 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using JsonMaps = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(JsonMaps, RestJsonJsonMaps) { + RestJsonProtocolClient client; + JsonMapsRequest request; + { + GreetingStruct requestDenseStructMapItem; + requestDenseStructMapItem.SetHi(R"(there)"); + request.AddDenseStructMap("foo", requestDenseStructMapItem); + } + { + GreetingStruct requestDenseStructMapItem; + requestDenseStructMapItem.SetHi(R"(bye)"); + request.AddDenseStructMap("baz", requestDenseStructMapItem); + } + + auto outcome = client.JsonMaps(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonMaps, RestJsonSerializesZeroValuesInMaps) { + RestJsonProtocolClient client; + JsonMapsRequest request; + request.SetDenseNumberMap({{"x", 0}}); + request.SetDenseBooleanMap({{"x", false}}); + + auto outcome = client.JsonMaps(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonMaps, RestJsonSerializesDenseSetMap) { + RestJsonProtocolClient client; + JsonMapsRequest request; + request.SetDenseSetMap({{"x", {}}, {"y", {R"(a)", R"(b)"}}}); + + auto outcome = client.JsonMaps(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/JsonTimestampsTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/JsonTimestampsTest.cpp new file mode 100644 index 00000000000..389d1936e6a --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/JsonTimestampsTest.cpp @@ -0,0 +1,75 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using JsonTimestamps = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(JsonTimestamps, RestJsonJsonTimestamps) { + RestJsonProtocolClient client; + JsonTimestampsRequest request; + request.SetNormal(Aws::Utils::DateTime(1398796238)); + + auto outcome = client.JsonTimestamps(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonTimestamps, RestJsonJsonTimestampsWithDateTimeFormat) { + RestJsonProtocolClient client; + JsonTimestampsRequest request; + request.SetDateTime(Aws::Utils::DateTime(1398796238)); + + auto outcome = client.JsonTimestamps(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonTimestamps, RestJsonJsonTimestampsWithDateTimeOnTargetFormat) { + RestJsonProtocolClient client; + JsonTimestampsRequest request; + request.SetDateTimeOnTarget(Aws::Utils::DateTime(1398796238)); + + auto outcome = client.JsonTimestamps(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonTimestamps, RestJsonJsonTimestampsWithEpochSecondsFormat) { + RestJsonProtocolClient client; + JsonTimestampsRequest request; + request.SetEpochSeconds(Aws::Utils::DateTime(1398796238)); + + auto outcome = client.JsonTimestamps(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonTimestamps, RestJsonJsonTimestampsWithEpochSecondsOnTargetFormat) { + RestJsonProtocolClient client; + JsonTimestampsRequest request; + request.SetEpochSecondsOnTarget(Aws::Utils::DateTime(1398796238)); + + auto outcome = client.JsonTimestamps(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonTimestamps, RestJsonJsonTimestampsWithHttpDateFormat) { + RestJsonProtocolClient client; + JsonTimestampsRequest request; + request.SetHttpDate(Aws::Utils::DateTime(1398796238)); + + auto outcome = client.JsonTimestamps(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonTimestamps, RestJsonJsonTimestampsWithHttpDateOnTargetFormat) { + RestJsonProtocolClient client; + JsonTimestampsRequest request; + request.SetHttpDateOnTarget(Aws::Utils::DateTime(1398796238)); + + auto outcome = client.JsonTimestamps(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/JsonUnionsTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/JsonUnionsTest.cpp new file mode 100644 index 00000000000..bfc4950bf60 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/JsonUnionsTest.cpp @@ -0,0 +1,150 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using JsonUnions = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(JsonUnions, RestJsonSerializeStringUnionValue) { + RestJsonProtocolClient client; + JsonUnionsRequest request; + { + MyUnion requestContents; + requestContents.SetStringValue(R"(foo)"); + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonUnions, RestJsonSerializeBooleanUnionValue) { + RestJsonProtocolClient client; + JsonUnionsRequest request; + { + MyUnion requestContents; + requestContents.SetBooleanValue(true); + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonUnions, RestJsonSerializeNumberUnionValue) { + RestJsonProtocolClient client; + JsonUnionsRequest request; + { + MyUnion requestContents; + requestContents.SetNumberValue(1); + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonUnions, RestJsonSerializeBlobUnionValue) { + RestJsonProtocolClient client; + JsonUnionsRequest request; + { + MyUnion requestContents; + requestContents.SetBlobValue(R"(foo)"); + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonUnions, RestJsonSerializeTimestampUnionValue) { + RestJsonProtocolClient client; + JsonUnionsRequest request; + { + MyUnion requestContents; + requestContents.SetTimestampValue(Aws::Utils::DateTime(1398796238)); + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonUnions, RestJsonSerializeEnumUnionValue) { + RestJsonProtocolClient client; + JsonUnionsRequest request; + { + MyUnion requestContents; + requestContents.SetEnumValue(FooEnumMapper::GetFooEnumForName(R"e(Foo)e")); + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonUnions, RestJsonSerializeListUnionValue) { + RestJsonProtocolClient client; + JsonUnionsRequest request; + { + MyUnion requestContents; + requestContents.SetListValue({R"(foo)", R"(bar)"}); + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonUnions, RestJsonSerializeMapUnionValue) { + RestJsonProtocolClient client; + JsonUnionsRequest request; + { + MyUnion requestContents; + requestContents.SetMapValue({{"foo", R"(bar)"}, {"spam", R"(eggs)"}}); + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonUnions, RestJsonSerializeStructureUnionValue) { + RestJsonProtocolClient client; + JsonUnionsRequest request; + { + MyUnion requestContents; + { + GreetingStruct requestContentsStructureValue; + requestContentsStructureValue.SetHi(R"(hello)"); + requestContents.SetStructureValue(requestContentsStructureValue); + } + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(JsonUnions, RestJsonSerializeRenamedStructureUnionValue) { + RestJsonProtocolClient client; + JsonUnionsRequest request; + { + MyUnion requestContents; + { + RenamedGreeting requestContentsRenamedStructureValue; + requestContentsRenamedStructureValue.SetSalutation(R"(hello!)"); + requestContents.SetRenamedStructureValue(requestContentsRenamedStructureValue); + } + request.SetContents(requestContents); + } + + auto outcome = client.JsonUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/MediaTypeHeaderTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/MediaTypeHeaderTest.cpp new file mode 100644 index 00000000000..b3192437c46 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/MediaTypeHeaderTest.cpp @@ -0,0 +1,21 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using MediaTypeHeader = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(MediaTypeHeader, MediaTypeHeaderInputBase64) { + RestJsonProtocolClient client; + MediaTypeHeaderRequest request; + request.SetJson(R"(true)"); + + auto outcome = client.MediaTypeHeader(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/NoInputAndNoOutputTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/NoInputAndNoOutputTest.cpp new file mode 100644 index 00000000000..e7e51958644 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/NoInputAndNoOutputTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using NoInputAndNoOutput = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(NoInputAndNoOutput, RestJsonNoInputAndNoOutput) { + RestJsonProtocolClient client; + NoInputAndNoOutputRequest request; + + auto outcome = client.NoInputAndNoOutput(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/NoInputAndOutputTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/NoInputAndOutputTest.cpp new file mode 100644 index 00000000000..d05f92b87e3 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/NoInputAndOutputTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using NoInputAndOutput = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(NoInputAndOutput, RestJsonNoInputAndOutput) { + RestJsonProtocolClient client; + NoInputAndOutputRequest request; + + auto outcome = client.NoInputAndOutput(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/NullAndEmptyHeadersClientTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/NullAndEmptyHeadersClientTest.cpp new file mode 100644 index 00000000000..46394629500 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/NullAndEmptyHeadersClientTest.cpp @@ -0,0 +1,23 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using NullAndEmptyHeadersClient = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(NullAndEmptyHeadersClient, RestJsonNullAndEmptyHeaders) { + RestJsonProtocolClient client; + NullAndEmptyHeadersClientRequest request; + request.SetA(R"(null)"); + request.SetB(R"()"); + request.SetC({}); + + auto outcome = client.NullAndEmptyHeadersClient(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/OmitsNullSerializesEmptyStringTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/OmitsNullSerializesEmptyStringTest.cpp new file mode 100644 index 00000000000..48f59982bd3 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/OmitsNullSerializesEmptyStringTest.cpp @@ -0,0 +1,30 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using OmitsNullSerializesEmptyString = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(OmitsNullSerializesEmptyString, RestJsonOmitsNullQuery) { + RestJsonProtocolClient client; + OmitsNullSerializesEmptyStringRequest request; + request.SetNullValue(R"(null)"); + + auto outcome = client.OmitsNullSerializesEmptyString(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(OmitsNullSerializesEmptyString, RestJsonSerializesEmptyQueryValue) { + RestJsonProtocolClient client; + OmitsNullSerializesEmptyStringRequest request; + request.SetEmptyString(R"()"); + + auto outcome = client.OmitsNullSerializesEmptyString(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/OmitsSerializingEmptyListsTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/OmitsSerializingEmptyListsTest.cpp new file mode 100644 index 00000000000..782fee1e610 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/OmitsSerializingEmptyListsTest.cpp @@ -0,0 +1,27 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using OmitsSerializingEmptyLists = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(OmitsSerializingEmptyLists, RestJsonOmitsEmptyListQueryValues) { + RestJsonProtocolClient client; + OmitsSerializingEmptyListsRequest request; + request.SetQueryStringList({}); + request.SetQueryIntegerList({}); + request.SetQueryDoubleList({}); + request.SetQueryBooleanList({}); + request.SetQueryTimestampList({}); + request.SetQueryEnumList({}); + request.SetQueryIntegerEnumList({}); + + auto outcome = client.OmitsSerializingEmptyLists(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/PostUnionWithJsonNameTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/PostUnionWithJsonNameTest.cpp new file mode 100644 index 00000000000..07b4f7a459f --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/PostUnionWithJsonNameTest.cpp @@ -0,0 +1,51 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using PostUnionWithJsonName = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(PostUnionWithJsonName, PostUnionWithJsonNameRequest1) { + RestJsonProtocolClient client; + PostUnionWithJsonNameRequest request; + { + UnionWithJsonName requestValue; + requestValue.SetFoo(R"(hi)"); + request.SetValue(requestValue); + } + + auto outcome = client.PostUnionWithJsonName(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(PostUnionWithJsonName, PostUnionWithJsonNameRequest2) { + RestJsonProtocolClient client; + PostUnionWithJsonNameRequest request; + { + UnionWithJsonName requestValue; + requestValue.SetBaz(R"(hi)"); + request.SetValue(requestValue); + } + + auto outcome = client.PostUnionWithJsonName(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(PostUnionWithJsonName, PostUnionWithJsonNameRequest3) { + RestJsonProtocolClient client; + PostUnionWithJsonNameRequest request; + { + UnionWithJsonName requestValue; + requestValue.SetBar(R"(hi)"); + request.SetValue(requestValue); + } + + auto outcome = client.PostUnionWithJsonName(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/PutWithContentEncodingTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/PutWithContentEncodingTest.cpp new file mode 100644 index 00000000000..7e9b40ffeb9 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/PutWithContentEncodingTest.cpp @@ -0,0 +1,287 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using PutWithContentEncoding = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(PutWithContentEncoding, SDKAppliedContentEncoding_restJson1) { + RestJsonProtocolClient client; + PutWithContentEncodingRequest request; + request.SetData(R"(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 +)"); + + auto outcome = client.PutWithContentEncoding(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(PutWithContentEncoding, SDKAppendedGzipAfterProvidedEncoding_restJson1) { + RestJsonProtocolClient client; + PutWithContentEncodingRequest request; + request.SetEncoding(R"(custom)"); + request.SetData(R"(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 +)"); + + auto outcome = client.PutWithContentEncoding(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/QueryIdempotencyTokenAutoFillTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/QueryIdempotencyTokenAutoFillTest.cpp new file mode 100644 index 00000000000..9a06dd81efa --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/QueryIdempotencyTokenAutoFillTest.cpp @@ -0,0 +1,29 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using QueryIdempotencyTokenAutoFill = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(QueryIdempotencyTokenAutoFill, RestJsonQueryIdempotencyTokenAutoFill) { + RestJsonProtocolClient client; + QueryIdempotencyTokenAutoFillRequest request; + + auto outcome = client.QueryIdempotencyTokenAutoFill(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(QueryIdempotencyTokenAutoFill, RestJsonQueryIdempotencyTokenAutoFillIsSet) { + RestJsonProtocolClient client; + QueryIdempotencyTokenAutoFillRequest request; + request.SetToken(R"(00000000-0000-4000-8000-000000000000)"); + + auto outcome = client.QueryIdempotencyTokenAutoFill(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/QueryParamsAsStringListMapTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/QueryParamsAsStringListMapTest.cpp new file mode 100644 index 00000000000..72d0c566910 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/QueryParamsAsStringListMapTest.cpp @@ -0,0 +1,22 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using QueryParamsAsStringListMap = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(QueryParamsAsStringListMap, RestJsonQueryParamsStringListMap) { + RestJsonProtocolClient client; + QueryParamsAsStringListMapRequest request; + request.SetQux(R"(named)"); + request.SetFoo({{"baz", {R"(bar)", R"(qux)"}}}); + + auto outcome = client.QueryParamsAsStringListMap(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/QueryPrecedenceTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/QueryPrecedenceTest.cpp new file mode 100644 index 00000000000..0c4b24005ef --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/QueryPrecedenceTest.cpp @@ -0,0 +1,22 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using QueryPrecedence = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(QueryPrecedence, RestJsonQueryPrecedence) { + RestJsonProtocolClient client; + QueryPrecedenceRequest request; + request.SetFoo(R"(named)"); + request.SetBaz({{"bar", R"(fromMap)"}, {"qux", R"(alsoFromMap)"}}); + + auto outcome = client.QueryPrecedence(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/RecursiveShapesTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/RecursiveShapesTest.cpp new file mode 100644 index 00000000000..cb5ad55409a --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/RecursiveShapesTest.cpp @@ -0,0 +1,40 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using RecursiveShapes = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(RecursiveShapes, RestJsonRecursiveShapes) { + RestJsonProtocolClient client; + RecursiveShapesRequest request; + { + RecursiveShapesInputOutputNested1 requestNested; + requestNested.SetFoo(R"(Foo1)"); + { + RecursiveShapesInputOutputNested2 requestNestedNested; + requestNestedNested.SetBar(R"(Bar1)"); + { + RecursiveShapesInputOutputNested1 requestNestedNestedRecursiveMember; + requestNestedNestedRecursiveMember.SetFoo(R"(Foo2)"); + { + RecursiveShapesInputOutputNested2 requestNestedNestedRecursiveMemberNested; + requestNestedNestedRecursiveMemberNested.SetBar(R"(Bar2)"); + requestNestedNestedRecursiveMember.SetNested(requestNestedNestedRecursiveMemberNested); + } + requestNestedNested.SetRecursiveMember(requestNestedNestedRecursiveMember); + } + requestNested.SetNested(requestNestedNested); + } + request.SetNested(requestNested); + } + + auto outcome = client.RecursiveShapes(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/SimpleScalarPropertiesTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/SimpleScalarPropertiesTest.cpp new file mode 100644 index 00000000000..97266dfc7e8 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/SimpleScalarPropertiesTest.cpp @@ -0,0 +1,69 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using SimpleScalarProperties = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(SimpleScalarProperties, RestJsonSimpleScalarProperties) { + RestJsonProtocolClient client; + SimpleScalarPropertiesRequest request; + request.SetFoo(R"(Foo)"); + request.SetStringValue(R"(string)"); + request.SetTrueBooleanValue(true); + request.SetFalseBooleanValue(false); + request.SetByteValue(1); + request.SetShortValue(2); + request.SetIntegerValue(3); + request.SetLongValue(4); + request.SetFloatValue(5.5); + request.SetDoubleValue(6.5); + + auto outcome = client.SimpleScalarProperties(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, RestJsonDoesntSerializeNullStructureValues) { + RestJsonProtocolClient client; + SimpleScalarPropertiesRequest request; + request.SetStringValue(R"(null)"); + + auto outcome = client.SimpleScalarProperties(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, RestJsonSupportsNaNFloatInputs) { + RestJsonProtocolClient client; + SimpleScalarPropertiesRequest request; + request.SetFloatValue(std::numeric_limits::quiet_NaN()); + request.SetDoubleValue(std::numeric_limits::quiet_NaN()); + + auto outcome = client.SimpleScalarProperties(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, RestJsonSupportsInfinityFloatInputs) { + RestJsonProtocolClient client; + SimpleScalarPropertiesRequest request; + request.SetFloatValue(std::numeric_limits::infinity()); + request.SetDoubleValue(std::numeric_limits::infinity()); + + auto outcome = client.SimpleScalarProperties(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, RestJsonSupportsNegativeInfinityFloatInputs) { + RestJsonProtocolClient client; + SimpleScalarPropertiesRequest request; + request.SetFloatValue(-std::numeric_limits::infinity()); + request.SetDoubleValue(-std::numeric_limits::infinity()); + + auto outcome = client.SimpleScalarProperties(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/TestBodyStructureTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/TestBodyStructureTest.cpp new file mode 100644 index 00000000000..b43af9ab8f6 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/TestBodyStructureTest.cpp @@ -0,0 +1,33 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using TestBodyStructure = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(TestBodyStructure, RestJsonTestBodyStructure) { + RestJsonProtocolClient client; + TestBodyStructureRequest request; + { + TestConfig requestTestConfig; + requestTestConfig.SetTimeout(10); + request.SetTestConfig(requestTestConfig); + } + + auto outcome = client.TestBodyStructure(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(TestBodyStructure, RestJsonHttpWithEmptyBody) { + RestJsonProtocolClient client; + TestBodyStructureRequest request; + + auto outcome = client.TestBodyStructure(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/TestGetNoInputNoPayloadTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/TestGetNoInputNoPayloadTest.cpp new file mode 100644 index 00000000000..3ff79c0e4ca --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/TestGetNoInputNoPayloadTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using TestGetNoInputNoPayload = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(TestGetNoInputNoPayload, RestJsonHttpGetWithNoInput) { + RestJsonProtocolClient client; + TestGetNoInputNoPayloadRequest request; + + auto outcome = client.TestGetNoInputNoPayload(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/TestGetNoPayloadTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/TestGetNoPayloadTest.cpp new file mode 100644 index 00000000000..d009e475a07 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/TestGetNoPayloadTest.cpp @@ -0,0 +1,29 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using TestGetNoPayload = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(TestGetNoPayload, RestJsonHttpGetWithNoModeledBody) { + RestJsonProtocolClient client; + TestGetNoPayloadRequest request; + + auto outcome = client.TestGetNoPayload(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(TestGetNoPayload, RestJsonHttpGetWithHeaderMemberNoModeledBody) { + RestJsonProtocolClient client; + TestGetNoPayloadRequest request; + request.SetTestId(R"(t-12345)"); + + auto outcome = client.TestGetNoPayload(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/TestPayloadBlobTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/TestPayloadBlobTest.cpp new file mode 100644 index 00000000000..4ad4bddc9cb --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/TestPayloadBlobTest.cpp @@ -0,0 +1,30 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using TestPayloadBlob = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(TestPayloadBlob, RestJsonHttpWithEmptyBlobPayload) { + RestJsonProtocolClient client; + TestPayloadBlobRequest request; + + auto outcome = client.TestPayloadBlob(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(TestPayloadBlob, RestJsonTestPayloadBlob) { + RestJsonProtocolClient client; + TestPayloadBlobRequest request; + request.SetContentType("image/jpg"); + request.SetBody([](){ return Aws::MakeShared("Test", R"(1234)", std::ios_base::in | std::ios_base::binary); }() ); + + auto outcome = client.TestPayloadBlob(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/TestPayloadStructureTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/TestPayloadStructureTest.cpp new file mode 100644 index 00000000000..9729418b0ad --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/TestPayloadStructureTest.cpp @@ -0,0 +1,42 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using TestPayloadStructure = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(TestPayloadStructure, RestJsonHttpWithEmptyStructurePayload) { + RestJsonProtocolClient client; + TestPayloadStructureRequest request; + + auto outcome = client.TestPayloadStructure(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(TestPayloadStructure, RestJsonTestPayloadStructure) { + RestJsonProtocolClient client; + TestPayloadStructureRequest request; + { + PayloadConfig requestPayloadConfig; + requestPayloadConfig.SetData(25); + request.SetPayloadConfig(requestPayloadConfig); + } + + auto outcome = client.TestPayloadStructure(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(TestPayloadStructure, RestJsonHttpWithHeadersButNoPayload) { + RestJsonProtocolClient client; + TestPayloadStructureRequest request; + request.SetTestId(R"(t-12345)"); + + auto outcome = client.TestPayloadStructure(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/TestPostNoInputNoPayloadTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/TestPostNoInputNoPayloadTest.cpp new file mode 100644 index 00000000000..27bfa26caf4 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/TestPostNoInputNoPayloadTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using TestPostNoInputNoPayload = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(TestPostNoInputNoPayload, RestJsonHttpPostWithNoInput) { + RestJsonProtocolClient client; + TestPostNoInputNoPayloadRequest request; + + auto outcome = client.TestPostNoInputNoPayload(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/TestPostNoPayloadTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/TestPostNoPayloadTest.cpp new file mode 100644 index 00000000000..4209499184f --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/TestPostNoPayloadTest.cpp @@ -0,0 +1,29 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using TestPostNoPayload = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(TestPostNoPayload, RestJsonHttpPostWithNoModeledBody) { + RestJsonProtocolClient client; + TestPostNoPayloadRequest request; + + auto outcome = client.TestPostNoPayload(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(TestPostNoPayload, RestJsonHttpWithPostHeaderMemberNoModeledBody) { + RestJsonProtocolClient client; + TestPostNoPayloadRequest request; + request.SetTestId(R"(t-12345)"); + + auto outcome = client.TestPostNoPayload(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/TimestampFormatHeadersTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/TimestampFormatHeadersTest.cpp new file mode 100644 index 00000000000..94d45a3f26c --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/TimestampFormatHeadersTest.cpp @@ -0,0 +1,27 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using TimestampFormatHeaders = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(TimestampFormatHeaders, RestJsonTimestampFormatHeaders) { + RestJsonProtocolClient client; + TimestampFormatHeadersRequest request; + request.SetMemberEpochSeconds(Aws::Utils::DateTime(1576540098)); + request.SetMemberHttpDate(Aws::Utils::DateTime(1576540098)); + request.SetMemberDateTime(Aws::Utils::DateTime(1576540098)); + request.SetDefaultFormat(Aws::Utils::DateTime(1576540098)); + request.SetTargetEpochSeconds(Aws::Utils::DateTime(1576540098)); + request.SetTargetHttpDate(Aws::Utils::DateTime(1576540098)); + request.SetTargetDateTime(Aws::Utils::DateTime(1576540098)); + + auto outcome = client.TimestampFormatHeaders(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-json/tests/UnitInputAndOutputTest.cpp b/generated/protocol-tests/tests/input/rest-json/tests/UnitInputAndOutputTest.cpp new file mode 100644 index 00000000000..02491d19c78 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-json/tests/UnitInputAndOutputTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using UnitInputAndOutput = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(UnitInputAndOutput, RestJsonUnitInputAndOutput) { + RestJsonProtocolClient client; + UnitInputAndOutputRequest request; + + auto outcome = client.UnitInputAndOutput(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml-1/CMakeLists.txt b/generated/protocol-tests/tests/input/rest-xml-1/CMakeLists.txt deleted file mode 100644 index f6db3659c8c..00000000000 --- a/generated/protocol-tests/tests/input/rest-xml-1/CMakeLists.txt +++ /dev/null @@ -1,42 +0,0 @@ -add_project(rest-xml-1-input-protocol-tests - "Tests for the protocol rest-xml of AWS C++ SDK" - testing-resources - aws-cpp-sdk-rest-xml-protocol-namespace - aws-cpp-sdk-core) - -file(GLOB AWS_REST_XML_1_INPUT_PROTOCOL_TESTS_SRC - "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp" -) - -if(MSVC AND BUILD_SHARED_LIBS) - add_definitions(-DGTEST_LINKED_AS_SHARED_LIBRARY=1) -endif() - -if (CMAKE_CROSSCOMPILING) - set(AUTORUN_UNIT_TESTS OFF) -endif() - -if (AUTORUN_UNIT_TESTS) - enable_testing() -endif() - -if(PLATFORM_ANDROID AND BUILD_SHARED_LIBS) - add_library(${PROJECT_NAME} "${AWS_REST_XML_1_INPUT_PROTOCOL_TESTS_SRC}") -else() - add_executable(${PROJECT_NAME} "${AWS_REST_XML_1_INPUT_PROTOCOL_TESTS_SRC}") -endif() - -set_compiler_flags(${PROJECT_NAME}) -set_compiler_warnings(${PROJECT_NAME}) - -target_link_libraries(${PROJECT_NAME} ${PROJECT_LIBS}) - -if (AUTORUN_UNIT_TESTS) - ADD_CUSTOM_COMMAND( TARGET ${PROJECT_NAME} POST_BUILD - COMMAND ${CMAKE_COMMAND} -E env LD_LIBRARY_PATH=${AWS_AUTORUN_LD_LIBRARY_PATH}:$ENV{LD_LIBRARY_PATH} $ - ARGS "--gtest_brief=1") -endif() - -if(NOT CMAKE_CROSSCOMPILING) - SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES OUTPUT_NAME ${PROJECT_NAME}) -endif() \ No newline at end of file diff --git a/generated/protocol-tests/tests/input/rest-xml-1/RunTests.cpp b/generated/protocol-tests/tests/input/rest-xml-1/RunTests.cpp deleted file mode 100644 index f2f10a7c789..00000000000 --- a/generated/protocol-tests/tests/input/rest-xml-1/RunTests.cpp +++ /dev/null @@ -1,29 +0,0 @@ -/** - * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. - * SPDX-License-Identifier: Apache-2.0. - */ - -#include -#include -#include -#include -#include - -int main(int argc, char** argv) -{ - Aws::SDKOptions options; - options.loggingOptions.logLevel = Aws::Utils::Logging::LogLevel::Trace; - - AWS_BEGIN_MEMORY_TEST_EX(options, 1024, 128); - Aws::Testing::InitPlatformTest(options); - Aws::Testing::ParseArgs(argc, argv); - - Aws::InitAPI(options); - ::testing::InitGoogleTest(&argc, argv); - int exitCode = RUN_ALL_TESTS(); - Aws::ShutdownAPI(options); - - AWS_END_MEMORY_TEST_EX; - Aws::Testing::ShutdownPlatformTest(options); - return exitCode; -} diff --git a/generated/protocol-tests/tests/input/rest-xml/CMakeLists.txt b/generated/protocol-tests/tests/input/rest-xml/CMakeLists.txt index 48f1335e39c..2ec6867b34d 100644 --- a/generated/protocol-tests/tests/input/rest-xml/CMakeLists.txt +++ b/generated/protocol-tests/tests/input/rest-xml/CMakeLists.txt @@ -6,6 +6,7 @@ add_project(rest-xml-input-protocol-tests file(GLOB AWS_REST_XML_INPUT_PROTOCOL_TESTS_SRC "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp" + "${CMAKE_CURRENT_SOURCE_DIR}/tests/*.cpp" ) if(MSVC AND BUILD_SHARED_LIBS) diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/AllQueryStringTypesTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/AllQueryStringTypesTest.cpp new file mode 100644 index 00000000000..acd08dbdd22 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/AllQueryStringTypesTest.cpp @@ -0,0 +1,98 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using AllQueryStringTypes = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(AllQueryStringTypes, AllQueryStringTypes) { + RestXmlProtocolClient client; + AllQueryStringTypesRequest request; + request.SetQueryString(R"(Hello there)"); + request.SetQueryStringList({R"(a)", R"(b)", R"(c)"}); + request.SetQueryStringSet({R"(a)", R"(b)", R"(c)"}); + request.SetQueryByte(1); + request.SetQueryShort(2); + request.SetQueryInteger(3); + request.SetQueryIntegerList({1, 2, 3}); + request.SetQueryIntegerSet({1, 2, 3}); + request.SetQueryLong(4); + request.SetQueryFloat(1.1); + request.SetQueryDouble(1.1); + request.SetQueryDoubleList({1.1, 2.1, 3.1}); + request.SetQueryBoolean(true); + request.SetQueryBooleanList({true, false, true}); + request.SetQueryTimestamp(Aws::Utils::DateTime(1)); + request.SetQueryTimestampList({Aws::Utils::DateTime(1), Aws::Utils::DateTime(2), Aws::Utils::DateTime(3)}); + request.SetQueryEnum(FooEnumMapper::GetFooEnumForName(R"e(Foo)e")); + request.SetQueryEnumList({FooEnumMapper::GetFooEnumForName(R"e(Foo)e"), FooEnumMapper::GetFooEnumForName(R"e(Baz)e"), FooEnumMapper::GetFooEnumForName(R"e(Bar)e")}); + request.SetQueryIntegerEnum(1); + request.SetQueryIntegerEnumList({1, 2}); + + auto outcome = client.AllQueryStringTypes(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(AllQueryStringTypes, RestXmlQueryStringMap) { + RestXmlProtocolClient client; + AllQueryStringTypesRequest request; + request.SetQueryParamsMapOfStrings({{"QueryParamsStringKeyA", R"(Foo)"}, {"QueryParamsStringKeyB", R"(Bar)"}}); + + auto outcome = client.AllQueryStringTypes(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(AllQueryStringTypes, RestXmlQueryStringEscaping) { + RestXmlProtocolClient client; + AllQueryStringTypesRequest request; + request.SetQueryString(R"( %:/?#[]@!$&'()*+,;=😹)"); + + auto outcome = client.AllQueryStringTypes(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(AllQueryStringTypes, RestXmlSupportsNaNFloatQueryValues) { + RestXmlProtocolClient client; + AllQueryStringTypesRequest request; + request.SetQueryFloat(std::numeric_limits::quiet_NaN()); + request.SetQueryDouble(std::numeric_limits::quiet_NaN()); + + auto outcome = client.AllQueryStringTypes(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(AllQueryStringTypes, RestXmlSupportsInfinityFloatQueryValues) { + RestXmlProtocolClient client; + AllQueryStringTypesRequest request; + request.SetQueryFloat(std::numeric_limits::infinity()); + request.SetQueryDouble(std::numeric_limits::infinity()); + + auto outcome = client.AllQueryStringTypes(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(AllQueryStringTypes, RestXmlSupportsNegativeInfinityFloatQueryValues) { + RestXmlProtocolClient client; + AllQueryStringTypesRequest request; + request.SetQueryFloat(-std::numeric_limits::infinity()); + request.SetQueryDouble(-std::numeric_limits::infinity()); + + auto outcome = client.AllQueryStringTypes(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(AllQueryStringTypes, RestXmlZeroAndFalseQueryValues) { + RestXmlProtocolClient client; + AllQueryStringTypesRequest request; + request.SetQueryInteger(0); + request.SetQueryBoolean(false); + + auto outcome = client.AllQueryStringTypes(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/BodyWithXmlNameTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/BodyWithXmlNameTest.cpp new file mode 100644 index 00000000000..8cb2521e01a --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/BodyWithXmlNameTest.cpp @@ -0,0 +1,25 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using BodyWithXmlName = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(BodyWithXmlName, BodyWithXmlName) { + RestXmlProtocolClient client; + BodyWithXmlNameRequest request; + { + PayloadWithXmlName requestNested; + requestNested.SetName(R"(Phreddy)"); + request.SetNested(requestNested); + } + + auto outcome = client.BodyWithXmlName(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/ConstantAndVariableQueryStringTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/ConstantAndVariableQueryStringTest.cpp new file mode 100644 index 00000000000..abb5cc0931b --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/ConstantAndVariableQueryStringTest.cpp @@ -0,0 +1,31 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using ConstantAndVariableQueryString = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(ConstantAndVariableQueryString, ConstantAndVariableQueryStringMissingOneValue) { + RestXmlProtocolClient client; + ConstantAndVariableQueryStringRequest request; + request.SetBaz(R"(bam)"); + + auto outcome = client.ConstantAndVariableQueryString(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(ConstantAndVariableQueryString, ConstantAndVariableQueryStringAllValues) { + RestXmlProtocolClient client; + ConstantAndVariableQueryStringRequest request; + request.SetBaz(R"(bam)"); + request.SetMaybeSet(R"(yes)"); + + auto outcome = client.ConstantAndVariableQueryString(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/ConstantQueryStringTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/ConstantQueryStringTest.cpp new file mode 100644 index 00000000000..7b0ef86f34e --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/ConstantQueryStringTest.cpp @@ -0,0 +1,21 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using ConstantQueryString = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(ConstantQueryString, ConstantQueryString) { + RestXmlProtocolClient client; + ConstantQueryStringRequest request; + request.SetHello(R"(hi)"); + + auto outcome = client.ConstantQueryString(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/EmptyInputAndEmptyOutputTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/EmptyInputAndEmptyOutputTest.cpp new file mode 100644 index 00000000000..2f81e6fd2d9 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/EmptyInputAndEmptyOutputTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using EmptyInputAndEmptyOutput = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(EmptyInputAndEmptyOutput, EmptyInputAndEmptyOutput) { + RestXmlProtocolClient client; + EmptyInputAndEmptyOutputRequest request; + + auto outcome = client.EmptyInputAndEmptyOutput(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/EndpointOperationTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/EndpointOperationTest.cpp new file mode 100644 index 00000000000..3843df829cf --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/EndpointOperationTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using EndpointOperation = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(EndpointOperation, RestXmlEndpointTrait) { + RestXmlProtocolClient client; + EndpointOperationRequest request; + + auto outcome = client.EndpointOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/EndpointWithHostLabelHeaderOperationTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/EndpointWithHostLabelHeaderOperationTest.cpp new file mode 100644 index 00000000000..1c0e8f2bbff --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/EndpointWithHostLabelHeaderOperationTest.cpp @@ -0,0 +1,21 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using EndpointWithHostLabelHeaderOperation = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(EndpointWithHostLabelHeaderOperation, RestXmlEndpointTraitWithHostLabelAndHttpBinding) { + RestXmlProtocolClient client; + EndpointWithHostLabelHeaderOperationRequest request; + request.SetAccountId(R"(bar)"); + + auto outcome = client.EndpointWithHostLabelHeaderOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/EndpointWithHostLabelOperationTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/EndpointWithHostLabelOperationTest.cpp new file mode 100644 index 00000000000..ff59c7afe5a --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/EndpointWithHostLabelOperationTest.cpp @@ -0,0 +1,21 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using EndpointWithHostLabelOperation = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(EndpointWithHostLabelOperation, RestXmlEndpointTraitWithHostLabel) { + RestXmlProtocolClient client; + EndpointWithHostLabelOperationRequest request; + request.SetLabel(R"(bar)"); + + auto outcome = client.EndpointWithHostLabelOperation(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/FlattenedXmlMapTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/FlattenedXmlMapTest.cpp new file mode 100644 index 00000000000..a7cd1b34cbf --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/FlattenedXmlMapTest.cpp @@ -0,0 +1,21 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using FlattenedXmlMap = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(FlattenedXmlMap, FlattenedXmlMap) { + RestXmlProtocolClient client; + FlattenedXmlMapRequest request; + request.SetMyMap({{"foo", FooEnumMapper::GetFooEnumForName(R"e(Foo)e")}, {"baz", FooEnumMapper::GetFooEnumForName(R"e(Baz)e")}}); + + auto outcome = client.FlattenedXmlMap(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/FlattenedXmlMapWithXmlNameTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/FlattenedXmlMapWithXmlNameTest.cpp new file mode 100644 index 00000000000..e8321d337d6 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/FlattenedXmlMapWithXmlNameTest.cpp @@ -0,0 +1,21 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using FlattenedXmlMapWithXmlName = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(FlattenedXmlMapWithXmlName, FlattenedXmlMapWithXmlName) { + RestXmlProtocolClient client; + FlattenedXmlMapWithXmlNameRequest request; + request.SetMyMap({{"a", R"(A)"}, {"b", R"(B)"}}); + + auto outcome = client.FlattenedXmlMapWithXmlName(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/HttpEnumPayloadTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/HttpEnumPayloadTest.cpp new file mode 100644 index 00000000000..b610314f42a --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/HttpEnumPayloadTest.cpp @@ -0,0 +1,21 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpEnumPayload = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(HttpEnumPayload, RestXmlEnumPayloadRequest) { + RestXmlProtocolClient client; + HttpEnumPayloadRequest request; + request.SetPayload(StringEnumMapper::GetStringEnumForName(R"e(enumvalue)e")); + + auto outcome = client.HttpEnumPayload(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/HttpPayloadTraitsTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/HttpPayloadTraitsTest.cpp new file mode 100644 index 00000000000..8ca326dd975 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/HttpPayloadTraitsTest.cpp @@ -0,0 +1,31 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpPayloadTraits = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(HttpPayloadTraits, HttpPayloadTraitsWithBlob) { + RestXmlProtocolClient client; + HttpPayloadTraitsRequest request; + request.SetFoo(R"(Foo)"); + request.SetBody([](){ return Aws::MakeShared("Test", R"(blobby blob blob)", std::ios_base::in | std::ios_base::binary); }() ); + + auto outcome = client.HttpPayloadTraits(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(HttpPayloadTraits, HttpPayloadTraitsWithNoBlobBody) { + RestXmlProtocolClient client; + HttpPayloadTraitsRequest request; + request.SetFoo(R"(Foo)"); + + auto outcome = client.HttpPayloadTraits(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/HttpPayloadWithMemberXmlNameTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/HttpPayloadWithMemberXmlNameTest.cpp new file mode 100644 index 00000000000..6b01ca1bf17 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/HttpPayloadWithMemberXmlNameTest.cpp @@ -0,0 +1,25 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpPayloadWithMemberXmlName = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(HttpPayloadWithMemberXmlName, HttpPayloadWithMemberXmlName) { + RestXmlProtocolClient client; + HttpPayloadWithMemberXmlNameRequest request; + { + PayloadWithXmlName requestNested; + requestNested.SetName(R"(Phreddy)"); + request.SetNested(requestNested); + } + + auto outcome = client.HttpPayloadWithMemberXmlName(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/HttpPayloadWithStructureTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/HttpPayloadWithStructureTest.cpp new file mode 100644 index 00000000000..7a3bec24f54 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/HttpPayloadWithStructureTest.cpp @@ -0,0 +1,26 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpPayloadWithStructure = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(HttpPayloadWithStructure, HttpPayloadWithStructure) { + RestXmlProtocolClient client; + HttpPayloadWithStructureRequest request; + { + NestedPayload requestNested; + requestNested.SetGreeting(R"(hello)"); + requestNested.SetName(R"(Phreddy)"); + request.SetNested(requestNested); + } + + auto outcome = client.HttpPayloadWithStructure(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/HttpPayloadWithUnionTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/HttpPayloadWithUnionTest.cpp new file mode 100644 index 00000000000..300dbb1c9f3 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/HttpPayloadWithUnionTest.cpp @@ -0,0 +1,33 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpPayloadWithUnion = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(HttpPayloadWithUnion, RestXmlHttpPayloadWithUnion) { + RestXmlProtocolClient client; + HttpPayloadWithUnionRequest request; + { + UnionPayload requestNested; + requestNested.SetGreeting(R"(hello)"); + request.SetNested(requestNested); + } + + auto outcome = client.HttpPayloadWithUnion(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(HttpPayloadWithUnion, RestXmlHttpPayloadWithUnsetUnion) { + RestXmlProtocolClient client; + HttpPayloadWithUnionRequest request; + + auto outcome = client.HttpPayloadWithUnion(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/HttpPayloadWithXmlNameTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/HttpPayloadWithXmlNameTest.cpp new file mode 100644 index 00000000000..d8a54ad80f5 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/HttpPayloadWithXmlNameTest.cpp @@ -0,0 +1,25 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpPayloadWithXmlName = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(HttpPayloadWithXmlName, HttpPayloadWithXmlName) { + RestXmlProtocolClient client; + HttpPayloadWithXmlNameRequest request; + { + PayloadWithXmlName requestNested; + requestNested.SetName(R"(Phreddy)"); + request.SetNested(requestNested); + } + + auto outcome = client.HttpPayloadWithXmlName(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/HttpPayloadWithXmlNamespaceAndPrefixTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/HttpPayloadWithXmlNamespaceAndPrefixTest.cpp new file mode 100644 index 00000000000..e52588e93fa --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/HttpPayloadWithXmlNamespaceAndPrefixTest.cpp @@ -0,0 +1,25 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpPayloadWithXmlNamespaceAndPrefix = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(HttpPayloadWithXmlNamespaceAndPrefix, HttpPayloadWithXmlNamespaceAndPrefix) { + RestXmlProtocolClient client; + HttpPayloadWithXmlNamespaceAndPrefixRequest request; + { + PayloadWithXmlNamespaceAndPrefix requestNested; + requestNested.SetName(R"(Phreddy)"); + request.SetNested(requestNested); + } + + auto outcome = client.HttpPayloadWithXmlNamespaceAndPrefix(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/HttpPayloadWithXmlNamespaceTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/HttpPayloadWithXmlNamespaceTest.cpp new file mode 100644 index 00000000000..b8ea153d8d9 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/HttpPayloadWithXmlNamespaceTest.cpp @@ -0,0 +1,25 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpPayloadWithXmlNamespace = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(HttpPayloadWithXmlNamespace, HttpPayloadWithXmlNamespace) { + RestXmlProtocolClient client; + HttpPayloadWithXmlNamespaceRequest request; + { + PayloadWithXmlNamespace requestNested; + requestNested.SetName(R"(Phreddy)"); + request.SetNested(requestNested); + } + + auto outcome = client.HttpPayloadWithXmlNamespace(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/HttpPrefixHeadersTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/HttpPrefixHeadersTest.cpp new file mode 100644 index 00000000000..d3334f52c59 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/HttpPrefixHeadersTest.cpp @@ -0,0 +1,41 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpPrefixHeaders = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(HttpPrefixHeaders, HttpPrefixHeadersArePresent) { + RestXmlProtocolClient client; + HttpPrefixHeadersRequest request; + request.SetFoo(R"(Foo)"); + request.SetFooMap({{"abc", R"(Abc value)"}, {"def", R"(Def value)"}}); + + auto outcome = client.HttpPrefixHeaders(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(HttpPrefixHeaders, HttpPrefixHeadersAreNotPresent) { + RestXmlProtocolClient client; + HttpPrefixHeadersRequest request; + request.SetFoo(R"(Foo)"); + request.SetFooMap({}); + + auto outcome = client.HttpPrefixHeaders(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(HttpPrefixHeaders, HttpPrefixEmptyHeaders) { + RestXmlProtocolClient client; + HttpPrefixHeadersRequest request; + request.SetFooMap({{"abc", R"()"}}); + + auto outcome = client.HttpPrefixHeaders(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/HttpRequestWithFloatLabelsTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/HttpRequestWithFloatLabelsTest.cpp new file mode 100644 index 00000000000..a754a0b6b26 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/HttpRequestWithFloatLabelsTest.cpp @@ -0,0 +1,42 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpRequestWithFloatLabels = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(HttpRequestWithFloatLabels, RestXmlSupportsNaNFloatLabels) { + RestXmlProtocolClient client; + HttpRequestWithFloatLabelsRequest request; + request.SetFloat(std::numeric_limits::quiet_NaN()); + request.SetDouble(std::numeric_limits::quiet_NaN()); + + auto outcome = client.HttpRequestWithFloatLabels(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(HttpRequestWithFloatLabels, RestXmlSupportsInfinityFloatLabels) { + RestXmlProtocolClient client; + HttpRequestWithFloatLabelsRequest request; + request.SetFloat(std::numeric_limits::infinity()); + request.SetDouble(std::numeric_limits::infinity()); + + auto outcome = client.HttpRequestWithFloatLabels(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(HttpRequestWithFloatLabels, RestXmlSupportsNegativeInfinityFloatLabels) { + RestXmlProtocolClient client; + HttpRequestWithFloatLabelsRequest request; + request.SetFloat(-std::numeric_limits::infinity()); + request.SetDouble(-std::numeric_limits::infinity()); + + auto outcome = client.HttpRequestWithFloatLabels(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/HttpRequestWithGreedyLabelInPathTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/HttpRequestWithGreedyLabelInPathTest.cpp new file mode 100644 index 00000000000..bb576c1b5c3 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/HttpRequestWithGreedyLabelInPathTest.cpp @@ -0,0 +1,22 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpRequestWithGreedyLabelInPath = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(HttpRequestWithGreedyLabelInPath, HttpRequestWithGreedyLabelInPath) { + RestXmlProtocolClient client; + HttpRequestWithGreedyLabelInPathRequest request; + request.SetFoo(R"(hello)"); + request.SetBaz(R"(there/guy)"); + + auto outcome = client.HttpRequestWithGreedyLabelInPath(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/HttpRequestWithLabelsAndTimestampFormatTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/HttpRequestWithLabelsAndTimestampFormatTest.cpp new file mode 100644 index 00000000000..aa27a9b83e4 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/HttpRequestWithLabelsAndTimestampFormatTest.cpp @@ -0,0 +1,27 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpRequestWithLabelsAndTimestampFormat = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(HttpRequestWithLabelsAndTimestampFormat, HttpRequestWithLabelsAndTimestampFormat) { + RestXmlProtocolClient client; + HttpRequestWithLabelsAndTimestampFormatRequest request; + request.SetMemberEpochSeconds(Aws::Utils::DateTime(1576540098)); + request.SetMemberHttpDate(Aws::Utils::DateTime(1576540098)); + request.SetMemberDateTime(Aws::Utils::DateTime(1576540098)); + request.SetDefaultFormat(Aws::Utils::DateTime(1576540098)); + request.SetTargetEpochSeconds(Aws::Utils::DateTime(1576540098)); + request.SetTargetHttpDate(Aws::Utils::DateTime(1576540098)); + request.SetTargetDateTime(Aws::Utils::DateTime(1576540098)); + + auto outcome = client.HttpRequestWithLabelsAndTimestampFormat(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/HttpRequestWithLabelsTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/HttpRequestWithLabelsTest.cpp new file mode 100644 index 00000000000..38ebd39e9e9 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/HttpRequestWithLabelsTest.cpp @@ -0,0 +1,44 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpRequestWithLabels = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(HttpRequestWithLabels, InputWithHeadersAndAllParams) { + RestXmlProtocolClient client; + HttpRequestWithLabelsRequest request; + request.SetString(R"(string)"); + request.SetShort(1); + request.SetInteger(2); + request.SetLong(3); + request.SetFloat(4.1); + request.SetDouble(5.1); + request.SetBoolean(true); + request.SetTimestamp(Aws::Utils::DateTime(1576540098)); + + auto outcome = client.HttpRequestWithLabels(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(HttpRequestWithLabels, HttpRequestLabelEscaping) { + RestXmlProtocolClient client; + HttpRequestWithLabelsRequest request; + request.SetString(R"( %:/?#[]@!$&'()*+,;=😹)"); + request.SetShort(1); + request.SetInteger(2); + request.SetLong(3); + request.SetFloat(4.1); + request.SetDouble(5.1); + request.SetBoolean(true); + request.SetTimestamp(Aws::Utils::DateTime(1576540098)); + + auto outcome = client.HttpRequestWithLabels(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/HttpStringPayloadTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/HttpStringPayloadTest.cpp new file mode 100644 index 00000000000..5b2c3a39bf3 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/HttpStringPayloadTest.cpp @@ -0,0 +1,21 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpStringPayload = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(HttpStringPayload, RestXmlStringPayloadRequest) { + RestXmlProtocolClient client; + HttpStringPayloadRequest request; + request.SetBody([](){ return Aws::MakeShared("Test", R"(rawstring)", std::ios_base::in | std::ios_base::binary); }() ); + + auto outcome = client.HttpStringPayload(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/InputAndOutputWithHeadersTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/InputAndOutputWithHeadersTest.cpp new file mode 100644 index 00000000000..571accdf186 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/InputAndOutputWithHeadersTest.cpp @@ -0,0 +1,98 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using InputAndOutputWithHeaders = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, InputAndOutputWithStringHeaders) { + RestXmlProtocolClient client; + InputAndOutputWithHeadersRequest request; + request.SetHeaderString(R"(Hello)"); + request.SetHeaderStringList({R"(a)", R"(b)", R"(c)"}); + request.SetHeaderStringSet({R"(a)", R"(b)", R"(c)"}); + + auto outcome = client.InputAndOutputWithHeaders(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, InputAndOutputWithNumericHeaders) { + RestXmlProtocolClient client; + InputAndOutputWithHeadersRequest request; + request.SetHeaderByte(1); + request.SetHeaderShort(123); + request.SetHeaderInteger(123); + request.SetHeaderLong(123); + request.SetHeaderFloat(1.1); + request.SetHeaderDouble(1.1); + request.SetHeaderIntegerList({1, 2, 3}); + + auto outcome = client.InputAndOutputWithHeaders(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, InputAndOutputWithBooleanHeaders) { + RestXmlProtocolClient client; + InputAndOutputWithHeadersRequest request; + request.SetHeaderTrueBool(true); + request.SetHeaderFalseBool(false); + request.SetHeaderBooleanList({true, false, true}); + + auto outcome = client.InputAndOutputWithHeaders(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, InputAndOutputWithTimestampHeaders) { + RestXmlProtocolClient client; + InputAndOutputWithHeadersRequest request; + request.SetHeaderTimestampList({Aws::Utils::DateTime(1576540098), Aws::Utils::DateTime(1576540098)}); + + auto outcome = client.InputAndOutputWithHeaders(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, InputAndOutputWithEnumHeaders) { + RestXmlProtocolClient client; + InputAndOutputWithHeadersRequest request; + request.SetHeaderEnum(FooEnumMapper::GetFooEnumForName(R"e(Foo)e")); + request.SetHeaderEnumList({FooEnumMapper::GetFooEnumForName(R"e(Foo)e"), FooEnumMapper::GetFooEnumForName(R"e(Bar)e"), FooEnumMapper::GetFooEnumForName(R"e(Baz)e")}); + + auto outcome = client.InputAndOutputWithHeaders(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, RestXmlSupportsNaNFloatHeaderInputs) { + RestXmlProtocolClient client; + InputAndOutputWithHeadersRequest request; + request.SetHeaderFloat(std::numeric_limits::quiet_NaN()); + request.SetHeaderDouble(std::numeric_limits::quiet_NaN()); + + auto outcome = client.InputAndOutputWithHeaders(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, RestXmlSupportsInfinityFloatHeaderInputs) { + RestXmlProtocolClient client; + InputAndOutputWithHeadersRequest request; + request.SetHeaderFloat(std::numeric_limits::infinity()); + request.SetHeaderDouble(std::numeric_limits::infinity()); + + auto outcome = client.InputAndOutputWithHeaders(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, RestXmlSupportsNegativeInfinityFloatHeaderInputs) { + RestXmlProtocolClient client; + InputAndOutputWithHeadersRequest request; + request.SetHeaderFloat(-std::numeric_limits::infinity()); + request.SetHeaderDouble(-std::numeric_limits::infinity()); + + auto outcome = client.InputAndOutputWithHeaders(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/NestedXmlMapWithXmlNameTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/NestedXmlMapWithXmlNameTest.cpp new file mode 100644 index 00000000000..8a94fd561e9 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/NestedXmlMapWithXmlNameTest.cpp @@ -0,0 +1,21 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using NestedXmlMapWithXmlName = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(NestedXmlMapWithXmlName, NestedXmlMapWithXmlNameSerializes) { + RestXmlProtocolClient client; + NestedXmlMapWithXmlNameRequest request; + request.SetNestedXmlMapWithXmlNameMap({{"foo", {{"bar", R"(Baz)"}, {"fizz", R"(Buzz)"}}}, {"qux", {{"foobar", R"(Bar)"}, {"fizzbuzz", R"(Buzz)"}}}}); + + auto outcome = client.NestedXmlMapWithXmlName(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/NestedXmlMapsTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/NestedXmlMapsTest.cpp new file mode 100644 index 00000000000..7c601afde3d --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/NestedXmlMapsTest.cpp @@ -0,0 +1,30 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using NestedXmlMaps = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(NestedXmlMaps, NestedXmlMapRequest) { + RestXmlProtocolClient client; + NestedXmlMapsRequest request; + request.SetNestedMap({{"foo", {{"bar", FooEnumMapper::GetFooEnumForName(R"e(Bar)e")}}}}); + + auto outcome = client.NestedXmlMaps(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(NestedXmlMaps, FlatNestedXmlMapRequest) { + RestXmlProtocolClient client; + NestedXmlMapsRequest request; + request.SetFlatNestedMap({{"foo", {{"bar", FooEnumMapper::GetFooEnumForName(R"e(Bar)e")}}}}); + + auto outcome = client.NestedXmlMaps(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/NoInputAndNoOutputTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/NoInputAndNoOutputTest.cpp new file mode 100644 index 00000000000..f138912fd37 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/NoInputAndNoOutputTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using NoInputAndNoOutput = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(NoInputAndNoOutput, NoInputAndNoOutput) { + RestXmlProtocolClient client; + NoInputAndNoOutputRequest request; + + auto outcome = client.NoInputAndNoOutput(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/NoInputAndOutputTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/NoInputAndOutputTest.cpp new file mode 100644 index 00000000000..2adb5a5f897 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/NoInputAndOutputTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using NoInputAndOutput = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(NoInputAndOutput, NoInputAndOutput) { + RestXmlProtocolClient client; + NoInputAndOutputRequest request; + + auto outcome = client.NoInputAndOutput(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/NullAndEmptyHeadersClientTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/NullAndEmptyHeadersClientTest.cpp new file mode 100644 index 00000000000..f089e9d0dc3 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/NullAndEmptyHeadersClientTest.cpp @@ -0,0 +1,23 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using NullAndEmptyHeadersClient = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(NullAndEmptyHeadersClient, NullAndEmptyHeaders) { + RestXmlProtocolClient client; + NullAndEmptyHeadersClientRequest request; + request.SetA(R"(null)"); + request.SetB(R"()"); + request.SetC({}); + + auto outcome = client.NullAndEmptyHeadersClient(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/OmitsNullSerializesEmptyStringTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/OmitsNullSerializesEmptyStringTest.cpp new file mode 100644 index 00000000000..e2f94df2ae7 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/OmitsNullSerializesEmptyStringTest.cpp @@ -0,0 +1,30 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using OmitsNullSerializesEmptyString = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(OmitsNullSerializesEmptyString, RestXmlOmitsNullQuery) { + RestXmlProtocolClient client; + OmitsNullSerializesEmptyStringRequest request; + request.SetNullValue(R"(null)"); + + auto outcome = client.OmitsNullSerializesEmptyString(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(OmitsNullSerializesEmptyString, RestXmlSerializesEmptyString) { + RestXmlProtocolClient client; + OmitsNullSerializesEmptyStringRequest request; + request.SetEmptyString(R"()"); + + auto outcome = client.OmitsNullSerializesEmptyString(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/PutWithContentEncodingTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/PutWithContentEncodingTest.cpp new file mode 100644 index 00000000000..2b8cffd78b8 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/PutWithContentEncodingTest.cpp @@ -0,0 +1,287 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using PutWithContentEncoding = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(PutWithContentEncoding, SDKAppliedContentEncoding_restXml) { + RestXmlProtocolClient client; + PutWithContentEncodingRequest request; + request.SetData(R"(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 +)"); + + auto outcome = client.PutWithContentEncoding(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(PutWithContentEncoding, SDKAppendedGzipAfterProvidedEncoding_restXml) { + RestXmlProtocolClient client; + PutWithContentEncodingRequest request; + request.SetEncoding(R"(custom)"); + request.SetData(R"(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 +)"); + + auto outcome = client.PutWithContentEncoding(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/QueryIdempotencyTokenAutoFillTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/QueryIdempotencyTokenAutoFillTest.cpp new file mode 100644 index 00000000000..55604bd0e96 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/QueryIdempotencyTokenAutoFillTest.cpp @@ -0,0 +1,29 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using QueryIdempotencyTokenAutoFill = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(QueryIdempotencyTokenAutoFill, QueryIdempotencyTokenAutoFill) { + RestXmlProtocolClient client; + QueryIdempotencyTokenAutoFillRequest request; + + auto outcome = client.QueryIdempotencyTokenAutoFill(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(QueryIdempotencyTokenAutoFill, QueryIdempotencyTokenAutoFillIsSet) { + RestXmlProtocolClient client; + QueryIdempotencyTokenAutoFillRequest request; + request.SetToken(R"(00000000-0000-4000-8000-000000000000)"); + + auto outcome = client.QueryIdempotencyTokenAutoFill(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/QueryParamsAsStringListMapTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/QueryParamsAsStringListMapTest.cpp new file mode 100644 index 00000000000..b80fd1ce6fb --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/QueryParamsAsStringListMapTest.cpp @@ -0,0 +1,22 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using QueryParamsAsStringListMap = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(QueryParamsAsStringListMap, RestXmlQueryParamsStringListMap) { + RestXmlProtocolClient client; + QueryParamsAsStringListMapRequest request; + request.SetQux(R"(named)"); + request.SetFoo({{"baz", {R"(bar)", R"(qux)"}}}); + + auto outcome = client.QueryParamsAsStringListMap(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/QueryPrecedenceTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/QueryPrecedenceTest.cpp new file mode 100644 index 00000000000..4f126cbf153 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/QueryPrecedenceTest.cpp @@ -0,0 +1,22 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using QueryPrecedence = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(QueryPrecedence, RestXmlQueryPrecedence) { + RestXmlProtocolClient client; + QueryPrecedenceRequest request; + request.SetFoo(R"(named)"); + request.SetBaz({{"bar", R"(fromMap)"}, {"qux", R"(alsoFromMap)"}}); + + auto outcome = client.QueryPrecedence(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/RecursiveShapesTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/RecursiveShapesTest.cpp new file mode 100644 index 00000000000..bd2ecb03de6 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/RecursiveShapesTest.cpp @@ -0,0 +1,40 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using RecursiveShapes = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(RecursiveShapes, RecursiveShapes) { + RestXmlProtocolClient client; + RecursiveShapesRequest request; + { + RecursiveShapesInputOutputNested1 requestNested; + requestNested.SetFoo(R"(Foo1)"); + { + RecursiveShapesInputOutputNested2 requestNestedNested; + requestNestedNested.SetBar(R"(Bar1)"); + { + RecursiveShapesInputOutputNested1 requestNestedNestedRecursiveMember; + requestNestedNestedRecursiveMember.SetFoo(R"(Foo2)"); + { + RecursiveShapesInputOutputNested2 requestNestedNestedRecursiveMemberNested; + requestNestedNestedRecursiveMemberNested.SetBar(R"(Bar2)"); + requestNestedNestedRecursiveMember.SetNested(requestNestedNestedRecursiveMemberNested); + } + requestNestedNested.SetRecursiveMember(requestNestedNestedRecursiveMember); + } + requestNested.SetNested(requestNestedNested); + } + request.SetNested(requestNested); + } + + auto outcome = client.RecursiveShapes(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/SimpleScalarPropertiesTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/SimpleScalarPropertiesTest.cpp new file mode 100644 index 00000000000..17c9339c14f --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/SimpleScalarPropertiesTest.cpp @@ -0,0 +1,90 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using SimpleScalarProperties = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(SimpleScalarProperties, SimpleScalarProperties) { + RestXmlProtocolClient client; + SimpleScalarPropertiesRequest request; + request.SetFoo(R"(Foo)"); + request.SetStringValue(R"(string)"); + request.SetTrueBooleanValue(true); + request.SetFalseBooleanValue(false); + request.SetByteValue(1); + request.SetShortValue(2); + request.SetIntegerValue(3); + request.SetLongValue(4); + request.SetFloatValue(5.5); + request.SetDoubleValue(6.5); + + auto outcome = client.SimpleScalarProperties(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, SimpleScalarPropertiesWithEscapedCharacter) { + RestXmlProtocolClient client; + SimpleScalarPropertiesRequest request; + request.SetFoo(R"(Foo)"); + request.SetStringValue(R"()"); + + auto outcome = client.SimpleScalarProperties(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, SimpleScalarPropertiesWithWhiteSpace) { + RestXmlProtocolClient client; + SimpleScalarPropertiesRequest request; + request.SetFoo(R"(Foo)"); + request.SetStringValue(R"( string with white space )"); + + auto outcome = client.SimpleScalarProperties(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, SimpleScalarPropertiesPureWhiteSpace) { + RestXmlProtocolClient client; + SimpleScalarPropertiesRequest request; + request.SetFoo(R"(Foo)"); + request.SetStringValue(R"( )"); + + auto outcome = client.SimpleScalarProperties(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, RestXmlSupportsNaNFloatInputs) { + RestXmlProtocolClient client; + SimpleScalarPropertiesRequest request; + request.SetFloatValue(std::numeric_limits::quiet_NaN()); + request.SetDoubleValue(std::numeric_limits::quiet_NaN()); + + auto outcome = client.SimpleScalarProperties(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, RestXmlSupportsInfinityFloatInputs) { + RestXmlProtocolClient client; + SimpleScalarPropertiesRequest request; + request.SetFloatValue(std::numeric_limits::infinity()); + request.SetDoubleValue(std::numeric_limits::infinity()); + + auto outcome = client.SimpleScalarProperties(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, RestXmlSupportsNegativeInfinityFloatInputs) { + RestXmlProtocolClient client; + SimpleScalarPropertiesRequest request; + request.SetFloatValue(-std::numeric_limits::infinity()); + request.SetDoubleValue(-std::numeric_limits::infinity()); + + auto outcome = client.SimpleScalarProperties(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/TimestampFormatHeadersTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/TimestampFormatHeadersTest.cpp new file mode 100644 index 00000000000..deaae0bd767 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/TimestampFormatHeadersTest.cpp @@ -0,0 +1,27 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using TimestampFormatHeaders = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(TimestampFormatHeaders, TimestampFormatHeaders) { + RestXmlProtocolClient client; + TimestampFormatHeadersRequest request; + request.SetMemberEpochSeconds(Aws::Utils::DateTime(1576540098)); + request.SetMemberHttpDate(Aws::Utils::DateTime(1576540098)); + request.SetMemberDateTime(Aws::Utils::DateTime(1576540098)); + request.SetDefaultFormat(Aws::Utils::DateTime(1576540098)); + request.SetTargetEpochSeconds(Aws::Utils::DateTime(1576540098)); + request.SetTargetHttpDate(Aws::Utils::DateTime(1576540098)); + request.SetTargetDateTime(Aws::Utils::DateTime(1576540098)); + + auto outcome = client.TimestampFormatHeaders(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/XmlAttributesOnPayloadTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/XmlAttributesOnPayloadTest.cpp new file mode 100644 index 00000000000..51d5cfb25f3 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/XmlAttributesOnPayloadTest.cpp @@ -0,0 +1,26 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlAttributesOnPayload = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlAttributesOnPayload, XmlAttributesOnPayload) { + RestXmlProtocolClient client; + XmlAttributesOnPayloadRequest request; + { + XmlAttributesPayloadRequest requestPayload; + requestPayload.SetFoo(R"(hi)"); + requestPayload.SetAttr(R"(test)"); + request.SetPayload(requestPayload); + } + + auto outcome = client.XmlAttributesOnPayload(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/XmlAttributesTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/XmlAttributesTest.cpp new file mode 100644 index 00000000000..99228e98acc --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/XmlAttributesTest.cpp @@ -0,0 +1,32 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlAttributes = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlAttributes, XmlAttributes) { + RestXmlProtocolClient client; + XmlAttributesRequest request; + request.SetFoo(R"(hi)"); + request.SetAttr(R"(test)"); + + auto outcome = client.XmlAttributes(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(XmlAttributes, XmlAttributesWithEscaping) { + RestXmlProtocolClient client; + XmlAttributesRequest request; + request.SetFoo(R"(hi)"); + request.SetAttr(R"()"); + + auto outcome = client.XmlAttributes(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/XmlBlobsTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/XmlBlobsTest.cpp new file mode 100644 index 00000000000..162b4514622 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/XmlBlobsTest.cpp @@ -0,0 +1,21 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlBlobs = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlBlobs, XmlBlobs) { + RestXmlProtocolClient client; + XmlBlobsRequest request; + request.SetData(R"(value)"); + + auto outcome = client.XmlBlobs(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/XmlEmptyListsTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/XmlEmptyListsTest.cpp new file mode 100644 index 00000000000..6a889e15050 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/XmlEmptyListsTest.cpp @@ -0,0 +1,22 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlEmptyLists = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlEmptyLists, XmlEmptyLists) { + RestXmlProtocolClient client; + XmlEmptyListsRequest request; + request.SetStringList({}); + request.SetStringSet({}); + + auto outcome = client.XmlEmptyLists(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/XmlEmptyMapsTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/XmlEmptyMapsTest.cpp new file mode 100644 index 00000000000..28f19ec6d07 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/XmlEmptyMapsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlEmptyMaps = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlEmptyMaps, XmlEmptyMaps) { + RestXmlProtocolClient client; + XmlEmptyMapsRequest request; + + auto outcome = client.XmlEmptyMaps(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/XmlEmptyStringsTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/XmlEmptyStringsTest.cpp new file mode 100644 index 00000000000..e6a51700fba --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/XmlEmptyStringsTest.cpp @@ -0,0 +1,21 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlEmptyStrings = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlEmptyStrings, XmlEmptyStrings) { + RestXmlProtocolClient client; + XmlEmptyStringsRequest request; + request.SetEmptyString(R"()"); + + auto outcome = client.XmlEmptyStrings(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/XmlEnumsTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/XmlEnumsTest.cpp new file mode 100644 index 00000000000..85729d6f3e5 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/XmlEnumsTest.cpp @@ -0,0 +1,26 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlEnums = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlEnums, XmlEnums) { + RestXmlProtocolClient client; + XmlEnumsRequest request; + request.SetFooEnum1(FooEnumMapper::GetFooEnumForName(R"e(Foo)e")); + request.SetFooEnum2(FooEnumMapper::GetFooEnumForName(R"e(0)e")); + request.SetFooEnum3(FooEnumMapper::GetFooEnumForName(R"e(1)e")); + request.SetFooEnumList({FooEnumMapper::GetFooEnumForName(R"e(Foo)e"), FooEnumMapper::GetFooEnumForName(R"e(0)e")}); + request.SetFooEnumSet({FooEnumMapper::GetFooEnumForName(R"e(Foo)e"), FooEnumMapper::GetFooEnumForName(R"e(0)e")}); + request.SetFooEnumMap({{"hi", FooEnumMapper::GetFooEnumForName(R"e(Foo)e")}, {"zero", FooEnumMapper::GetFooEnumForName(R"e(0)e")}}); + + auto outcome = client.XmlEnums(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/XmlIntEnumsTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/XmlIntEnumsTest.cpp new file mode 100644 index 00000000000..1b7768b7dda --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/XmlIntEnumsTest.cpp @@ -0,0 +1,26 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlIntEnums = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlIntEnums, XmlIntEnums) { + RestXmlProtocolClient client; + XmlIntEnumsRequest request; + request.SetIntEnum1(1); + request.SetIntEnum2(2); + request.SetIntEnum3(3); + request.SetIntEnumList({1, 2}); + request.SetIntEnumSet({1, 2}); + request.SetIntEnumMap({{"a", 1}, {"b", 2}}); + + auto outcome = client.XmlIntEnums(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/XmlListsTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/XmlListsTest.cpp new file mode 100644 index 00000000000..1a7e392193e --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/XmlListsTest.cpp @@ -0,0 +1,66 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlLists = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlLists, XmlLists) { + RestXmlProtocolClient client; + XmlListsRequest request; + request.SetStringList({R"(foo)", R"(bar)"}); + request.SetStringSet({R"(foo)", R"(bar)"}); + request.SetIntegerList({1, 2}); + request.SetBooleanList({true, false}); + request.SetTimestampList({Aws::Utils::DateTime(1398796238), Aws::Utils::DateTime(1398796238)}); + request.SetEnumList({FooEnumMapper::GetFooEnumForName(R"e(Foo)e"), FooEnumMapper::GetFooEnumForName(R"e(0)e")}); + request.SetIntEnumList({1, 2}); + { + Aws::Vector requestNestedStringListItem; + requestNestedStringListItem.emplace_back(R"(foo)"); + requestNestedStringListItem.emplace_back(R"(bar)"); + request.AddNestedStringList(requestNestedStringListItem); + } + { + Aws::Vector requestNestedStringListItem; + requestNestedStringListItem.emplace_back(R"(baz)"); + requestNestedStringListItem.emplace_back(R"(qux)"); + request.AddNestedStringList(requestNestedStringListItem); + } + request.SetRenamedListMembers({R"(foo)", R"(bar)"}); + request.SetFlattenedList({R"(hi)", R"(bye)"}); + request.SetFlattenedList2({R"(yep)", R"(nope)"}); + { + StructureListMember requestStructureListItem; + requestStructureListItem.SetA(R"(1)"); + requestStructureListItem.SetB(R"(2)"); + request.AddStructureList(requestStructureListItem); + } + { + StructureListMember requestStructureListItem; + requestStructureListItem.SetA(R"(3)"); + requestStructureListItem.SetB(R"(4)"); + request.AddStructureList(requestStructureListItem); + } + { + StructureListMember requestFlattenedStructureListItem; + requestFlattenedStructureListItem.SetA(R"(5)"); + requestFlattenedStructureListItem.SetB(R"(6)"); + request.AddFlattenedStructureList(requestFlattenedStructureListItem); + } + { + StructureListMember requestFlattenedStructureListItem; + requestFlattenedStructureListItem.SetA(R"(7)"); + requestFlattenedStructureListItem.SetB(R"(8)"); + request.AddFlattenedStructureList(requestFlattenedStructureListItem); + } + + auto outcome = client.XmlLists(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/XmlMapWithXmlNamespaceTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/XmlMapWithXmlNamespaceTest.cpp new file mode 100644 index 00000000000..a8464d316d6 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/XmlMapWithXmlNamespaceTest.cpp @@ -0,0 +1,21 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlMapWithXmlNamespace = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlMapWithXmlNamespace, RestXmlXmlMapWithXmlNamespace) { + RestXmlProtocolClient client; + XmlMapWithXmlNamespaceRequest request; + request.SetMyMap({{"a", R"(A)"}, {"b", R"(B)"}}); + + auto outcome = client.XmlMapWithXmlNamespace(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/XmlMapsTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/XmlMapsTest.cpp new file mode 100644 index 00000000000..eed4e6dfd17 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/XmlMapsTest.cpp @@ -0,0 +1,30 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlMaps = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlMaps, XmlMaps) { + RestXmlProtocolClient client; + XmlMapsRequest request; + { + GreetingStruct requestMyMapItem; + requestMyMapItem.SetHi(R"(there)"); + request.AddMyMap("foo", requestMyMapItem); + } + { + GreetingStruct requestMyMapItem; + requestMyMapItem.SetHi(R"(bye)"); + request.AddMyMap("baz", requestMyMapItem); + } + + auto outcome = client.XmlMaps(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/XmlMapsXmlNameTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/XmlMapsXmlNameTest.cpp new file mode 100644 index 00000000000..9e955218d83 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/XmlMapsXmlNameTest.cpp @@ -0,0 +1,30 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlMapsXmlName = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlMapsXmlName, XmlMapsXmlName) { + RestXmlProtocolClient client; + XmlMapsXmlNameRequest request; + { + GreetingStruct requestMyMapItem; + requestMyMapItem.SetHi(R"(there)"); + request.AddMyMap("foo", requestMyMapItem); + } + { + GreetingStruct requestMyMapItem; + requestMyMapItem.SetHi(R"(bye)"); + request.AddMyMap("baz", requestMyMapItem); + } + + auto outcome = client.XmlMapsXmlName(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/XmlNamespacesTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/XmlNamespacesTest.cpp new file mode 100644 index 00000000000..0ffec38b0ae --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/XmlNamespacesTest.cpp @@ -0,0 +1,26 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlNamespaces = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlNamespaces, XmlNamespaces) { + RestXmlProtocolClient client; + XmlNamespacesRequest request; + { + XmlNamespaceNested requestNested; + requestNested.SetFoo(R"(Foo)"); + requestNested.SetValues({R"(Bar)", R"(Baz)"}); + request.SetNested(requestNested); + } + + auto outcome = client.XmlNamespaces(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/XmlTimestampsTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/XmlTimestampsTest.cpp new file mode 100644 index 00000000000..61568107a2c --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/XmlTimestampsTest.cpp @@ -0,0 +1,75 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlTimestamps = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlTimestamps, XmlTimestamps) { + RestXmlProtocolClient client; + XmlTimestampsRequest request; + request.SetNormal(Aws::Utils::DateTime(1398796238)); + + auto outcome = client.XmlTimestamps(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(XmlTimestamps, XmlTimestampsWithDateTimeFormat) { + RestXmlProtocolClient client; + XmlTimestampsRequest request; + request.SetDateTime(Aws::Utils::DateTime(1398796238)); + + auto outcome = client.XmlTimestamps(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(XmlTimestamps, XmlTimestampsWithDateTimeOnTargetFormat) { + RestXmlProtocolClient client; + XmlTimestampsRequest request; + request.SetDateTimeOnTarget(Aws::Utils::DateTime(1398796238)); + + auto outcome = client.XmlTimestamps(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(XmlTimestamps, XmlTimestampsWithEpochSecondsFormat) { + RestXmlProtocolClient client; + XmlTimestampsRequest request; + request.SetEpochSeconds(Aws::Utils::DateTime(1398796238)); + + auto outcome = client.XmlTimestamps(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(XmlTimestamps, XmlTimestampsWithEpochSecondsOnTargetFormat) { + RestXmlProtocolClient client; + XmlTimestampsRequest request; + request.SetEpochSecondsOnTarget(Aws::Utils::DateTime(1398796238)); + + auto outcome = client.XmlTimestamps(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(XmlTimestamps, XmlTimestampsWithHttpDateFormat) { + RestXmlProtocolClient client; + XmlTimestampsRequest request; + request.SetHttpDate(Aws::Utils::DateTime(1398796238)); + + auto outcome = client.XmlTimestamps(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(XmlTimestamps, XmlTimestampsWithHttpDateOnTargetFormat) { + RestXmlProtocolClient client; + XmlTimestampsRequest request; + request.SetHttpDateOnTarget(Aws::Utils::DateTime(1398796238)); + + auto outcome = client.XmlTimestamps(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/input/rest-xml/tests/XmlUnionsTest.cpp b/generated/protocol-tests/tests/input/rest-xml/tests/XmlUnionsTest.cpp new file mode 100644 index 00000000000..0bd30683729 --- /dev/null +++ b/generated/protocol-tests/tests/input/rest-xml/tests/XmlUnionsTest.cpp @@ -0,0 +1,79 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlUnions = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlUnions, XmlUnionsWithStructMember) { + RestXmlProtocolClient client; + XmlUnionsRequest request; + { + XmlUnionShape requestUnionValue; + { + XmlNestedUnionStruct requestUnionValueStructValue; + requestUnionValueStructValue.SetStringValue(R"(string)"); + requestUnionValueStructValue.SetBooleanValue(true); + requestUnionValueStructValue.SetByteValue(1); + requestUnionValueStructValue.SetShortValue(2); + requestUnionValueStructValue.SetIntegerValue(3); + requestUnionValueStructValue.SetLongValue(4); + requestUnionValueStructValue.SetFloatValue(5.5); + requestUnionValueStructValue.SetDoubleValue(6.5); + requestUnionValue.SetStructValue(requestUnionValueStructValue); + } + request.SetUnionValue(requestUnionValue); + } + + auto outcome = client.XmlUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(XmlUnions, XmlUnionsWithStringMember) { + RestXmlProtocolClient client; + XmlUnionsRequest request; + { + XmlUnionShape requestUnionValue; + requestUnionValue.SetStringValue(R"(some string)"); + request.SetUnionValue(requestUnionValue); + } + + auto outcome = client.XmlUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(XmlUnions, XmlUnionsWithBooleanMember) { + RestXmlProtocolClient client; + XmlUnionsRequest request; + { + XmlUnionShape requestUnionValue; + requestUnionValue.SetBooleanValue(true); + request.SetUnionValue(requestUnionValue); + } + + auto outcome = client.XmlUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} + +AWS_PROTOCOL_TEST(XmlUnions, XmlUnionsWithUnionMember) { + RestXmlProtocolClient client; + XmlUnionsRequest request; + { + XmlUnionShape requestUnionValue; + { + XmlUnionShape requestUnionValueUnionValue; + requestUnionValueUnionValue.SetBooleanValue(true); + requestUnionValue.SetUnionValue(requestUnionValueUnionValue); + } + request.SetUnionValue(requestUnionValue); + } + + auto outcome = client.XmlUnions(request); + AWS_ASSERT_SUCCESS(outcome); +} diff --git a/generated/protocol-tests/tests/output/ec2/CMakeLists.txt b/generated/protocol-tests/tests/output/ec2/CMakeLists.txt index e7c8d4f53ed..242f8dcff15 100644 --- a/generated/protocol-tests/tests/output/ec2/CMakeLists.txt +++ b/generated/protocol-tests/tests/output/ec2/CMakeLists.txt @@ -6,6 +6,7 @@ add_project(ec2-output-protocol-tests file(GLOB AWS_EC2_OUTPUT_PROTOCOL_TESTS_SRC "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp" + "${CMAKE_CURRENT_SOURCE_DIR}/tests/*.cpp" ) if(MSVC AND BUILD_SHARED_LIBS) diff --git a/generated/protocol-tests/tests/output/ec2/tests/DatetimeOffsetsTest.cpp b/generated/protocol-tests/tests/output/ec2/tests/DatetimeOffsetsTest.cpp new file mode 100644 index 00000000000..d223ec3acd4 --- /dev/null +++ b/generated/protocol-tests/tests/output/ec2/tests/DatetimeOffsetsTest.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using DatetimeOffsets = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(DatetimeOffsets, Ec2QueryDateTimeWithNegativeOffset) { + EC2ProtocolClient client; + DatetimeOffsetsRequest request; + + auto outcome = client.DatetimeOffsets(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(DatetimeOffsets, Ec2QueryDateTimeWithPositiveOffset) { + EC2ProtocolClient client; + DatetimeOffsetsRequest request; + + auto outcome = client.DatetimeOffsets(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/ec2/tests/EmptyInputAndEmptyOutputTest.cpp b/generated/protocol-tests/tests/output/ec2/tests/EmptyInputAndEmptyOutputTest.cpp new file mode 100644 index 00000000000..db9bd40c5d8 --- /dev/null +++ b/generated/protocol-tests/tests/output/ec2/tests/EmptyInputAndEmptyOutputTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using EmptyInputAndEmptyOutput = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(EmptyInputAndEmptyOutput, Ec2QueryEmptyInputAndEmptyOutput) { + EC2ProtocolClient client; + EmptyInputAndEmptyOutputRequest request; + + auto outcome = client.EmptyInputAndEmptyOutput(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/ec2/tests/FractionalSecondsTest.cpp b/generated/protocol-tests/tests/output/ec2/tests/FractionalSecondsTest.cpp new file mode 100644 index 00000000000..21e3dfcdfd0 --- /dev/null +++ b/generated/protocol-tests/tests/output/ec2/tests/FractionalSecondsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using FractionalSeconds = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(FractionalSeconds, Ec2QueryDateTimeWithFractionalSeconds) { + EC2ProtocolClient client; + FractionalSecondsRequest request; + + auto outcome = client.FractionalSeconds(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/ec2/tests/GreetingWithErrors0Test.cpp b/generated/protocol-tests/tests/output/ec2/tests/GreetingWithErrors0Test.cpp new file mode 100644 index 00000000000..6d812ef5b33 --- /dev/null +++ b/generated/protocol-tests/tests/output/ec2/tests/GreetingWithErrors0Test.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using GreetingWithErrors0 = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(GreetingWithErrors0, Ec2InvalidGreetingError) { + EC2ProtocolClient client; + GreetingWithErrors0Request request; + + auto outcome = client.GreetingWithErrors0(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/ec2/tests/GreetingWithErrors1Test.cpp b/generated/protocol-tests/tests/output/ec2/tests/GreetingWithErrors1Test.cpp new file mode 100644 index 00000000000..b7b508a72e3 --- /dev/null +++ b/generated/protocol-tests/tests/output/ec2/tests/GreetingWithErrors1Test.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using GreetingWithErrors1 = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(GreetingWithErrors1, Ec2ComplexError) { + EC2ProtocolClient client; + GreetingWithErrors1Request request; + + auto outcome = client.GreetingWithErrors1(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/ec2/tests/GreetingWithErrorsTest.cpp b/generated/protocol-tests/tests/output/ec2/tests/GreetingWithErrorsTest.cpp new file mode 100644 index 00000000000..55c30e3d064 --- /dev/null +++ b/generated/protocol-tests/tests/output/ec2/tests/GreetingWithErrorsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using GreetingWithErrors = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(GreetingWithErrors, Ec2GreetingWithErrors) { + EC2ProtocolClient client; + GreetingWithErrorsRequest request; + + auto outcome = client.GreetingWithErrors(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/ec2/tests/IgnoresWrappingXmlNameTest.cpp b/generated/protocol-tests/tests/output/ec2/tests/IgnoresWrappingXmlNameTest.cpp new file mode 100644 index 00000000000..abf899cf5a1 --- /dev/null +++ b/generated/protocol-tests/tests/output/ec2/tests/IgnoresWrappingXmlNameTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using IgnoresWrappingXmlName = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(IgnoresWrappingXmlName, Ec2IgnoresWrappingXmlName) { + EC2ProtocolClient client; + IgnoresWrappingXmlNameRequest request; + + auto outcome = client.IgnoresWrappingXmlName(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/ec2/tests/NoInputAndOutputTest.cpp b/generated/protocol-tests/tests/output/ec2/tests/NoInputAndOutputTest.cpp new file mode 100644 index 00000000000..fab8db94a1f --- /dev/null +++ b/generated/protocol-tests/tests/output/ec2/tests/NoInputAndOutputTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using NoInputAndOutput = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(NoInputAndOutput, Ec2QueryNoInputAndOutput) { + EC2ProtocolClient client; + NoInputAndOutputRequest request; + + auto outcome = client.NoInputAndOutput(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/ec2/tests/RecursiveXmlShapesTest.cpp b/generated/protocol-tests/tests/output/ec2/tests/RecursiveXmlShapesTest.cpp new file mode 100644 index 00000000000..d14d025f0cc --- /dev/null +++ b/generated/protocol-tests/tests/output/ec2/tests/RecursiveXmlShapesTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using RecursiveXmlShapes = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(RecursiveXmlShapes, Ec2RecursiveShapes) { + EC2ProtocolClient client; + RecursiveXmlShapesRequest request; + + auto outcome = client.RecursiveXmlShapes(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/ec2/tests/SimpleScalarXmlPropertiesTest.cpp b/generated/protocol-tests/tests/output/ec2/tests/SimpleScalarXmlPropertiesTest.cpp new file mode 100644 index 00000000000..331b3e75069 --- /dev/null +++ b/generated/protocol-tests/tests/output/ec2/tests/SimpleScalarXmlPropertiesTest.cpp @@ -0,0 +1,44 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using SimpleScalarXmlProperties = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(SimpleScalarXmlProperties, Ec2SimpleScalarProperties) { + EC2ProtocolClient client; + SimpleScalarXmlPropertiesRequest request; + + auto outcome = client.SimpleScalarXmlProperties(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(SimpleScalarXmlProperties, Ec2QuerySupportsNaNFloatOutputs) { + EC2ProtocolClient client; + SimpleScalarXmlPropertiesRequest request; + + auto outcome = client.SimpleScalarXmlProperties(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(SimpleScalarXmlProperties, Ec2QuerySupportsInfinityFloatOutputs) { + EC2ProtocolClient client; + SimpleScalarXmlPropertiesRequest request; + + auto outcome = client.SimpleScalarXmlProperties(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(SimpleScalarXmlProperties, Ec2QuerySupportsNegativeInfinityFloatOutputs) { + EC2ProtocolClient client; + SimpleScalarXmlPropertiesRequest request; + + auto outcome = client.SimpleScalarXmlProperties(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/ec2/tests/XmlBlobsTest.cpp b/generated/protocol-tests/tests/output/ec2/tests/XmlBlobsTest.cpp new file mode 100644 index 00000000000..fe024435fc5 --- /dev/null +++ b/generated/protocol-tests/tests/output/ec2/tests/XmlBlobsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlBlobs = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(XmlBlobs, Ec2XmlBlobs) { + EC2ProtocolClient client; + XmlBlobsRequest request; + + auto outcome = client.XmlBlobs(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/ec2/tests/XmlEmptyBlobsTest.cpp b/generated/protocol-tests/tests/output/ec2/tests/XmlEmptyBlobsTest.cpp new file mode 100644 index 00000000000..839a37da74d --- /dev/null +++ b/generated/protocol-tests/tests/output/ec2/tests/XmlEmptyBlobsTest.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlEmptyBlobs = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(XmlEmptyBlobs, Ec2XmlEmptyBlobs) { + EC2ProtocolClient client; + XmlEmptyBlobsRequest request; + + auto outcome = client.XmlEmptyBlobs(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(XmlEmptyBlobs, Ec2XmlEmptySelfClosedBlobs) { + EC2ProtocolClient client; + XmlEmptyBlobsRequest request; + + auto outcome = client.XmlEmptyBlobs(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/ec2/tests/XmlEmptyListsTest.cpp b/generated/protocol-tests/tests/output/ec2/tests/XmlEmptyListsTest.cpp new file mode 100644 index 00000000000..50bfb3c929a --- /dev/null +++ b/generated/protocol-tests/tests/output/ec2/tests/XmlEmptyListsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlEmptyLists = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(XmlEmptyLists, Ec2XmlEmptyLists) { + EC2ProtocolClient client; + XmlEmptyListsRequest request; + + auto outcome = client.XmlEmptyLists(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/ec2/tests/XmlEnumsTest.cpp b/generated/protocol-tests/tests/output/ec2/tests/XmlEnumsTest.cpp new file mode 100644 index 00000000000..aa067fbcaa7 --- /dev/null +++ b/generated/protocol-tests/tests/output/ec2/tests/XmlEnumsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlEnums = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(XmlEnums, Ec2XmlEnums) { + EC2ProtocolClient client; + XmlEnumsRequest request; + + auto outcome = client.XmlEnums(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/ec2/tests/XmlIntEnumsTest.cpp b/generated/protocol-tests/tests/output/ec2/tests/XmlIntEnumsTest.cpp new file mode 100644 index 00000000000..47f1fbba98a --- /dev/null +++ b/generated/protocol-tests/tests/output/ec2/tests/XmlIntEnumsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlIntEnums = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(XmlIntEnums, Ec2XmlIntEnums) { + EC2ProtocolClient client; + XmlIntEnumsRequest request; + + auto outcome = client.XmlIntEnums(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/ec2/tests/XmlListsTest.cpp b/generated/protocol-tests/tests/output/ec2/tests/XmlListsTest.cpp new file mode 100644 index 00000000000..d664a357d76 --- /dev/null +++ b/generated/protocol-tests/tests/output/ec2/tests/XmlListsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlLists = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(XmlLists, Ec2XmlLists) { + EC2ProtocolClient client; + XmlListsRequest request; + + auto outcome = client.XmlLists(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/ec2/tests/XmlNamespacesTest.cpp b/generated/protocol-tests/tests/output/ec2/tests/XmlNamespacesTest.cpp new file mode 100644 index 00000000000..e5b3ff899a0 --- /dev/null +++ b/generated/protocol-tests/tests/output/ec2/tests/XmlNamespacesTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlNamespaces = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(XmlNamespaces, Ec2XmlNamespaces) { + EC2ProtocolClient client; + XmlNamespacesRequest request; + + auto outcome = client.XmlNamespaces(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/ec2/tests/XmlTimestampsTest.cpp b/generated/protocol-tests/tests/output/ec2/tests/XmlTimestampsTest.cpp new file mode 100644 index 00000000000..a212d13215f --- /dev/null +++ b/generated/protocol-tests/tests/output/ec2/tests/XmlTimestampsTest.cpp @@ -0,0 +1,68 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlTimestamps = AWS_PROTOCOL_TEST_SUITE; +using EC2ProtocolClient = Aws::EC2Protocol::EC2ProtocolClient; +using namespace Aws::EC2Protocol::Model; + +AWS_PROTOCOL_TEST(XmlTimestamps, Ec2XmlTimestamps) { + EC2ProtocolClient client; + XmlTimestampsRequest request; + + auto outcome = client.XmlTimestamps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(XmlTimestamps, Ec2XmlTimestampsWithDateTimeFormat) { + EC2ProtocolClient client; + XmlTimestampsRequest request; + + auto outcome = client.XmlTimestamps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(XmlTimestamps, Ec2XmlTimestampsWithDateTimeOnTargetFormat) { + EC2ProtocolClient client; + XmlTimestampsRequest request; + + auto outcome = client.XmlTimestamps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(XmlTimestamps, Ec2XmlTimestampsWithEpochSecondsFormat) { + EC2ProtocolClient client; + XmlTimestampsRequest request; + + auto outcome = client.XmlTimestamps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(XmlTimestamps, Ec2XmlTimestampsWithEpochSecondsOnTargetFormat) { + EC2ProtocolClient client; + XmlTimestampsRequest request; + + auto outcome = client.XmlTimestamps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(XmlTimestamps, Ec2XmlTimestampsWithHttpDateFormat) { + EC2ProtocolClient client; + XmlTimestampsRequest request; + + auto outcome = client.XmlTimestamps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(XmlTimestamps, Ec2XmlTimestampsWithHttpDateOnTargetFormat) { + EC2ProtocolClient client; + XmlTimestampsRequest request; + + auto outcome = client.XmlTimestamps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/json/CMakeLists.txt b/generated/protocol-tests/tests/output/json/CMakeLists.txt index 187c0fdb886..35636ee4292 100644 --- a/generated/protocol-tests/tests/output/json/CMakeLists.txt +++ b/generated/protocol-tests/tests/output/json/CMakeLists.txt @@ -6,6 +6,7 @@ add_project(json-output-protocol-tests file(GLOB AWS_JSON_OUTPUT_PROTOCOL_TESTS_SRC "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp" + "${CMAKE_CURRENT_SOURCE_DIR}/tests/*.cpp" ) if(MSVC AND BUILD_SHARED_LIBS) diff --git a/generated/protocol-tests/tests/output/json/tests/DatetimeOffsetsTest.cpp b/generated/protocol-tests/tests/output/json/tests/DatetimeOffsetsTest.cpp new file mode 100644 index 00000000000..7dc137cbed1 --- /dev/null +++ b/generated/protocol-tests/tests/output/json/tests/DatetimeOffsetsTest.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using DatetimeOffsets = AWS_PROTOCOL_TEST_SUITE; +using JsonProtocolClient = Aws::JsonProtocol::JsonProtocolClient; +using namespace Aws::JsonProtocol::Model; + +AWS_PROTOCOL_TEST(DatetimeOffsets, AwsJson11DateTimeWithNegativeOffset) { + JsonProtocolClient client; + DatetimeOffsetsRequest request; + + auto outcome = client.DatetimeOffsets(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(DatetimeOffsets, AwsJson11DateTimeWithPositiveOffset) { + JsonProtocolClient client; + DatetimeOffsetsRequest request; + + auto outcome = client.DatetimeOffsets(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/json/tests/EmptyOperationTest.cpp b/generated/protocol-tests/tests/output/json/tests/EmptyOperationTest.cpp new file mode 100644 index 00000000000..ae79782e390 --- /dev/null +++ b/generated/protocol-tests/tests/output/json/tests/EmptyOperationTest.cpp @@ -0,0 +1,36 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using EmptyOperation = AWS_PROTOCOL_TEST_SUITE; +using JsonProtocolClient = Aws::JsonProtocol::JsonProtocolClient; +using namespace Aws::JsonProtocol::Model; + +AWS_PROTOCOL_TEST(EmptyOperation, handles_empty_output_shape) { + JsonProtocolClient client; + EmptyOperationRequest request; + + auto outcome = client.EmptyOperation(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(EmptyOperation, handles_unexpected_json_output) { + JsonProtocolClient client; + EmptyOperationRequest request; + + auto outcome = client.EmptyOperation(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(EmptyOperation, json_1_1_service_responds_with_no_payload) { + JsonProtocolClient client; + EmptyOperationRequest request; + + auto outcome = client.EmptyOperation(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/json/tests/FractionalSecondsTest.cpp b/generated/protocol-tests/tests/output/json/tests/FractionalSecondsTest.cpp new file mode 100644 index 00000000000..8c2dc4ead8a --- /dev/null +++ b/generated/protocol-tests/tests/output/json/tests/FractionalSecondsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using FractionalSeconds = AWS_PROTOCOL_TEST_SUITE; +using JsonProtocolClient = Aws::JsonProtocol::JsonProtocolClient; +using namespace Aws::JsonProtocol::Model; + +AWS_PROTOCOL_TEST(FractionalSeconds, AwsJson11DateTimeWithFractionalSeconds) { + JsonProtocolClient client; + FractionalSecondsRequest request; + + auto outcome = client.FractionalSeconds(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/json/tests/GreetingWithErrors0Test.cpp b/generated/protocol-tests/tests/output/json/tests/GreetingWithErrors0Test.cpp new file mode 100644 index 00000000000..4dbc3f05a23 --- /dev/null +++ b/generated/protocol-tests/tests/output/json/tests/GreetingWithErrors0Test.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using GreetingWithErrors0 = AWS_PROTOCOL_TEST_SUITE; +using JsonProtocolClient = Aws::JsonProtocol::JsonProtocolClient; +using namespace Aws::JsonProtocol::Model; + +AWS_PROTOCOL_TEST(GreetingWithErrors0, AwsJson11ComplexError) { + JsonProtocolClient client; + GreetingWithErrors0Request request; + + auto outcome = client.GreetingWithErrors0(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(GreetingWithErrors0, AwsJson11EmptyComplexError) { + JsonProtocolClient client; + GreetingWithErrors0Request request; + + auto outcome = client.GreetingWithErrors0(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/json/tests/GreetingWithErrors1Test.cpp b/generated/protocol-tests/tests/output/json/tests/GreetingWithErrors1Test.cpp new file mode 100644 index 00000000000..13d430071e6 --- /dev/null +++ b/generated/protocol-tests/tests/output/json/tests/GreetingWithErrors1Test.cpp @@ -0,0 +1,84 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using GreetingWithErrors1 = AWS_PROTOCOL_TEST_SUITE; +using JsonProtocolClient = Aws::JsonProtocol::JsonProtocolClient; +using namespace Aws::JsonProtocol::Model; + +AWS_PROTOCOL_TEST(GreetingWithErrors1, AwsJson11FooErrorUsingXAmznErrorType) { + JsonProtocolClient client; + GreetingWithErrors1Request request; + + auto outcome = client.GreetingWithErrors1(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(GreetingWithErrors1, AwsJson11FooErrorUsingXAmznErrorTypeWithUri) { + JsonProtocolClient client; + GreetingWithErrors1Request request; + + auto outcome = client.GreetingWithErrors1(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(GreetingWithErrors1, AwsJson11FooErrorUsingXAmznErrorTypeWithUriAndNamespace) { + JsonProtocolClient client; + GreetingWithErrors1Request request; + + auto outcome = client.GreetingWithErrors1(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(GreetingWithErrors1, AwsJson11FooErrorUsingCode) { + JsonProtocolClient client; + GreetingWithErrors1Request request; + + auto outcome = client.GreetingWithErrors1(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(GreetingWithErrors1, AwsJson11FooErrorUsingCodeAndNamespace) { + JsonProtocolClient client; + GreetingWithErrors1Request request; + + auto outcome = client.GreetingWithErrors1(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(GreetingWithErrors1, AwsJson11FooErrorUsingCodeUriAndNamespace) { + JsonProtocolClient client; + GreetingWithErrors1Request request; + + auto outcome = client.GreetingWithErrors1(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(GreetingWithErrors1, AwsJson11FooErrorWithDunderType) { + JsonProtocolClient client; + GreetingWithErrors1Request request; + + auto outcome = client.GreetingWithErrors1(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(GreetingWithErrors1, AwsJson11FooErrorWithDunderTypeAndNamespace) { + JsonProtocolClient client; + GreetingWithErrors1Request request; + + auto outcome = client.GreetingWithErrors1(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(GreetingWithErrors1, AwsJson11FooErrorWithDunderTypeUriAndNamespace) { + JsonProtocolClient client; + GreetingWithErrors1Request request; + + auto outcome = client.GreetingWithErrors1(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/json/tests/GreetingWithErrorsTest.cpp b/generated/protocol-tests/tests/output/json/tests/GreetingWithErrorsTest.cpp new file mode 100644 index 00000000000..e0002a666a6 --- /dev/null +++ b/generated/protocol-tests/tests/output/json/tests/GreetingWithErrorsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using GreetingWithErrors = AWS_PROTOCOL_TEST_SUITE; +using JsonProtocolClient = Aws::JsonProtocol::JsonProtocolClient; +using namespace Aws::JsonProtocol::Model; + +AWS_PROTOCOL_TEST(GreetingWithErrors, AwsJson11InvalidGreetingError) { + JsonProtocolClient client; + GreetingWithErrorsRequest request; + + auto outcome = client.GreetingWithErrors(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/json/tests/JsonEnumsTest.cpp b/generated/protocol-tests/tests/output/json/tests/JsonEnumsTest.cpp new file mode 100644 index 00000000000..66542c0968f --- /dev/null +++ b/generated/protocol-tests/tests/output/json/tests/JsonEnumsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using JsonEnums = AWS_PROTOCOL_TEST_SUITE; +using JsonProtocolClient = Aws::JsonProtocol::JsonProtocolClient; +using namespace Aws::JsonProtocol::Model; + +AWS_PROTOCOL_TEST(JsonEnums, AwsJson11Enums) { + JsonProtocolClient client; + JsonEnumsRequest request; + + auto outcome = client.JsonEnums(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/json/tests/JsonIntEnumsTest.cpp b/generated/protocol-tests/tests/output/json/tests/JsonIntEnumsTest.cpp new file mode 100644 index 00000000000..43d2d6e5cc3 --- /dev/null +++ b/generated/protocol-tests/tests/output/json/tests/JsonIntEnumsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using JsonIntEnums = AWS_PROTOCOL_TEST_SUITE; +using JsonProtocolClient = Aws::JsonProtocol::JsonProtocolClient; +using namespace Aws::JsonProtocol::Model; + +AWS_PROTOCOL_TEST(JsonIntEnums, AwsJson11IntEnums) { + JsonProtocolClient client; + JsonIntEnumsRequest request; + + auto outcome = client.JsonIntEnums(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/json/tests/JsonUnionsTest.cpp b/generated/protocol-tests/tests/output/json/tests/JsonUnionsTest.cpp new file mode 100644 index 00000000000..b46068990d0 --- /dev/null +++ b/generated/protocol-tests/tests/output/json/tests/JsonUnionsTest.cpp @@ -0,0 +1,92 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using JsonUnions = AWS_PROTOCOL_TEST_SUITE; +using JsonProtocolClient = Aws::JsonProtocol::JsonProtocolClient; +using namespace Aws::JsonProtocol::Model; + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson11DeserializeStringUnionValue) { + JsonProtocolClient client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson11DeserializeBooleanUnionValue) { + JsonProtocolClient client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson11DeserializeNumberUnionValue) { + JsonProtocolClient client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson11DeserializeBlobUnionValue) { + JsonProtocolClient client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson11DeserializeTimestampUnionValue) { + JsonProtocolClient client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson11DeserializeEnumUnionValue) { + JsonProtocolClient client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson11DeserializeListUnionValue) { + JsonProtocolClient client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson11DeserializeMapUnionValue) { + JsonProtocolClient client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson11DeserializeStructureUnionValue) { + JsonProtocolClient client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson11DeserializeIgnoreType) { + JsonProtocolClient client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/json/tests/KitchenSinkOperationTest.cpp b/generated/protocol-tests/tests/output/json/tests/KitchenSinkOperationTest.cpp new file mode 100644 index 00000000000..4c4451ae841 --- /dev/null +++ b/generated/protocol-tests/tests/output/json/tests/KitchenSinkOperationTest.cpp @@ -0,0 +1,196 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using KitchenSinkOperation = AWS_PROTOCOL_TEST_SUITE; +using JsonProtocolClient = Aws::JsonProtocol::JsonProtocolClient; +using namespace Aws::JsonProtocol::Model; + +AWS_PROTOCOL_TEST(KitchenSinkOperation, parses_operations_with_empty_json_bodies) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + + auto outcome = client.KitchenSinkOperation(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, parses_string_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + + auto outcome = client.KitchenSinkOperation(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, parses_integer_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + + auto outcome = client.KitchenSinkOperation(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, parses_long_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + + auto outcome = client.KitchenSinkOperation(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, parses_float_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + + auto outcome = client.KitchenSinkOperation(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, parses_double_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + + auto outcome = client.KitchenSinkOperation(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, parses_boolean_shapes_true) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + + auto outcome = client.KitchenSinkOperation(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, parses_boolean_false) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + + auto outcome = client.KitchenSinkOperation(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, parses_blob_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + + auto outcome = client.KitchenSinkOperation(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, parses_timestamp_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + + auto outcome = client.KitchenSinkOperation(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, parses_iso8601_timestamps) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + + auto outcome = client.KitchenSinkOperation(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, parses_httpdate_timestamps) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + + auto outcome = client.KitchenSinkOperation(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, parses_list_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + + auto outcome = client.KitchenSinkOperation(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, parses_list_of_map_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + + auto outcome = client.KitchenSinkOperation(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, parses_list_of_list_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + + auto outcome = client.KitchenSinkOperation(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, parses_list_of_structure_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + + auto outcome = client.KitchenSinkOperation(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, parses_list_of_recursive_structure_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + + auto outcome = client.KitchenSinkOperation(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, parses_map_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + + auto outcome = client.KitchenSinkOperation(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, parses_map_of_list_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + + auto outcome = client.KitchenSinkOperation(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, parses_map_of_map_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + + auto outcome = client.KitchenSinkOperation(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, parses_map_of_structure_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + + auto outcome = client.KitchenSinkOperation(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, parses_map_of_recursive_structure_shapes) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + + auto outcome = client.KitchenSinkOperation(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(KitchenSinkOperation, parses_the_request_id_from_the_response) { + JsonProtocolClient client; + KitchenSinkOperationRequest request; + + auto outcome = client.KitchenSinkOperation(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/json/tests/NullOperationTest.cpp b/generated/protocol-tests/tests/output/json/tests/NullOperationTest.cpp new file mode 100644 index 00000000000..5ccac101e13 --- /dev/null +++ b/generated/protocol-tests/tests/output/json/tests/NullOperationTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using NullOperation = AWS_PROTOCOL_TEST_SUITE; +using JsonProtocolClient = Aws::JsonProtocol::JsonProtocolClient; +using namespace Aws::JsonProtocol::Model; + +AWS_PROTOCOL_TEST(NullOperation, AwsJson11StructuresDontDeserializeNullValues) { + JsonProtocolClient client; + NullOperationRequest request; + + auto outcome = client.NullOperation(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/json/tests/PutAndGetInlineDocumentsTest.cpp b/generated/protocol-tests/tests/output/json/tests/PutAndGetInlineDocumentsTest.cpp new file mode 100644 index 00000000000..38e61cf5db6 --- /dev/null +++ b/generated/protocol-tests/tests/output/json/tests/PutAndGetInlineDocumentsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using PutAndGetInlineDocuments = AWS_PROTOCOL_TEST_SUITE; +using JsonProtocolClient = Aws::JsonProtocol::JsonProtocolClient; +using namespace Aws::JsonProtocol::Model; + +AWS_PROTOCOL_TEST(PutAndGetInlineDocuments, PutAndGetInlineDocumentsInput) { + JsonProtocolClient client; + PutAndGetInlineDocumentsRequest request; + + auto outcome = client.PutAndGetInlineDocuments(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/json/tests/SimpleScalarPropertiesTest.cpp b/generated/protocol-tests/tests/output/json/tests/SimpleScalarPropertiesTest.cpp new file mode 100644 index 00000000000..143498d48c3 --- /dev/null +++ b/generated/protocol-tests/tests/output/json/tests/SimpleScalarPropertiesTest.cpp @@ -0,0 +1,36 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using SimpleScalarProperties = AWS_PROTOCOL_TEST_SUITE; +using JsonProtocolClient = Aws::JsonProtocol::JsonProtocolClient; +using namespace Aws::JsonProtocol::Model; + +AWS_PROTOCOL_TEST(SimpleScalarProperties, AwsJson11SupportsNaNFloatInputs) { + JsonProtocolClient client; + SimpleScalarPropertiesRequest request; + + auto outcome = client.SimpleScalarProperties(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, AwsJson11SupportsInfinityFloatInputs) { + JsonProtocolClient client; + SimpleScalarPropertiesRequest request; + + auto outcome = client.SimpleScalarProperties(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, AwsJson11SupportsNegativeInfinityFloatInputs) { + JsonProtocolClient client; + SimpleScalarPropertiesRequest request; + + auto outcome = client.SimpleScalarProperties(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/json_1_0/CMakeLists.txt b/generated/protocol-tests/tests/output/json_1_0/CMakeLists.txt index e66335f9279..e3fd7c51979 100644 --- a/generated/protocol-tests/tests/output/json_1_0/CMakeLists.txt +++ b/generated/protocol-tests/tests/output/json_1_0/CMakeLists.txt @@ -6,6 +6,7 @@ add_project(json_1_0-output-protocol-tests file(GLOB AWS_JSON_1_0_OUTPUT_PROTOCOL_TESTS_SRC "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp" + "${CMAKE_CURRENT_SOURCE_DIR}/tests/*.cpp" ) if(MSVC AND BUILD_SHARED_LIBS) diff --git a/generated/protocol-tests/tests/output/json_1_0/tests/EmptyInputAndEmptyOutputTest.cpp b/generated/protocol-tests/tests/output/json_1_0/tests/EmptyInputAndEmptyOutputTest.cpp new file mode 100644 index 00000000000..61578268e5a --- /dev/null +++ b/generated/protocol-tests/tests/output/json_1_0/tests/EmptyInputAndEmptyOutputTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using EmptyInputAndEmptyOutput = AWS_PROTOCOL_TEST_SUITE; +using JSONRPC10Client = Aws::JSONRPC10::JSONRPC10Client; +using namespace Aws::JSONRPC10::Model; + +AWS_PROTOCOL_TEST(EmptyInputAndEmptyOutput, AwsJson10EmptyInputAndEmptyOutputSendJsonObject) { + JSONRPC10Client client; + EmptyInputAndEmptyOutputRequest request; + + auto outcome = client.EmptyInputAndEmptyOutput(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/json_1_0/tests/GreetingWithErrors0Test.cpp b/generated/protocol-tests/tests/output/json_1_0/tests/GreetingWithErrors0Test.cpp new file mode 100644 index 00000000000..1bee77abadf --- /dev/null +++ b/generated/protocol-tests/tests/output/json_1_0/tests/GreetingWithErrors0Test.cpp @@ -0,0 +1,84 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using GreetingWithErrors0 = AWS_PROTOCOL_TEST_SUITE; +using JSONRPC10Client = Aws::JSONRPC10::JSONRPC10Client; +using namespace Aws::JSONRPC10::Model; + +AWS_PROTOCOL_TEST(GreetingWithErrors0, AwsJson10FooErrorUsingXAmznErrorType) { + JSONRPC10Client client; + GreetingWithErrors0Request request; + + auto outcome = client.GreetingWithErrors0(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(GreetingWithErrors0, AwsJson10FooErrorUsingXAmznErrorTypeWithUri) { + JSONRPC10Client client; + GreetingWithErrors0Request request; + + auto outcome = client.GreetingWithErrors0(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(GreetingWithErrors0, AwsJson10FooErrorUsingXAmznErrorTypeWithUriAndNamespace) { + JSONRPC10Client client; + GreetingWithErrors0Request request; + + auto outcome = client.GreetingWithErrors0(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(GreetingWithErrors0, AwsJson10FooErrorUsingCode) { + JSONRPC10Client client; + GreetingWithErrors0Request request; + + auto outcome = client.GreetingWithErrors0(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(GreetingWithErrors0, AwsJson10FooErrorUsingCodeAndNamespace) { + JSONRPC10Client client; + GreetingWithErrors0Request request; + + auto outcome = client.GreetingWithErrors0(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(GreetingWithErrors0, AwsJson10FooErrorUsingCodeUriAndNamespace) { + JSONRPC10Client client; + GreetingWithErrors0Request request; + + auto outcome = client.GreetingWithErrors0(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(GreetingWithErrors0, AwsJson10FooErrorWithDunderType) { + JSONRPC10Client client; + GreetingWithErrors0Request request; + + auto outcome = client.GreetingWithErrors0(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(GreetingWithErrors0, AwsJson10FooErrorWithDunderTypeAndNamespace) { + JSONRPC10Client client; + GreetingWithErrors0Request request; + + auto outcome = client.GreetingWithErrors0(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(GreetingWithErrors0, AwsJson10FooErrorWithDunderTypeUriAndNamespace) { + JSONRPC10Client client; + GreetingWithErrors0Request request; + + auto outcome = client.GreetingWithErrors0(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/json_1_0/tests/GreetingWithErrors1Test.cpp b/generated/protocol-tests/tests/output/json_1_0/tests/GreetingWithErrors1Test.cpp new file mode 100644 index 00000000000..9a3e58c7b3b --- /dev/null +++ b/generated/protocol-tests/tests/output/json_1_0/tests/GreetingWithErrors1Test.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using GreetingWithErrors1 = AWS_PROTOCOL_TEST_SUITE; +using JSONRPC10Client = Aws::JSONRPC10::JSONRPC10Client; +using namespace Aws::JSONRPC10::Model; + +AWS_PROTOCOL_TEST(GreetingWithErrors1, AwsJson10ComplexError) { + JSONRPC10Client client; + GreetingWithErrors1Request request; + + auto outcome = client.GreetingWithErrors1(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(GreetingWithErrors1, AwsJson10EmptyComplexError) { + JSONRPC10Client client; + GreetingWithErrors1Request request; + + auto outcome = client.GreetingWithErrors1(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/json_1_0/tests/GreetingWithErrorsTest.cpp b/generated/protocol-tests/tests/output/json_1_0/tests/GreetingWithErrorsTest.cpp new file mode 100644 index 00000000000..5c5f086accc --- /dev/null +++ b/generated/protocol-tests/tests/output/json_1_0/tests/GreetingWithErrorsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using GreetingWithErrors = AWS_PROTOCOL_TEST_SUITE; +using JSONRPC10Client = Aws::JSONRPC10::JSONRPC10Client; +using namespace Aws::JSONRPC10::Model; + +AWS_PROTOCOL_TEST(GreetingWithErrors, AwsJson10InvalidGreetingError) { + JSONRPC10Client client; + GreetingWithErrorsRequest request; + + auto outcome = client.GreetingWithErrors(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/json_1_0/tests/JsonUnionsTest.cpp b/generated/protocol-tests/tests/output/json_1_0/tests/JsonUnionsTest.cpp new file mode 100644 index 00000000000..6c757d58800 --- /dev/null +++ b/generated/protocol-tests/tests/output/json_1_0/tests/JsonUnionsTest.cpp @@ -0,0 +1,108 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using JsonUnions = AWS_PROTOCOL_TEST_SUITE; +using JSONRPC10Client = Aws::JSONRPC10::JSONRPC10Client; +using namespace Aws::JSONRPC10::Model; + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson10DeserializeStringUnionValue) { + JSONRPC10Client client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson10DeserializeBooleanUnionValue) { + JSONRPC10Client client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson10DeserializeNumberUnionValue) { + JSONRPC10Client client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson10DeserializeBlobUnionValue) { + JSONRPC10Client client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson10DeserializeTimestampUnionValue) { + JSONRPC10Client client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson10DeserializeEnumUnionValue) { + JSONRPC10Client client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson10DeserializeIntEnumUnionValue) { + JSONRPC10Client client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson10DeserializeListUnionValue) { + JSONRPC10Client client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson10DeserializeMapUnionValue) { + JSONRPC10Client client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson10DeserializeStructureUnionValue) { + JSONRPC10Client client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson10DeserializeIgnoreType) { + JSONRPC10Client client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, AwsJson10DeserializeAllowNulls) { + JSONRPC10Client client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/json_1_0/tests/NoInputAndNoOutputTest.cpp b/generated/protocol-tests/tests/output/json_1_0/tests/NoInputAndNoOutputTest.cpp new file mode 100644 index 00000000000..b2da912b51e --- /dev/null +++ b/generated/protocol-tests/tests/output/json_1_0/tests/NoInputAndNoOutputTest.cpp @@ -0,0 +1,36 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using NoInputAndNoOutput = AWS_PROTOCOL_TEST_SUITE; +using JSONRPC10Client = Aws::JSONRPC10::JSONRPC10Client; +using namespace Aws::JSONRPC10::Model; + +AWS_PROTOCOL_TEST(NoInputAndNoOutput, AwsJson10HandlesEmptyOutputShape) { + JSONRPC10Client client; + NoInputAndNoOutputRequest request; + + auto outcome = client.NoInputAndNoOutput(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(NoInputAndNoOutput, AwsJson10HandlesUnexpectedJsonOutput) { + JSONRPC10Client client; + NoInputAndNoOutputRequest request; + + auto outcome = client.NoInputAndNoOutput(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(NoInputAndNoOutput, AwsJson10ServiceRespondsWithNoPayload) { + JSONRPC10Client client; + NoInputAndNoOutputRequest request; + + auto outcome = client.NoInputAndNoOutput(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/json_1_0/tests/NoInputAndOutputTest.cpp b/generated/protocol-tests/tests/output/json_1_0/tests/NoInputAndOutputTest.cpp new file mode 100644 index 00000000000..b1c852f2029 --- /dev/null +++ b/generated/protocol-tests/tests/output/json_1_0/tests/NoInputAndOutputTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using NoInputAndOutput = AWS_PROTOCOL_TEST_SUITE; +using JSONRPC10Client = Aws::JSONRPC10::JSONRPC10Client; +using namespace Aws::JSONRPC10::Model; + +AWS_PROTOCOL_TEST(NoInputAndOutput, AwsJson10NoInputAndOutput) { + JSONRPC10Client client; + NoInputAndOutputRequest request; + + auto outcome = client.NoInputAndOutput(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/json_1_0/tests/SimpleScalarPropertiesTest.cpp b/generated/protocol-tests/tests/output/json_1_0/tests/SimpleScalarPropertiesTest.cpp new file mode 100644 index 00000000000..da943f6a22d --- /dev/null +++ b/generated/protocol-tests/tests/output/json_1_0/tests/SimpleScalarPropertiesTest.cpp @@ -0,0 +1,36 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using SimpleScalarProperties = AWS_PROTOCOL_TEST_SUITE; +using JSONRPC10Client = Aws::JSONRPC10::JSONRPC10Client; +using namespace Aws::JSONRPC10::Model; + +AWS_PROTOCOL_TEST(SimpleScalarProperties, AwsJson10SupportsNaNFloatInputs) { + JSONRPC10Client client; + SimpleScalarPropertiesRequest request; + + auto outcome = client.SimpleScalarProperties(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, AwsJson10SupportsInfinityFloatInputs) { + JSONRPC10Client client; + SimpleScalarPropertiesRequest request; + + auto outcome = client.SimpleScalarProperties(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, AwsJson10SupportsNegativeInfinityFloatInputs) { + JSONRPC10Client client; + SimpleScalarPropertiesRequest request; + + auto outcome = client.SimpleScalarProperties(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/query/CMakeLists.txt b/generated/protocol-tests/tests/output/query/CMakeLists.txt index 204d66d0117..7d309397f54 100644 --- a/generated/protocol-tests/tests/output/query/CMakeLists.txt +++ b/generated/protocol-tests/tests/output/query/CMakeLists.txt @@ -6,6 +6,7 @@ add_project(query-output-protocol-tests file(GLOB AWS_QUERY_OUTPUT_PROTOCOL_TESTS_SRC "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp" + "${CMAKE_CURRENT_SOURCE_DIR}/tests/*.cpp" ) if(MSVC AND BUILD_SHARED_LIBS) diff --git a/generated/protocol-tests/tests/output/query/tests/DatetimeOffsetsTest.cpp b/generated/protocol-tests/tests/output/query/tests/DatetimeOffsetsTest.cpp new file mode 100644 index 00000000000..9d7b1b14ff5 --- /dev/null +++ b/generated/protocol-tests/tests/output/query/tests/DatetimeOffsetsTest.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using DatetimeOffsets = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(DatetimeOffsets, AwsQueryDateTimeWithNegativeOffset) { + QueryProtocolClient client; + DatetimeOffsetsRequest request; + + auto outcome = client.DatetimeOffsets(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(DatetimeOffsets, AwsQueryDateTimeWithPositiveOffset) { + QueryProtocolClient client; + DatetimeOffsetsRequest request; + + auto outcome = client.DatetimeOffsets(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/query/tests/EmptyInputAndEmptyOutputTest.cpp b/generated/protocol-tests/tests/output/query/tests/EmptyInputAndEmptyOutputTest.cpp new file mode 100644 index 00000000000..708022693de --- /dev/null +++ b/generated/protocol-tests/tests/output/query/tests/EmptyInputAndEmptyOutputTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using EmptyInputAndEmptyOutput = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(EmptyInputAndEmptyOutput, QueryEmptyInputAndEmptyOutput) { + QueryProtocolClient client; + EmptyInputAndEmptyOutputRequest request; + + auto outcome = client.EmptyInputAndEmptyOutput(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/query/tests/FlattenedXmlMapTest.cpp b/generated/protocol-tests/tests/output/query/tests/FlattenedXmlMapTest.cpp new file mode 100644 index 00000000000..2134fb36dc2 --- /dev/null +++ b/generated/protocol-tests/tests/output/query/tests/FlattenedXmlMapTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using FlattenedXmlMap = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(FlattenedXmlMap, QueryQueryFlattenedXmlMap) { + QueryProtocolClient client; + FlattenedXmlMapRequest request; + + auto outcome = client.FlattenedXmlMap(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/query/tests/FlattenedXmlMapWithXmlNameTest.cpp b/generated/protocol-tests/tests/output/query/tests/FlattenedXmlMapWithXmlNameTest.cpp new file mode 100644 index 00000000000..b88cfd440c2 --- /dev/null +++ b/generated/protocol-tests/tests/output/query/tests/FlattenedXmlMapWithXmlNameTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using FlattenedXmlMapWithXmlName = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(FlattenedXmlMapWithXmlName, QueryQueryFlattenedXmlMapWithXmlName) { + QueryProtocolClient client; + FlattenedXmlMapWithXmlNameRequest request; + + auto outcome = client.FlattenedXmlMapWithXmlName(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/query/tests/FlattenedXmlMapWithXmlNamespaceTest.cpp b/generated/protocol-tests/tests/output/query/tests/FlattenedXmlMapWithXmlNamespaceTest.cpp new file mode 100644 index 00000000000..ab7a5dd30f1 --- /dev/null +++ b/generated/protocol-tests/tests/output/query/tests/FlattenedXmlMapWithXmlNamespaceTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using FlattenedXmlMapWithXmlNamespace = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(FlattenedXmlMapWithXmlNamespace, QueryQueryFlattenedXmlMapWithXmlNamespace) { + QueryProtocolClient client; + FlattenedXmlMapWithXmlNamespaceRequest request; + + auto outcome = client.FlattenedXmlMapWithXmlNamespace(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/query/tests/FractionalSecondsTest.cpp b/generated/protocol-tests/tests/output/query/tests/FractionalSecondsTest.cpp new file mode 100644 index 00000000000..56e078ab3a9 --- /dev/null +++ b/generated/protocol-tests/tests/output/query/tests/FractionalSecondsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using FractionalSeconds = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(FractionalSeconds, AwsQueryDateTimeWithFractionalSeconds) { + QueryProtocolClient client; + FractionalSecondsRequest request; + + auto outcome = client.FractionalSeconds(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/query/tests/GreetingWithErrors0Test.cpp b/generated/protocol-tests/tests/output/query/tests/GreetingWithErrors0Test.cpp new file mode 100644 index 00000000000..7d1b49fa335 --- /dev/null +++ b/generated/protocol-tests/tests/output/query/tests/GreetingWithErrors0Test.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using GreetingWithErrors0 = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(GreetingWithErrors0, QueryInvalidGreetingError) { + QueryProtocolClient client; + GreetingWithErrors0Request request; + + auto outcome = client.GreetingWithErrors0(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/query/tests/GreetingWithErrors1Test.cpp b/generated/protocol-tests/tests/output/query/tests/GreetingWithErrors1Test.cpp new file mode 100644 index 00000000000..fe9769abd67 --- /dev/null +++ b/generated/protocol-tests/tests/output/query/tests/GreetingWithErrors1Test.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using GreetingWithErrors1 = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(GreetingWithErrors1, QueryCustomizedError) { + QueryProtocolClient client; + GreetingWithErrors1Request request; + + auto outcome = client.GreetingWithErrors1(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/query/tests/GreetingWithErrors2Test.cpp b/generated/protocol-tests/tests/output/query/tests/GreetingWithErrors2Test.cpp new file mode 100644 index 00000000000..de25c0786e0 --- /dev/null +++ b/generated/protocol-tests/tests/output/query/tests/GreetingWithErrors2Test.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using GreetingWithErrors2 = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(GreetingWithErrors2, QueryComplexError) { + QueryProtocolClient client; + GreetingWithErrors2Request request; + + auto outcome = client.GreetingWithErrors2(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/query/tests/GreetingWithErrorsTest.cpp b/generated/protocol-tests/tests/output/query/tests/GreetingWithErrorsTest.cpp new file mode 100644 index 00000000000..c8192927956 --- /dev/null +++ b/generated/protocol-tests/tests/output/query/tests/GreetingWithErrorsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using GreetingWithErrors = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(GreetingWithErrors, QueryGreetingWithErrors) { + QueryProtocolClient client; + GreetingWithErrorsRequest request; + + auto outcome = client.GreetingWithErrors(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/query/tests/IgnoresWrappingXmlNameTest.cpp b/generated/protocol-tests/tests/output/query/tests/IgnoresWrappingXmlNameTest.cpp new file mode 100644 index 00000000000..ee3a09752cc --- /dev/null +++ b/generated/protocol-tests/tests/output/query/tests/IgnoresWrappingXmlNameTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using IgnoresWrappingXmlName = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(IgnoresWrappingXmlName, QueryIgnoresWrappingXmlName) { + QueryProtocolClient client; + IgnoresWrappingXmlNameRequest request; + + auto outcome = client.IgnoresWrappingXmlName(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/query/tests/NoInputAndNoOutputTest.cpp b/generated/protocol-tests/tests/output/query/tests/NoInputAndNoOutputTest.cpp new file mode 100644 index 00000000000..72937d0c712 --- /dev/null +++ b/generated/protocol-tests/tests/output/query/tests/NoInputAndNoOutputTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using NoInputAndNoOutput = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(NoInputAndNoOutput, QueryNoInputAndNoOutput) { + QueryProtocolClient client; + NoInputAndNoOutputRequest request; + + auto outcome = client.NoInputAndNoOutput(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/query/tests/NoInputAndOutputTest.cpp b/generated/protocol-tests/tests/output/query/tests/NoInputAndOutputTest.cpp new file mode 100644 index 00000000000..ce0fd5fc3df --- /dev/null +++ b/generated/protocol-tests/tests/output/query/tests/NoInputAndOutputTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using NoInputAndOutput = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(NoInputAndOutput, QueryNoInputAndOutput) { + QueryProtocolClient client; + NoInputAndOutputRequest request; + + auto outcome = client.NoInputAndOutput(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/query/tests/RecursiveXmlShapesTest.cpp b/generated/protocol-tests/tests/output/query/tests/RecursiveXmlShapesTest.cpp new file mode 100644 index 00000000000..659408c78ea --- /dev/null +++ b/generated/protocol-tests/tests/output/query/tests/RecursiveXmlShapesTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using RecursiveXmlShapes = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(RecursiveXmlShapes, QueryRecursiveShapes) { + QueryProtocolClient client; + RecursiveXmlShapesRequest request; + + auto outcome = client.RecursiveXmlShapes(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/query/tests/SimpleScalarXmlPropertiesTest.cpp b/generated/protocol-tests/tests/output/query/tests/SimpleScalarXmlPropertiesTest.cpp new file mode 100644 index 00000000000..4ee3cbfd4e7 --- /dev/null +++ b/generated/protocol-tests/tests/output/query/tests/SimpleScalarXmlPropertiesTest.cpp @@ -0,0 +1,44 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using SimpleScalarXmlProperties = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(SimpleScalarXmlProperties, QuerySimpleScalarProperties) { + QueryProtocolClient client; + SimpleScalarXmlPropertiesRequest request; + + auto outcome = client.SimpleScalarXmlProperties(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(SimpleScalarXmlProperties, AwsQuerySupportsNaNFloatOutputs) { + QueryProtocolClient client; + SimpleScalarXmlPropertiesRequest request; + + auto outcome = client.SimpleScalarXmlProperties(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(SimpleScalarXmlProperties, AwsQuerySupportsInfinityFloatOutputs) { + QueryProtocolClient client; + SimpleScalarXmlPropertiesRequest request; + + auto outcome = client.SimpleScalarXmlProperties(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(SimpleScalarXmlProperties, AwsQuerySupportsNegativeInfinityFloatOutputs) { + QueryProtocolClient client; + SimpleScalarXmlPropertiesRequest request; + + auto outcome = client.SimpleScalarXmlProperties(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/query/tests/XmlBlobsTest.cpp b/generated/protocol-tests/tests/output/query/tests/XmlBlobsTest.cpp new file mode 100644 index 00000000000..e833e95a9ce --- /dev/null +++ b/generated/protocol-tests/tests/output/query/tests/XmlBlobsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlBlobs = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(XmlBlobs, QueryXmlBlobs) { + QueryProtocolClient client; + XmlBlobsRequest request; + + auto outcome = client.XmlBlobs(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/query/tests/XmlEmptyBlobsTest.cpp b/generated/protocol-tests/tests/output/query/tests/XmlEmptyBlobsTest.cpp new file mode 100644 index 00000000000..ca40d939a20 --- /dev/null +++ b/generated/protocol-tests/tests/output/query/tests/XmlEmptyBlobsTest.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlEmptyBlobs = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(XmlEmptyBlobs, QueryXmlEmptyBlobs) { + QueryProtocolClient client; + XmlEmptyBlobsRequest request; + + auto outcome = client.XmlEmptyBlobs(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(XmlEmptyBlobs, QueryXmlEmptySelfClosedBlobs) { + QueryProtocolClient client; + XmlEmptyBlobsRequest request; + + auto outcome = client.XmlEmptyBlobs(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/query/tests/XmlEmptyListsTest.cpp b/generated/protocol-tests/tests/output/query/tests/XmlEmptyListsTest.cpp new file mode 100644 index 00000000000..5e81d63c0c9 --- /dev/null +++ b/generated/protocol-tests/tests/output/query/tests/XmlEmptyListsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlEmptyLists = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(XmlEmptyLists, QueryXmlEmptyLists) { + QueryProtocolClient client; + XmlEmptyListsRequest request; + + auto outcome = client.XmlEmptyLists(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/query/tests/XmlEmptyMapsTest.cpp b/generated/protocol-tests/tests/output/query/tests/XmlEmptyMapsTest.cpp new file mode 100644 index 00000000000..ea63958efd8 --- /dev/null +++ b/generated/protocol-tests/tests/output/query/tests/XmlEmptyMapsTest.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlEmptyMaps = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(XmlEmptyMaps, QueryXmlEmptyMaps) { + QueryProtocolClient client; + XmlEmptyMapsRequest request; + + auto outcome = client.XmlEmptyMaps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(XmlEmptyMaps, QueryXmlEmptySelfClosedMaps) { + QueryProtocolClient client; + XmlEmptyMapsRequest request; + + auto outcome = client.XmlEmptyMaps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/query/tests/XmlEnumsTest.cpp b/generated/protocol-tests/tests/output/query/tests/XmlEnumsTest.cpp new file mode 100644 index 00000000000..e3af07a6a53 --- /dev/null +++ b/generated/protocol-tests/tests/output/query/tests/XmlEnumsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlEnums = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(XmlEnums, QueryXmlEnums) { + QueryProtocolClient client; + XmlEnumsRequest request; + + auto outcome = client.XmlEnums(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/query/tests/XmlIntEnumsTest.cpp b/generated/protocol-tests/tests/output/query/tests/XmlIntEnumsTest.cpp new file mode 100644 index 00000000000..f24bd051582 --- /dev/null +++ b/generated/protocol-tests/tests/output/query/tests/XmlIntEnumsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlIntEnums = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(XmlIntEnums, QueryXmlIntEnums) { + QueryProtocolClient client; + XmlIntEnumsRequest request; + + auto outcome = client.XmlIntEnums(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/query/tests/XmlListsTest.cpp b/generated/protocol-tests/tests/output/query/tests/XmlListsTest.cpp new file mode 100644 index 00000000000..76ec5b3ec4d --- /dev/null +++ b/generated/protocol-tests/tests/output/query/tests/XmlListsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlLists = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(XmlLists, QueryXmlLists) { + QueryProtocolClient client; + XmlListsRequest request; + + auto outcome = client.XmlLists(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/query/tests/XmlMapsTest.cpp b/generated/protocol-tests/tests/output/query/tests/XmlMapsTest.cpp new file mode 100644 index 00000000000..75b7e0b9629 --- /dev/null +++ b/generated/protocol-tests/tests/output/query/tests/XmlMapsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlMaps = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(XmlMaps, QueryXmlMaps) { + QueryProtocolClient client; + XmlMapsRequest request; + + auto outcome = client.XmlMaps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/query/tests/XmlMapsXmlNameTest.cpp b/generated/protocol-tests/tests/output/query/tests/XmlMapsXmlNameTest.cpp new file mode 100644 index 00000000000..2f52a6bf953 --- /dev/null +++ b/generated/protocol-tests/tests/output/query/tests/XmlMapsXmlNameTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlMapsXmlName = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(XmlMapsXmlName, QueryQueryXmlMapsXmlName) { + QueryProtocolClient client; + XmlMapsXmlNameRequest request; + + auto outcome = client.XmlMapsXmlName(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/query/tests/XmlNamespacesTest.cpp b/generated/protocol-tests/tests/output/query/tests/XmlNamespacesTest.cpp new file mode 100644 index 00000000000..28c5b1d901a --- /dev/null +++ b/generated/protocol-tests/tests/output/query/tests/XmlNamespacesTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlNamespaces = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(XmlNamespaces, QueryXmlNamespaces) { + QueryProtocolClient client; + XmlNamespacesRequest request; + + auto outcome = client.XmlNamespaces(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/query/tests/XmlTimestampsTest.cpp b/generated/protocol-tests/tests/output/query/tests/XmlTimestampsTest.cpp new file mode 100644 index 00000000000..9e41ac6a833 --- /dev/null +++ b/generated/protocol-tests/tests/output/query/tests/XmlTimestampsTest.cpp @@ -0,0 +1,68 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlTimestamps = AWS_PROTOCOL_TEST_SUITE; +using QueryProtocolClient = Aws::QueryProtocol::QueryProtocolClient; +using namespace Aws::QueryProtocol::Model; + +AWS_PROTOCOL_TEST(XmlTimestamps, QueryXmlTimestamps) { + QueryProtocolClient client; + XmlTimestampsRequest request; + + auto outcome = client.XmlTimestamps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(XmlTimestamps, QueryXmlTimestampsWithDateTimeFormat) { + QueryProtocolClient client; + XmlTimestampsRequest request; + + auto outcome = client.XmlTimestamps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(XmlTimestamps, QueryXmlTimestampsWithDateTimeOnTargetFormat) { + QueryProtocolClient client; + XmlTimestampsRequest request; + + auto outcome = client.XmlTimestamps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(XmlTimestamps, QueryXmlTimestampsWithEpochSecondsFormat) { + QueryProtocolClient client; + XmlTimestampsRequest request; + + auto outcome = client.XmlTimestamps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(XmlTimestamps, QueryXmlTimestampsWithEpochSecondsOnTargetFormat) { + QueryProtocolClient client; + XmlTimestampsRequest request; + + auto outcome = client.XmlTimestamps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(XmlTimestamps, QueryXmlTimestampsWithHttpDateFormat) { + QueryProtocolClient client; + XmlTimestampsRequest request; + + auto outcome = client.XmlTimestamps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(XmlTimestamps, QueryXmlTimestampsWithHttpDateOnTargetFormat) { + QueryProtocolClient client; + XmlTimestampsRequest request; + + auto outcome = client.XmlTimestamps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/CMakeLists.txt b/generated/protocol-tests/tests/output/rest-json/CMakeLists.txt index 7091253e2a8..2f834766148 100644 --- a/generated/protocol-tests/tests/output/rest-json/CMakeLists.txt +++ b/generated/protocol-tests/tests/output/rest-json/CMakeLists.txt @@ -6,6 +6,7 @@ add_project(rest-json-output-protocol-tests file(GLOB AWS_REST_JSON_OUTPUT_PROTOCOL_TESTS_SRC "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp" + "${CMAKE_CURRENT_SOURCE_DIR}/tests/*.cpp" ) if(MSVC AND BUILD_SHARED_LIBS) diff --git a/generated/protocol-tests/tests/output/rest-json/tests/DatetimeOffsetsTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/DatetimeOffsetsTest.cpp new file mode 100644 index 00000000000..da6e66049e2 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/DatetimeOffsetsTest.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using DatetimeOffsets = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(DatetimeOffsets, RestJsonDateTimeWithNegativeOffset) { + RestJsonProtocolClient client; + DatetimeOffsetsRequest request; + + auto outcome = client.DatetimeOffsets(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(DatetimeOffsets, RestJsonDateTimeWithPositiveOffset) { + RestJsonProtocolClient client; + DatetimeOffsetsRequest request; + + auto outcome = client.DatetimeOffsets(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/DocumentTypeAsMapValueTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/DocumentTypeAsMapValueTest.cpp new file mode 100644 index 00000000000..db78528ae70 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/DocumentTypeAsMapValueTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using DocumentTypeAsMapValue = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(DocumentTypeAsMapValue, DocumentTypeAsMapValueOutput) { + RestJsonProtocolClient client; + DocumentTypeAsMapValueRequest request; + + auto outcome = client.DocumentTypeAsMapValue(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/DocumentTypeAsPayloadTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/DocumentTypeAsPayloadTest.cpp new file mode 100644 index 00000000000..316e7a8f2e8 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/DocumentTypeAsPayloadTest.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using DocumentTypeAsPayload = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(DocumentTypeAsPayload, DocumentTypeAsPayloadOutput) { + RestJsonProtocolClient client; + DocumentTypeAsPayloadRequest request; + + auto outcome = client.DocumentTypeAsPayload(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(DocumentTypeAsPayload, DocumentTypeAsPayloadOutputString) { + RestJsonProtocolClient client; + DocumentTypeAsPayloadRequest request; + + auto outcome = client.DocumentTypeAsPayload(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/DocumentTypeTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/DocumentTypeTest.cpp new file mode 100644 index 00000000000..ef675cc565a --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/DocumentTypeTest.cpp @@ -0,0 +1,52 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using DocumentType = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(DocumentType, DocumentOutput) { + RestJsonProtocolClient client; + DocumentTypeRequest request; + + auto outcome = client.DocumentType(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(DocumentType, DocumentOutputString) { + RestJsonProtocolClient client; + DocumentTypeRequest request; + + auto outcome = client.DocumentType(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(DocumentType, DocumentOutputNumber) { + RestJsonProtocolClient client; + DocumentTypeRequest request; + + auto outcome = client.DocumentType(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(DocumentType, DocumentOutputBoolean) { + RestJsonProtocolClient client; + DocumentTypeRequest request; + + auto outcome = client.DocumentType(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(DocumentType, DocumentOutputArray) { + RestJsonProtocolClient client; + DocumentTypeRequest request; + + auto outcome = client.DocumentType(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/EmptyInputAndEmptyOutputTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/EmptyInputAndEmptyOutputTest.cpp new file mode 100644 index 00000000000..b14ab074bba --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/EmptyInputAndEmptyOutputTest.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using EmptyInputAndEmptyOutput = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(EmptyInputAndEmptyOutput, RestJsonEmptyInputAndEmptyOutput) { + RestJsonProtocolClient client; + EmptyInputAndEmptyOutputRequest request; + + auto outcome = client.EmptyInputAndEmptyOutput(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(EmptyInputAndEmptyOutput, RestJsonEmptyInputAndEmptyOutputJsonObjectOutput) { + RestJsonProtocolClient client; + EmptyInputAndEmptyOutputRequest request; + + auto outcome = client.EmptyInputAndEmptyOutput(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/FractionalSecondsTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/FractionalSecondsTest.cpp new file mode 100644 index 00000000000..f6ccb1fb507 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/FractionalSecondsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using FractionalSeconds = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(FractionalSeconds, RestJsonDateTimeWithFractionalSeconds) { + RestJsonProtocolClient client; + FractionalSecondsRequest request; + + auto outcome = client.FractionalSeconds(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/GreetingWithErrors0Test.cpp b/generated/protocol-tests/tests/output/rest-json/tests/GreetingWithErrors0Test.cpp new file mode 100644 index 00000000000..a4eb89bd5c5 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/GreetingWithErrors0Test.cpp @@ -0,0 +1,84 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using GreetingWithErrors0 = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(GreetingWithErrors0, RestJsonFooErrorUsingXAmznErrorType) { + RestJsonProtocolClient client; + GreetingWithErrors0Request request; + + auto outcome = client.GreetingWithErrors0(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(GreetingWithErrors0, RestJsonFooErrorUsingXAmznErrorTypeWithUri) { + RestJsonProtocolClient client; + GreetingWithErrors0Request request; + + auto outcome = client.GreetingWithErrors0(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(GreetingWithErrors0, RestJsonFooErrorUsingXAmznErrorTypeWithUriAndNamespace) { + RestJsonProtocolClient client; + GreetingWithErrors0Request request; + + auto outcome = client.GreetingWithErrors0(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(GreetingWithErrors0, RestJsonFooErrorUsingCode) { + RestJsonProtocolClient client; + GreetingWithErrors0Request request; + + auto outcome = client.GreetingWithErrors0(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(GreetingWithErrors0, RestJsonFooErrorUsingCodeAndNamespace) { + RestJsonProtocolClient client; + GreetingWithErrors0Request request; + + auto outcome = client.GreetingWithErrors0(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(GreetingWithErrors0, RestJsonFooErrorUsingCodeUriAndNamespace) { + RestJsonProtocolClient client; + GreetingWithErrors0Request request; + + auto outcome = client.GreetingWithErrors0(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(GreetingWithErrors0, RestJsonFooErrorWithDunderType) { + RestJsonProtocolClient client; + GreetingWithErrors0Request request; + + auto outcome = client.GreetingWithErrors0(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(GreetingWithErrors0, RestJsonFooErrorWithDunderTypeAndNamespace) { + RestJsonProtocolClient client; + GreetingWithErrors0Request request; + + auto outcome = client.GreetingWithErrors0(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(GreetingWithErrors0, RestJsonFooErrorWithDunderTypeUriAndNamespace) { + RestJsonProtocolClient client; + GreetingWithErrors0Request request; + + auto outcome = client.GreetingWithErrors0(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/GreetingWithErrors1Test.cpp b/generated/protocol-tests/tests/output/rest-json/tests/GreetingWithErrors1Test.cpp new file mode 100644 index 00000000000..930815fd0d2 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/GreetingWithErrors1Test.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using GreetingWithErrors1 = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(GreetingWithErrors1, RestJsonComplexErrorWithNoMessage) { + RestJsonProtocolClient client; + GreetingWithErrors1Request request; + + auto outcome = client.GreetingWithErrors1(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(GreetingWithErrors1, RestJsonEmptyComplexErrorWithNoMessage) { + RestJsonProtocolClient client; + GreetingWithErrors1Request request; + + auto outcome = client.GreetingWithErrors1(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/GreetingWithErrors2Test.cpp b/generated/protocol-tests/tests/output/rest-json/tests/GreetingWithErrors2Test.cpp new file mode 100644 index 00000000000..362edbffc20 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/GreetingWithErrors2Test.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using GreetingWithErrors2 = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(GreetingWithErrors2, RestJsonInvalidGreetingError) { + RestJsonProtocolClient client; + GreetingWithErrors2Request request; + + auto outcome = client.GreetingWithErrors2(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/GreetingWithErrorsTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/GreetingWithErrorsTest.cpp new file mode 100644 index 00000000000..c19e096dd8d --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/GreetingWithErrorsTest.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using GreetingWithErrors = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(GreetingWithErrors, RestJsonGreetingWithErrors) { + RestJsonProtocolClient client; + GreetingWithErrorsRequest request; + + auto outcome = client.GreetingWithErrors(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(GreetingWithErrors, RestJsonGreetingWithErrorsNoPayload) { + RestJsonProtocolClient client; + GreetingWithErrorsRequest request; + + auto outcome = client.GreetingWithErrors(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/HttpEnumPayloadTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/HttpEnumPayloadTest.cpp new file mode 100644 index 00000000000..90ab7e30e3f --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/HttpEnumPayloadTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpEnumPayload = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(HttpEnumPayload, RestJsonEnumPayloadResponse) { + RestJsonProtocolClient client; + HttpEnumPayloadRequest request; + + auto outcome = client.HttpEnumPayload(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/HttpPayloadTraitsTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/HttpPayloadTraitsTest.cpp new file mode 100644 index 00000000000..cc171ab28af --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/HttpPayloadTraitsTest.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpPayloadTraits = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(HttpPayloadTraits, RestJsonHttpPayloadTraitsWithBlob) { + RestJsonProtocolClient client; + HttpPayloadTraitsRequest request; + + auto outcome = client.HttpPayloadTraits(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(HttpPayloadTraits, RestJsonHttpPayloadTraitsWithNoBlobBody) { + RestJsonProtocolClient client; + HttpPayloadTraitsRequest request; + + auto outcome = client.HttpPayloadTraits(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/HttpPayloadWithStructureTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/HttpPayloadWithStructureTest.cpp new file mode 100644 index 00000000000..302e9f7400f --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/HttpPayloadWithStructureTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpPayloadWithStructure = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(HttpPayloadWithStructure, RestJsonHttpPayloadWithStructure) { + RestJsonProtocolClient client; + HttpPayloadWithStructureRequest request; + + auto outcome = client.HttpPayloadWithStructure(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/HttpPayloadWithUnionTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/HttpPayloadWithUnionTest.cpp new file mode 100644 index 00000000000..8e119e12718 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/HttpPayloadWithUnionTest.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpPayloadWithUnion = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(HttpPayloadWithUnion, RestJsonHttpPayloadWithUnion) { + RestJsonProtocolClient client; + HttpPayloadWithUnionRequest request; + + auto outcome = client.HttpPayloadWithUnion(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(HttpPayloadWithUnion, RestJsonHttpPayloadWithUnsetUnion) { + RestJsonProtocolClient client; + HttpPayloadWithUnionRequest request; + + auto outcome = client.HttpPayloadWithUnion(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/HttpPrefixHeadersInResponseTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/HttpPrefixHeadersInResponseTest.cpp new file mode 100644 index 00000000000..692edf0c15a --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/HttpPrefixHeadersInResponseTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpPrefixHeadersInResponse = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(HttpPrefixHeadersInResponse, HttpPrefixHeadersResponse) { + RestJsonProtocolClient client; + HttpPrefixHeadersInResponseRequest request; + + auto outcome = client.HttpPrefixHeadersInResponse(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/HttpPrefixHeadersTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/HttpPrefixHeadersTest.cpp new file mode 100644 index 00000000000..717834b8812 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/HttpPrefixHeadersTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpPrefixHeaders = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(HttpPrefixHeaders, RestJsonHttpPrefixHeadersArePresent) { + RestJsonProtocolClient client; + HttpPrefixHeadersRequest request; + + auto outcome = client.HttpPrefixHeaders(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/HttpResponseCodeTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/HttpResponseCodeTest.cpp new file mode 100644 index 00000000000..b57713c1a7f --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/HttpResponseCodeTest.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpResponseCode = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(HttpResponseCode, RestJsonHttpResponseCode) { + RestJsonProtocolClient client; + HttpResponseCodeRequest request; + + auto outcome = client.HttpResponseCode(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(HttpResponseCode, RestJsonHttpResponseCodeWithNoPayload) { + RestJsonProtocolClient client; + HttpResponseCodeRequest request; + + auto outcome = client.HttpResponseCode(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/HttpStringPayloadTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/HttpStringPayloadTest.cpp new file mode 100644 index 00000000000..00a1bd6a873 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/HttpStringPayloadTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpStringPayload = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(HttpStringPayload, RestJsonStringPayloadResponse) { + RestJsonProtocolClient client; + HttpStringPayloadRequest request; + + auto outcome = client.HttpStringPayload(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/IgnoreQueryParamsInResponseTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/IgnoreQueryParamsInResponseTest.cpp new file mode 100644 index 00000000000..4fb33ebffc1 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/IgnoreQueryParamsInResponseTest.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using IgnoreQueryParamsInResponse = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(IgnoreQueryParamsInResponse, RestJsonIgnoreQueryParamsInResponse) { + RestJsonProtocolClient client; + IgnoreQueryParamsInResponseRequest request; + + auto outcome = client.IgnoreQueryParamsInResponse(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(IgnoreQueryParamsInResponse, RestJsonIgnoreQueryParamsInResponseNoPayload) { + RestJsonProtocolClient client; + IgnoreQueryParamsInResponseRequest request; + + auto outcome = client.IgnoreQueryParamsInResponse(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/InputAndOutputWithHeadersTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/InputAndOutputWithHeadersTest.cpp new file mode 100644 index 00000000000..4552da6500e --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/InputAndOutputWithHeadersTest.cpp @@ -0,0 +1,92 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using InputAndOutputWithHeaders = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, RestJsonInputAndOutputWithStringHeaders) { + RestJsonProtocolClient client; + InputAndOutputWithHeadersRequest request; + + auto outcome = client.InputAndOutputWithHeaders(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, RestJsonInputAndOutputWithQuotedStringHeaders) { + RestJsonProtocolClient client; + InputAndOutputWithHeadersRequest request; + + auto outcome = client.InputAndOutputWithHeaders(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, RestJsonInputAndOutputWithNumericHeaders) { + RestJsonProtocolClient client; + InputAndOutputWithHeadersRequest request; + + auto outcome = client.InputAndOutputWithHeaders(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, RestJsonInputAndOutputWithBooleanHeaders) { + RestJsonProtocolClient client; + InputAndOutputWithHeadersRequest request; + + auto outcome = client.InputAndOutputWithHeaders(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, RestJsonInputAndOutputWithTimestampHeaders) { + RestJsonProtocolClient client; + InputAndOutputWithHeadersRequest request; + + auto outcome = client.InputAndOutputWithHeaders(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, RestJsonInputAndOutputWithEnumHeaders) { + RestJsonProtocolClient client; + InputAndOutputWithHeadersRequest request; + + auto outcome = client.InputAndOutputWithHeaders(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, RestJsonInputAndOutputWithIntEnumHeaders) { + RestJsonProtocolClient client; + InputAndOutputWithHeadersRequest request; + + auto outcome = client.InputAndOutputWithHeaders(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, RestJsonSupportsNaNFloatHeaderOutputs) { + RestJsonProtocolClient client; + InputAndOutputWithHeadersRequest request; + + auto outcome = client.InputAndOutputWithHeaders(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, RestJsonSupportsInfinityFloatHeaderOutputs) { + RestJsonProtocolClient client; + InputAndOutputWithHeadersRequest request; + + auto outcome = client.InputAndOutputWithHeaders(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, RestJsonSupportsNegativeInfinityFloatHeaderOutputs) { + RestJsonProtocolClient client; + InputAndOutputWithHeadersRequest request; + + auto outcome = client.InputAndOutputWithHeaders(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/JsonBlobsTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/JsonBlobsTest.cpp new file mode 100644 index 00000000000..6a00e7a14b7 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/JsonBlobsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using JsonBlobs = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(JsonBlobs, RestJsonJsonBlobs) { + RestJsonProtocolClient client; + JsonBlobsRequest request; + + auto outcome = client.JsonBlobs(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/JsonEnumsTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/JsonEnumsTest.cpp new file mode 100644 index 00000000000..12d5a363f28 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/JsonEnumsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using JsonEnums = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(JsonEnums, RestJsonJsonEnums) { + RestJsonProtocolClient client; + JsonEnumsRequest request; + + auto outcome = client.JsonEnums(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/JsonIntEnumsTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/JsonIntEnumsTest.cpp new file mode 100644 index 00000000000..f28e6aaf836 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/JsonIntEnumsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using JsonIntEnums = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(JsonIntEnums, RestJsonJsonIntEnums) { + RestJsonProtocolClient client; + JsonIntEnumsRequest request; + + auto outcome = client.JsonIntEnums(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/JsonListsTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/JsonListsTest.cpp new file mode 100644 index 00000000000..cdbd459da2c --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/JsonListsTest.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using JsonLists = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(JsonLists, RestJsonLists) { + RestJsonProtocolClient client; + JsonListsRequest request; + + auto outcome = client.JsonLists(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonLists, RestJsonListsEmpty) { + RestJsonProtocolClient client; + JsonListsRequest request; + + auto outcome = client.JsonLists(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/JsonMapsTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/JsonMapsTest.cpp new file mode 100644 index 00000000000..f33286225c1 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/JsonMapsTest.cpp @@ -0,0 +1,44 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using JsonMaps = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(JsonMaps, RestJsonJsonMaps) { + RestJsonProtocolClient client; + JsonMapsRequest request; + + auto outcome = client.JsonMaps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonMaps, RestJsonDeserializesZeroValuesInMaps) { + RestJsonProtocolClient client; + JsonMapsRequest request; + + auto outcome = client.JsonMaps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonMaps, RestJsonDeserializesDenseSetMap) { + RestJsonProtocolClient client; + JsonMapsRequest request; + + auto outcome = client.JsonMaps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonMaps, RestJsonDeserializesDenseSetMapAndSkipsNull) { + RestJsonProtocolClient client; + JsonMapsRequest request; + + auto outcome = client.JsonMaps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/JsonTimestampsTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/JsonTimestampsTest.cpp new file mode 100644 index 00000000000..e720b4d12ba --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/JsonTimestampsTest.cpp @@ -0,0 +1,68 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using JsonTimestamps = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(JsonTimestamps, RestJsonJsonTimestamps) { + RestJsonProtocolClient client; + JsonTimestampsRequest request; + + auto outcome = client.JsonTimestamps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonTimestamps, RestJsonJsonTimestampsWithDateTimeFormat) { + RestJsonProtocolClient client; + JsonTimestampsRequest request; + + auto outcome = client.JsonTimestamps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonTimestamps, RestJsonJsonTimestampsWithDateTimeOnTargetFormat) { + RestJsonProtocolClient client; + JsonTimestampsRequest request; + + auto outcome = client.JsonTimestamps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonTimestamps, RestJsonJsonTimestampsWithEpochSecondsFormat) { + RestJsonProtocolClient client; + JsonTimestampsRequest request; + + auto outcome = client.JsonTimestamps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonTimestamps, RestJsonJsonTimestampsWithEpochSecondsOnTargetFormat) { + RestJsonProtocolClient client; + JsonTimestampsRequest request; + + auto outcome = client.JsonTimestamps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonTimestamps, RestJsonJsonTimestampsWithHttpDateFormat) { + RestJsonProtocolClient client; + JsonTimestampsRequest request; + + auto outcome = client.JsonTimestamps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonTimestamps, RestJsonJsonTimestampsWithHttpDateOnTargetFormat) { + RestJsonProtocolClient client; + JsonTimestampsRequest request; + + auto outcome = client.JsonTimestamps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/JsonUnionsTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/JsonUnionsTest.cpp new file mode 100644 index 00000000000..e316db7e5cf --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/JsonUnionsTest.cpp @@ -0,0 +1,92 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using JsonUnions = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(JsonUnions, RestJsonDeserializeStringUnionValue) { + RestJsonProtocolClient client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, RestJsonDeserializeBooleanUnionValue) { + RestJsonProtocolClient client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, RestJsonDeserializeNumberUnionValue) { + RestJsonProtocolClient client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, RestJsonDeserializeBlobUnionValue) { + RestJsonProtocolClient client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, RestJsonDeserializeTimestampUnionValue) { + RestJsonProtocolClient client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, RestJsonDeserializeEnumUnionValue) { + RestJsonProtocolClient client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, RestJsonDeserializeListUnionValue) { + RestJsonProtocolClient client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, RestJsonDeserializeMapUnionValue) { + RestJsonProtocolClient client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, RestJsonDeserializeStructureUnionValue) { + RestJsonProtocolClient client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(JsonUnions, RestJsonDeserializeIgnoreType) { + RestJsonProtocolClient client; + JsonUnionsRequest request; + + auto outcome = client.JsonUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/MediaTypeHeaderTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/MediaTypeHeaderTest.cpp new file mode 100644 index 00000000000..95b279870c3 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/MediaTypeHeaderTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using MediaTypeHeader = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(MediaTypeHeader, MediaTypeHeaderOutputBase64) { + RestJsonProtocolClient client; + MediaTypeHeaderRequest request; + + auto outcome = client.MediaTypeHeader(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/NoInputAndNoOutputTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/NoInputAndNoOutputTest.cpp new file mode 100644 index 00000000000..e357cb7c449 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/NoInputAndNoOutputTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using NoInputAndNoOutput = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(NoInputAndNoOutput, RestJsonNoInputAndNoOutput) { + RestJsonProtocolClient client; + NoInputAndNoOutputRequest request; + + auto outcome = client.NoInputAndNoOutput(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/NoInputAndOutputTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/NoInputAndOutputTest.cpp new file mode 100644 index 00000000000..c7b5b609eb1 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/NoInputAndOutputTest.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using NoInputAndOutput = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(NoInputAndOutput, RestJsonNoInputAndOutputWithJson) { + RestJsonProtocolClient client; + NoInputAndOutputRequest request; + + auto outcome = client.NoInputAndOutput(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(NoInputAndOutput, RestJsonNoInputAndOutputNoPayload) { + RestJsonProtocolClient client; + NoInputAndOutputRequest request; + + auto outcome = client.NoInputAndOutput(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/PostUnionWithJsonNameTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/PostUnionWithJsonNameTest.cpp new file mode 100644 index 00000000000..84db4b28ab0 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/PostUnionWithJsonNameTest.cpp @@ -0,0 +1,36 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using PostUnionWithJsonName = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(PostUnionWithJsonName, PostUnionWithJsonNameResponse1) { + RestJsonProtocolClient client; + PostUnionWithJsonNameRequest request; + + auto outcome = client.PostUnionWithJsonName(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(PostUnionWithJsonName, PostUnionWithJsonNameResponse2) { + RestJsonProtocolClient client; + PostUnionWithJsonNameRequest request; + + auto outcome = client.PostUnionWithJsonName(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(PostUnionWithJsonName, PostUnionWithJsonNameResponse3) { + RestJsonProtocolClient client; + PostUnionWithJsonNameRequest request; + + auto outcome = client.PostUnionWithJsonName(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/RecursiveShapesTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/RecursiveShapesTest.cpp new file mode 100644 index 00000000000..2c521946101 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/RecursiveShapesTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using RecursiveShapes = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(RecursiveShapes, RestJsonRecursiveShapes) { + RestJsonProtocolClient client; + RecursiveShapesRequest request; + + auto outcome = client.RecursiveShapes(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/SimpleScalarPropertiesTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/SimpleScalarPropertiesTest.cpp new file mode 100644 index 00000000000..892f35cba73 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/SimpleScalarPropertiesTest.cpp @@ -0,0 +1,52 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using SimpleScalarProperties = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(SimpleScalarProperties, RestJsonSimpleScalarProperties) { + RestJsonProtocolClient client; + SimpleScalarPropertiesRequest request; + + auto outcome = client.SimpleScalarProperties(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, RestJsonDoesntDeserializeNullStructureValues) { + RestJsonProtocolClient client; + SimpleScalarPropertiesRequest request; + + auto outcome = client.SimpleScalarProperties(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, RestJsonSupportsNaNFloatInputs) { + RestJsonProtocolClient client; + SimpleScalarPropertiesRequest request; + + auto outcome = client.SimpleScalarProperties(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, RestJsonSupportsInfinityFloatInputs) { + RestJsonProtocolClient client; + SimpleScalarPropertiesRequest request; + + auto outcome = client.SimpleScalarProperties(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, RestJsonSupportsNegativeInfinityFloatInputs) { + RestJsonProtocolClient client; + SimpleScalarPropertiesRequest request; + + auto outcome = client.SimpleScalarProperties(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/TimestampFormatHeadersTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/TimestampFormatHeadersTest.cpp new file mode 100644 index 00000000000..ea0978a8c0a --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/TimestampFormatHeadersTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using TimestampFormatHeaders = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(TimestampFormatHeaders, RestJsonTimestampFormatHeaders) { + RestJsonProtocolClient client; + TimestampFormatHeadersRequest request; + + auto outcome = client.TimestampFormatHeaders(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-json/tests/UnitInputAndOutputTest.cpp b/generated/protocol-tests/tests/output/rest-json/tests/UnitInputAndOutputTest.cpp new file mode 100644 index 00000000000..6d77ffcad6e --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-json/tests/UnitInputAndOutputTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using UnitInputAndOutput = AWS_PROTOCOL_TEST_SUITE; +using RestJsonProtocolClient = Aws::RestJsonProtocol::RestJsonProtocolClient; +using namespace Aws::RestJsonProtocol::Model; + +AWS_PROTOCOL_TEST(UnitInputAndOutput, RestJsonUnitInputAndOutputNoOutput) { + RestJsonProtocolClient client; + UnitInputAndOutputRequest request; + + auto outcome = client.UnitInputAndOutput(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml-1/CMakeLists.txt b/generated/protocol-tests/tests/output/rest-xml-1/CMakeLists.txt deleted file mode 100644 index 5b735c7febc..00000000000 --- a/generated/protocol-tests/tests/output/rest-xml-1/CMakeLists.txt +++ /dev/null @@ -1,42 +0,0 @@ -add_project(rest-xml-1-output-protocol-tests - "Tests for the protocol rest-xml of AWS C++ SDK" - testing-resources - aws-cpp-sdk-rest-xml-protocol-namespace - aws-cpp-sdk-core) - -file(GLOB AWS_REST_XML_1_OUTPUT_PROTOCOL_TESTS_SRC - "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp" -) - -if(MSVC AND BUILD_SHARED_LIBS) - add_definitions(-DGTEST_LINKED_AS_SHARED_LIBRARY=1) -endif() - -if (CMAKE_CROSSCOMPILING) - set(AUTORUN_UNIT_TESTS OFF) -endif() - -if (AUTORUN_UNIT_TESTS) - enable_testing() -endif() - -if(PLATFORM_ANDROID AND BUILD_SHARED_LIBS) - add_library(${PROJECT_NAME} "${AWS_REST_XML_1_OUTPUT_PROTOCOL_TESTS_SRC}") -else() - add_executable(${PROJECT_NAME} "${AWS_REST_XML_1_OUTPUT_PROTOCOL_TESTS_SRC}") -endif() - -set_compiler_flags(${PROJECT_NAME}) -set_compiler_warnings(${PROJECT_NAME}) - -target_link_libraries(${PROJECT_NAME} ${PROJECT_LIBS}) - -if (AUTORUN_UNIT_TESTS) - ADD_CUSTOM_COMMAND( TARGET ${PROJECT_NAME} POST_BUILD - COMMAND ${CMAKE_COMMAND} -E env LD_LIBRARY_PATH=${AWS_AUTORUN_LD_LIBRARY_PATH}:$ENV{LD_LIBRARY_PATH} $ - ARGS "--gtest_brief=1") -endif() - -if(NOT CMAKE_CROSSCOMPILING) - SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES OUTPUT_NAME ${PROJECT_NAME}) -endif() \ No newline at end of file diff --git a/generated/protocol-tests/tests/output/rest-xml-1/RunTests.cpp b/generated/protocol-tests/tests/output/rest-xml-1/RunTests.cpp deleted file mode 100644 index f2f10a7c789..00000000000 --- a/generated/protocol-tests/tests/output/rest-xml-1/RunTests.cpp +++ /dev/null @@ -1,29 +0,0 @@ -/** - * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. - * SPDX-License-Identifier: Apache-2.0. - */ - -#include -#include -#include -#include -#include - -int main(int argc, char** argv) -{ - Aws::SDKOptions options; - options.loggingOptions.logLevel = Aws::Utils::Logging::LogLevel::Trace; - - AWS_BEGIN_MEMORY_TEST_EX(options, 1024, 128); - Aws::Testing::InitPlatformTest(options); - Aws::Testing::ParseArgs(argc, argv); - - Aws::InitAPI(options); - ::testing::InitGoogleTest(&argc, argv); - int exitCode = RUN_ALL_TESTS(); - Aws::ShutdownAPI(options); - - AWS_END_MEMORY_TEST_EX; - Aws::Testing::ShutdownPlatformTest(options); - return exitCode; -} diff --git a/generated/protocol-tests/tests/output/rest-xml/CMakeLists.txt b/generated/protocol-tests/tests/output/rest-xml/CMakeLists.txt index 84f229110f5..fb9a9e7e55b 100644 --- a/generated/protocol-tests/tests/output/rest-xml/CMakeLists.txt +++ b/generated/protocol-tests/tests/output/rest-xml/CMakeLists.txt @@ -6,6 +6,7 @@ add_project(rest-xml-output-protocol-tests file(GLOB AWS_REST_XML_OUTPUT_PROTOCOL_TESTS_SRC "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp" + "${CMAKE_CURRENT_SOURCE_DIR}/tests/*.cpp" ) if(MSVC AND BUILD_SHARED_LIBS) diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/BodyWithXmlNameTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/BodyWithXmlNameTest.cpp new file mode 100644 index 00000000000..fdc631578ef --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/BodyWithXmlNameTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using BodyWithXmlName = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(BodyWithXmlName, BodyWithXmlName) { + RestXmlProtocolClient client; + BodyWithXmlNameRequest request; + + auto outcome = client.BodyWithXmlName(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/DatetimeOffsetsTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/DatetimeOffsetsTest.cpp new file mode 100644 index 00000000000..96d32ac1160 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/DatetimeOffsetsTest.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using DatetimeOffsets = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(DatetimeOffsets, RestXmlDateTimeWithNegativeOffset) { + RestXmlProtocolClient client; + DatetimeOffsetsRequest request; + + auto outcome = client.DatetimeOffsets(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(DatetimeOffsets, RestXmlDateTimeWithPositiveOffset) { + RestXmlProtocolClient client; + DatetimeOffsetsRequest request; + + auto outcome = client.DatetimeOffsets(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/EmptyInputAndEmptyOutputTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/EmptyInputAndEmptyOutputTest.cpp new file mode 100644 index 00000000000..ccd72271341 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/EmptyInputAndEmptyOutputTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using EmptyInputAndEmptyOutput = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(EmptyInputAndEmptyOutput, EmptyInputAndEmptyOutput) { + RestXmlProtocolClient client; + EmptyInputAndEmptyOutputRequest request; + + auto outcome = client.EmptyInputAndEmptyOutput(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/FlattenedXmlMapTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/FlattenedXmlMapTest.cpp new file mode 100644 index 00000000000..d06dc0e13f0 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/FlattenedXmlMapTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using FlattenedXmlMap = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(FlattenedXmlMap, FlattenedXmlMap) { + RestXmlProtocolClient client; + FlattenedXmlMapRequest request; + + auto outcome = client.FlattenedXmlMap(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/FlattenedXmlMapWithXmlNameTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/FlattenedXmlMapWithXmlNameTest.cpp new file mode 100644 index 00000000000..c510fb1cbb5 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/FlattenedXmlMapWithXmlNameTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using FlattenedXmlMapWithXmlName = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(FlattenedXmlMapWithXmlName, FlattenedXmlMapWithXmlName) { + RestXmlProtocolClient client; + FlattenedXmlMapWithXmlNameRequest request; + + auto outcome = client.FlattenedXmlMapWithXmlName(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/FlattenedXmlMapWithXmlNamespaceTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/FlattenedXmlMapWithXmlNamespaceTest.cpp new file mode 100644 index 00000000000..4b99b462bd0 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/FlattenedXmlMapWithXmlNamespaceTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using FlattenedXmlMapWithXmlNamespace = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(FlattenedXmlMapWithXmlNamespace, RestXmlFlattenedXmlMapWithXmlNamespace) { + RestXmlProtocolClient client; + FlattenedXmlMapWithXmlNamespaceRequest request; + + auto outcome = client.FlattenedXmlMapWithXmlNamespace(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/FractionalSecondsTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/FractionalSecondsTest.cpp new file mode 100644 index 00000000000..5566e0f473b --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/FractionalSecondsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using FractionalSeconds = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(FractionalSeconds, RestXmlDateTimeWithFractionalSeconds) { + RestXmlProtocolClient client; + FractionalSecondsRequest request; + + auto outcome = client.FractionalSeconds(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/GreetingWithErrors0Test.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/GreetingWithErrors0Test.cpp new file mode 100644 index 00000000000..d722cb22e7f --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/GreetingWithErrors0Test.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using GreetingWithErrors0 = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(GreetingWithErrors0, InvalidGreetingError) { + RestXmlProtocolClient client; + GreetingWithErrors0Request request; + + auto outcome = client.GreetingWithErrors0(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/GreetingWithErrors1Test.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/GreetingWithErrors1Test.cpp new file mode 100644 index 00000000000..da6bfbef580 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/GreetingWithErrors1Test.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using GreetingWithErrors1 = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(GreetingWithErrors1, ComplexError) { + RestXmlProtocolClient client; + GreetingWithErrors1Request request; + + auto outcome = client.GreetingWithErrors1(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/GreetingWithErrorsTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/GreetingWithErrorsTest.cpp new file mode 100644 index 00000000000..e622c1caece --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/GreetingWithErrorsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using GreetingWithErrors = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(GreetingWithErrors, GreetingWithErrors) { + RestXmlProtocolClient client; + GreetingWithErrorsRequest request; + + auto outcome = client.GreetingWithErrors(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/HttpEnumPayloadTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/HttpEnumPayloadTest.cpp new file mode 100644 index 00000000000..51a4c81d3e7 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/HttpEnumPayloadTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpEnumPayload = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(HttpEnumPayload, RestXmlEnumPayloadResponse) { + RestXmlProtocolClient client; + HttpEnumPayloadRequest request; + + auto outcome = client.HttpEnumPayload(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/HttpPayloadTraitsTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/HttpPayloadTraitsTest.cpp new file mode 100644 index 00000000000..2dc8d1c3c44 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/HttpPayloadTraitsTest.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpPayloadTraits = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(HttpPayloadTraits, HttpPayloadTraitsWithBlob) { + RestXmlProtocolClient client; + HttpPayloadTraitsRequest request; + + auto outcome = client.HttpPayloadTraits(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(HttpPayloadTraits, HttpPayloadTraitsWithNoBlobBody) { + RestXmlProtocolClient client; + HttpPayloadTraitsRequest request; + + auto outcome = client.HttpPayloadTraits(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/HttpPayloadWithMemberXmlNameTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/HttpPayloadWithMemberXmlNameTest.cpp new file mode 100644 index 00000000000..e28d7aca3e5 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/HttpPayloadWithMemberXmlNameTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpPayloadWithMemberXmlName = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(HttpPayloadWithMemberXmlName, HttpPayloadWithMemberXmlName) { + RestXmlProtocolClient client; + HttpPayloadWithMemberXmlNameRequest request; + + auto outcome = client.HttpPayloadWithMemberXmlName(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/HttpPayloadWithStructureTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/HttpPayloadWithStructureTest.cpp new file mode 100644 index 00000000000..67591a53cc4 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/HttpPayloadWithStructureTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpPayloadWithStructure = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(HttpPayloadWithStructure, HttpPayloadWithStructure) { + RestXmlProtocolClient client; + HttpPayloadWithStructureRequest request; + + auto outcome = client.HttpPayloadWithStructure(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/HttpPayloadWithUnionTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/HttpPayloadWithUnionTest.cpp new file mode 100644 index 00000000000..51fdf2988e8 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/HttpPayloadWithUnionTest.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpPayloadWithUnion = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(HttpPayloadWithUnion, RestXmlHttpPayloadWithUnion) { + RestXmlProtocolClient client; + HttpPayloadWithUnionRequest request; + + auto outcome = client.HttpPayloadWithUnion(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(HttpPayloadWithUnion, RestXmlHttpPayloadWithUnsetUnion) { + RestXmlProtocolClient client; + HttpPayloadWithUnionRequest request; + + auto outcome = client.HttpPayloadWithUnion(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/HttpPayloadWithXmlNameTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/HttpPayloadWithXmlNameTest.cpp new file mode 100644 index 00000000000..ecaa7c16d78 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/HttpPayloadWithXmlNameTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpPayloadWithXmlName = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(HttpPayloadWithXmlName, HttpPayloadWithXmlName) { + RestXmlProtocolClient client; + HttpPayloadWithXmlNameRequest request; + + auto outcome = client.HttpPayloadWithXmlName(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/HttpPayloadWithXmlNamespaceAndPrefixTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/HttpPayloadWithXmlNamespaceAndPrefixTest.cpp new file mode 100644 index 00000000000..407a1893bb4 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/HttpPayloadWithXmlNamespaceAndPrefixTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpPayloadWithXmlNamespaceAndPrefix = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(HttpPayloadWithXmlNamespaceAndPrefix, HttpPayloadWithXmlNamespaceAndPrefix) { + RestXmlProtocolClient client; + HttpPayloadWithXmlNamespaceAndPrefixRequest request; + + auto outcome = client.HttpPayloadWithXmlNamespaceAndPrefix(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/HttpPayloadWithXmlNamespaceTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/HttpPayloadWithXmlNamespaceTest.cpp new file mode 100644 index 00000000000..42dbe4979ca --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/HttpPayloadWithXmlNamespaceTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpPayloadWithXmlNamespace = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(HttpPayloadWithXmlNamespace, HttpPayloadWithXmlNamespace) { + RestXmlProtocolClient client; + HttpPayloadWithXmlNamespaceRequest request; + + auto outcome = client.HttpPayloadWithXmlNamespace(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/HttpPrefixHeadersTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/HttpPrefixHeadersTest.cpp new file mode 100644 index 00000000000..46bd95c20fb --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/HttpPrefixHeadersTest.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpPrefixHeaders = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(HttpPrefixHeaders, HttpPrefixHeadersArePresent) { + RestXmlProtocolClient client; + HttpPrefixHeadersRequest request; + + auto outcome = client.HttpPrefixHeaders(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(HttpPrefixHeaders, HttpPrefixHeadersAreNotPresent) { + RestXmlProtocolClient client; + HttpPrefixHeadersRequest request; + + auto outcome = client.HttpPrefixHeaders(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/HttpResponseCodeTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/HttpResponseCodeTest.cpp new file mode 100644 index 00000000000..2a93507010c --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/HttpResponseCodeTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpResponseCode = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(HttpResponseCode, RestXmlHttpResponseCode) { + RestXmlProtocolClient client; + HttpResponseCodeRequest request; + + auto outcome = client.HttpResponseCode(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/HttpStringPayloadTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/HttpStringPayloadTest.cpp new file mode 100644 index 00000000000..e2e9586d3df --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/HttpStringPayloadTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using HttpStringPayload = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(HttpStringPayload, RestXmlStringPayloadResponse) { + RestXmlProtocolClient client; + HttpStringPayloadRequest request; + + auto outcome = client.HttpStringPayload(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/IgnoreQueryParamsInResponseTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/IgnoreQueryParamsInResponseTest.cpp new file mode 100644 index 00000000000..d616aee4c80 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/IgnoreQueryParamsInResponseTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using IgnoreQueryParamsInResponse = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(IgnoreQueryParamsInResponse, IgnoreQueryParamsInResponse) { + RestXmlProtocolClient client; + IgnoreQueryParamsInResponseRequest request; + + auto outcome = client.IgnoreQueryParamsInResponse(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/InputAndOutputWithHeadersTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/InputAndOutputWithHeadersTest.cpp new file mode 100644 index 00000000000..849414b6c94 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/InputAndOutputWithHeadersTest.cpp @@ -0,0 +1,76 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using InputAndOutputWithHeaders = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, InputAndOutputWithStringHeaders) { + RestXmlProtocolClient client; + InputAndOutputWithHeadersRequest request; + + auto outcome = client.InputAndOutputWithHeaders(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, InputAndOutputWithNumericHeaders) { + RestXmlProtocolClient client; + InputAndOutputWithHeadersRequest request; + + auto outcome = client.InputAndOutputWithHeaders(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, InputAndOutputWithBooleanHeaders) { + RestXmlProtocolClient client; + InputAndOutputWithHeadersRequest request; + + auto outcome = client.InputAndOutputWithHeaders(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, InputAndOutputWithTimestampHeaders) { + RestXmlProtocolClient client; + InputAndOutputWithHeadersRequest request; + + auto outcome = client.InputAndOutputWithHeaders(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, InputAndOutputWithEnumHeaders) { + RestXmlProtocolClient client; + InputAndOutputWithHeadersRequest request; + + auto outcome = client.InputAndOutputWithHeaders(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, RestXmlSupportsNaNFloatHeaderOutputs) { + RestXmlProtocolClient client; + InputAndOutputWithHeadersRequest request; + + auto outcome = client.InputAndOutputWithHeaders(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, RestXmlSupportsInfinityFloatHeaderOutputs) { + RestXmlProtocolClient client; + InputAndOutputWithHeadersRequest request; + + auto outcome = client.InputAndOutputWithHeaders(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(InputAndOutputWithHeaders, RestXmlSupportsNegativeInfinityFloatHeaderOutputs) { + RestXmlProtocolClient client; + InputAndOutputWithHeadersRequest request; + + auto outcome = client.InputAndOutputWithHeaders(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/NestedXmlMapWithXmlNameTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/NestedXmlMapWithXmlNameTest.cpp new file mode 100644 index 00000000000..83d20b9ae2c --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/NestedXmlMapWithXmlNameTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using NestedXmlMapWithXmlName = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(NestedXmlMapWithXmlName, NestedXmlMapWithXmlNameDeserializes) { + RestXmlProtocolClient client; + NestedXmlMapWithXmlNameRequest request; + + auto outcome = client.NestedXmlMapWithXmlName(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/NestedXmlMapsTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/NestedXmlMapsTest.cpp new file mode 100644 index 00000000000..abc3623462b --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/NestedXmlMapsTest.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using NestedXmlMaps = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(NestedXmlMaps, NestedXmlMapResponse) { + RestXmlProtocolClient client; + NestedXmlMapsRequest request; + + auto outcome = client.NestedXmlMaps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(NestedXmlMaps, FlatNestedXmlMapResponse) { + RestXmlProtocolClient client; + NestedXmlMapsRequest request; + + auto outcome = client.NestedXmlMaps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/NoInputAndNoOutputTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/NoInputAndNoOutputTest.cpp new file mode 100644 index 00000000000..a8ceffb93fc --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/NoInputAndNoOutputTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using NoInputAndNoOutput = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(NoInputAndNoOutput, NoInputAndNoOutput) { + RestXmlProtocolClient client; + NoInputAndNoOutputRequest request; + + auto outcome = client.NoInputAndNoOutput(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/NoInputAndOutputTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/NoInputAndOutputTest.cpp new file mode 100644 index 00000000000..ba8ee701158 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/NoInputAndOutputTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using NoInputAndOutput = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(NoInputAndOutput, NoInputAndOutput) { + RestXmlProtocolClient client; + NoInputAndOutputRequest request; + + auto outcome = client.NoInputAndOutput(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/RecursiveShapesTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/RecursiveShapesTest.cpp new file mode 100644 index 00000000000..77408185b59 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/RecursiveShapesTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using RecursiveShapes = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(RecursiveShapes, RecursiveShapes) { + RestXmlProtocolClient client; + RecursiveShapesRequest request; + + auto outcome = client.RecursiveShapes(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/SimpleScalarPropertiesTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/SimpleScalarPropertiesTest.cpp new file mode 100644 index 00000000000..b2300a6cd98 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/SimpleScalarPropertiesTest.cpp @@ -0,0 +1,84 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using SimpleScalarProperties = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(SimpleScalarProperties, SimpleScalarProperties) { + RestXmlProtocolClient client; + SimpleScalarPropertiesRequest request; + + auto outcome = client.SimpleScalarProperties(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, SimpleScalarPropertiesComplexEscapes) { + RestXmlProtocolClient client; + SimpleScalarPropertiesRequest request; + + auto outcome = client.SimpleScalarProperties(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, SimpleScalarPropertiesWithEscapedCharacter) { + RestXmlProtocolClient client; + SimpleScalarPropertiesRequest request; + + auto outcome = client.SimpleScalarProperties(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, SimpleScalarPropertiesWithXMLPreamble) { + RestXmlProtocolClient client; + SimpleScalarPropertiesRequest request; + + auto outcome = client.SimpleScalarProperties(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, SimpleScalarPropertiesWithWhiteSpace) { + RestXmlProtocolClient client; + SimpleScalarPropertiesRequest request; + + auto outcome = client.SimpleScalarProperties(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, SimpleScalarPropertiesPureWhiteSpace) { + RestXmlProtocolClient client; + SimpleScalarPropertiesRequest request; + + auto outcome = client.SimpleScalarProperties(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, RestXmlSupportsNaNFloatOutputs) { + RestXmlProtocolClient client; + SimpleScalarPropertiesRequest request; + + auto outcome = client.SimpleScalarProperties(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, RestXmlSupportsInfinityFloatOutputs) { + RestXmlProtocolClient client; + SimpleScalarPropertiesRequest request; + + auto outcome = client.SimpleScalarProperties(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(SimpleScalarProperties, RestXmlSupportsNegativeInfinityFloatOutputs) { + RestXmlProtocolClient client; + SimpleScalarPropertiesRequest request; + + auto outcome = client.SimpleScalarProperties(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/TimestampFormatHeadersTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/TimestampFormatHeadersTest.cpp new file mode 100644 index 00000000000..5ee95f9470d --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/TimestampFormatHeadersTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using TimestampFormatHeaders = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(TimestampFormatHeaders, TimestampFormatHeaders) { + RestXmlProtocolClient client; + TimestampFormatHeadersRequest request; + + auto outcome = client.TimestampFormatHeaders(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/XmlAttributesOnPayloadTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/XmlAttributesOnPayloadTest.cpp new file mode 100644 index 00000000000..805fa554e8c --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/XmlAttributesOnPayloadTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlAttributesOnPayload = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlAttributesOnPayload, XmlAttributesOnPayload) { + RestXmlProtocolClient client; + XmlAttributesOnPayloadRequest request; + + auto outcome = client.XmlAttributesOnPayload(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/XmlAttributesTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/XmlAttributesTest.cpp new file mode 100644 index 00000000000..d884d472e83 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/XmlAttributesTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlAttributes = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlAttributes, XmlAttributes) { + RestXmlProtocolClient client; + XmlAttributesRequest request; + + auto outcome = client.XmlAttributes(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/XmlBlobsTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/XmlBlobsTest.cpp new file mode 100644 index 00000000000..57193178016 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/XmlBlobsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlBlobs = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlBlobs, XmlBlobs) { + RestXmlProtocolClient client; + XmlBlobsRequest request; + + auto outcome = client.XmlBlobs(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/XmlEmptyBlobsTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/XmlEmptyBlobsTest.cpp new file mode 100644 index 00000000000..f73673a6264 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/XmlEmptyBlobsTest.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlEmptyBlobs = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlEmptyBlobs, XmlEmptyBlobs) { + RestXmlProtocolClient client; + XmlEmptyBlobsRequest request; + + auto outcome = client.XmlEmptyBlobs(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(XmlEmptyBlobs, XmlEmptySelfClosedBlobs) { + RestXmlProtocolClient client; + XmlEmptyBlobsRequest request; + + auto outcome = client.XmlEmptyBlobs(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/XmlEmptyListsTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/XmlEmptyListsTest.cpp new file mode 100644 index 00000000000..d83b13e0807 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/XmlEmptyListsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlEmptyLists = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlEmptyLists, XmlEmptyLists) { + RestXmlProtocolClient client; + XmlEmptyListsRequest request; + + auto outcome = client.XmlEmptyLists(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/XmlEmptyMapsTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/XmlEmptyMapsTest.cpp new file mode 100644 index 00000000000..31931fe99b0 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/XmlEmptyMapsTest.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlEmptyMaps = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlEmptyMaps, XmlEmptyMaps) { + RestXmlProtocolClient client; + XmlEmptyMapsRequest request; + + auto outcome = client.XmlEmptyMaps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(XmlEmptyMaps, XmlEmptySelfClosedMaps) { + RestXmlProtocolClient client; + XmlEmptyMapsRequest request; + + auto outcome = client.XmlEmptyMaps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/XmlEmptyStringsTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/XmlEmptyStringsTest.cpp new file mode 100644 index 00000000000..3abc5c12044 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/XmlEmptyStringsTest.cpp @@ -0,0 +1,28 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlEmptyStrings = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlEmptyStrings, XmlEmptyStrings) { + RestXmlProtocolClient client; + XmlEmptyStringsRequest request; + + auto outcome = client.XmlEmptyStrings(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(XmlEmptyStrings, XmlEmptySelfClosedStrings) { + RestXmlProtocolClient client; + XmlEmptyStringsRequest request; + + auto outcome = client.XmlEmptyStrings(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/XmlEnumsTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/XmlEnumsTest.cpp new file mode 100644 index 00000000000..1a427d09efc --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/XmlEnumsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlEnums = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlEnums, XmlEnums) { + RestXmlProtocolClient client; + XmlEnumsRequest request; + + auto outcome = client.XmlEnums(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/XmlIntEnumsTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/XmlIntEnumsTest.cpp new file mode 100644 index 00000000000..2a967f2f1a4 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/XmlIntEnumsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlIntEnums = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlIntEnums, XmlIntEnums) { + RestXmlProtocolClient client; + XmlIntEnumsRequest request; + + auto outcome = client.XmlIntEnums(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/XmlListsTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/XmlListsTest.cpp new file mode 100644 index 00000000000..52ed449920c --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/XmlListsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlLists = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlLists, XmlLists) { + RestXmlProtocolClient client; + XmlListsRequest request; + + auto outcome = client.XmlLists(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/XmlMapWithXmlNamespaceTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/XmlMapWithXmlNamespaceTest.cpp new file mode 100644 index 00000000000..687c50d8ce5 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/XmlMapWithXmlNamespaceTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlMapWithXmlNamespace = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlMapWithXmlNamespace, RestXmlXmlMapWithXmlNamespace) { + RestXmlProtocolClient client; + XmlMapWithXmlNamespaceRequest request; + + auto outcome = client.XmlMapWithXmlNamespace(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/XmlMapsTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/XmlMapsTest.cpp new file mode 100644 index 00000000000..e334046c81c --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/XmlMapsTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlMaps = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlMaps, XmlMaps) { + RestXmlProtocolClient client; + XmlMapsRequest request; + + auto outcome = client.XmlMaps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/XmlMapsXmlNameTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/XmlMapsXmlNameTest.cpp new file mode 100644 index 00000000000..5af6b4d2cf3 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/XmlMapsXmlNameTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlMapsXmlName = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlMapsXmlName, XmlMapsXmlName) { + RestXmlProtocolClient client; + XmlMapsXmlNameRequest request; + + auto outcome = client.XmlMapsXmlName(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/XmlNamespacesTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/XmlNamespacesTest.cpp new file mode 100644 index 00000000000..ed3f8bcf437 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/XmlNamespacesTest.cpp @@ -0,0 +1,20 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlNamespaces = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlNamespaces, XmlNamespaces) { + RestXmlProtocolClient client; + XmlNamespacesRequest request; + + auto outcome = client.XmlNamespaces(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/XmlTimestampsTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/XmlTimestampsTest.cpp new file mode 100644 index 00000000000..815bb64509e --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/XmlTimestampsTest.cpp @@ -0,0 +1,68 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlTimestamps = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlTimestamps, XmlTimestamps) { + RestXmlProtocolClient client; + XmlTimestampsRequest request; + + auto outcome = client.XmlTimestamps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(XmlTimestamps, XmlTimestampsWithDateTimeFormat) { + RestXmlProtocolClient client; + XmlTimestampsRequest request; + + auto outcome = client.XmlTimestamps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(XmlTimestamps, XmlTimestampsWithDateTimeOnTargetFormat) { + RestXmlProtocolClient client; + XmlTimestampsRequest request; + + auto outcome = client.XmlTimestamps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(XmlTimestamps, XmlTimestampsWithEpochSecondsFormat) { + RestXmlProtocolClient client; + XmlTimestampsRequest request; + + auto outcome = client.XmlTimestamps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(XmlTimestamps, XmlTimestampsWithEpochSecondsOnTargetFormat) { + RestXmlProtocolClient client; + XmlTimestampsRequest request; + + auto outcome = client.XmlTimestamps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(XmlTimestamps, XmlTimestampsWithHttpDateFormat) { + RestXmlProtocolClient client; + XmlTimestampsRequest request; + + auto outcome = client.XmlTimestamps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(XmlTimestamps, XmlTimestampsWithHttpDateOnTargetFormat) { + RestXmlProtocolClient client; + XmlTimestampsRequest request; + + auto outcome = client.XmlTimestamps(request); + ASSERT_FALSE(outcome.IsSuccess()); +} diff --git a/generated/protocol-tests/tests/output/rest-xml/tests/XmlUnionsTest.cpp b/generated/protocol-tests/tests/output/rest-xml/tests/XmlUnionsTest.cpp new file mode 100644 index 00000000000..6cc976f3341 --- /dev/null +++ b/generated/protocol-tests/tests/output/rest-xml/tests/XmlUnionsTest.cpp @@ -0,0 +1,44 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ +#include +#include +#include +#include + +using XmlUnions = AWS_PROTOCOL_TEST_SUITE; +using RestXmlProtocolClient = Aws::RestXmlProtocol::RestXmlProtocolClient; +using namespace Aws::RestXmlProtocol::Model; + +AWS_PROTOCOL_TEST(XmlUnions, XmlUnionsWithStructMember) { + RestXmlProtocolClient client; + XmlUnionsRequest request; + + auto outcome = client.XmlUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(XmlUnions, XmlUnionsWithStringMember) { + RestXmlProtocolClient client; + XmlUnionsRequest request; + + auto outcome = client.XmlUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(XmlUnions, XmlUnionsWithBooleanMember) { + RestXmlProtocolClient client; + XmlUnionsRequest request; + + auto outcome = client.XmlUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +} + +AWS_PROTOCOL_TEST(XmlUnions, XmlUnionsWithUnionMember) { + RestXmlProtocolClient client; + XmlUnionsRequest request; + + auto outcome = client.XmlUnions(request); + ASSERT_FALSE(outcome.IsSuccess()); +}