Skip to content

Commit

Permalink
add protocol test generation
Browse files Browse the repository at this point in the history
  • Loading branch information
kuhe committed Jun 7, 2024
1 parent 825ef21 commit 3375c7e
Show file tree
Hide file tree
Showing 40 changed files with 2,940 additions and 26 deletions.
1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
"build": "turbo run build",
"test": "turbo run test",
"test:integration": "yarn build-test-packages && turbo run test:integration",
"test:protocols": "make test-protocols",
"lint": "turbo run lint",
"lint-fix": "turbo run lint -- --fix",
"lint:pkgJson": "yarn lint:dependencies",
Expand Down
80 changes: 80 additions & 0 deletions private/smithy-rpcv2-cbor/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
{
"name": "@smithy/smithy-rpcv2-cbor",
"description": "@smithy/smithy-rpcv2-cbor client",
"version": "1.0.0-alpha.1",
"scripts": {
"build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
"build:cjs": "tsc -p tsconfig.cjs.json",
"build:es": "tsc -p tsconfig.es.json",
"build:types": "tsc -p tsconfig.types.json",
"build:types:downlevel": "downlevel-dts dist-types dist-types/ts3.4",
"clean": "rimraf ./dist-* && rimraf *.tsbuildinfo || exit 0",
"prepack": "yarn run clean && yarn run build"
},
"main": "./dist-cjs/index.js",
"types": "./dist-types/index.d.ts",
"module": "./dist-es/index.js",
"sideEffects": false,
"dependencies": {
"tslib": "^2.6.2",
"@aws-crypto/sha256-browser": "3.0.0",
"@aws-crypto/sha256-js": "3.0.0",
"@aws-sdk/types": "latest",
"@smithy/config-resolver": "^3.0.1",
"@smithy/core": "^2.2.0",
"@smithy/fetch-http-handler": "^3.0.1",
"@smithy/hash-node": "^3.0.0",
"@smithy/invalid-dependency": "^3.0.0",
"@smithy/middleware-content-length": "^3.0.0",
"@smithy/middleware-retry": "^3.0.3",
"@smithy/middleware-serde": "^3.0.0",
"@smithy/middleware-stack": "^3.0.0",
"@smithy/node-config-provider": "^3.1.0",
"@smithy/node-http-handler": "^3.0.0",
"@smithy/protocol-http": "^4.0.0",
"@smithy/smithy-client": "^3.1.1",
"@smithy/types": "^3.0.0",
"@smithy/url-parser": "^3.0.0",
"@smithy/util-base64": "^3.0.0",
"@smithy/util-body-length-browser": "^3.0.0",
"@smithy/util-body-length-node": "^3.0.0",
"@smithy/util-defaults-mode-browser": "^3.0.3",
"@smithy/util-defaults-mode-node": "^3.0.3",
"@smithy/util-middleware": "^3.0.0",
"@smithy/util-retry": "^3.0.0",
"@smithy/util-utf8": "^3.0.0"
},
"devDependencies": {
"@tsconfig/node16": "16.1.3",
"concurrently": "7.0.0",
"downlevel-dts": "0.10.1",
"rimraf": "^3.0.0",
"typescript": "~4.9.5",
"@types/node": "^16.18.96"
},
"engines": {
"node": ">=16.0.0"
},
"typesVersions": {
"<4.0": {
"dist-types/*": [
"dist-types/ts3.4/*"
]
}
},
"files": [
"dist-*/**"
],
"author": {
"name": "AWS SDK for JavaScript Team",
"url": "https://aws.amazon.com/javascript/"
},
"license": "Apache-2.0",
"browser": {
"./dist-es/runtimeConfig": "./dist-es/runtimeConfig.browser"
},
"react-native": {
"./dist-es/runtimeConfig": "./dist-es/runtimeConfig.native"
},
"private": true
}
307 changes: 307 additions & 0 deletions private/smithy-rpcv2-cbor/src/RpcV2Protocol.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,307 @@
// smithy-typescript generated code
import {
RpcV2ProtocolClient,
RpcV2ProtocolClientConfig,
} from "./RpcV2ProtocolClient";
import {
EmptyInputOutputCommand,
EmptyInputOutputCommandInput,
EmptyInputOutputCommandOutput,
} from "./commands/EmptyInputOutputCommand";
import {
FractionalSecondsCommand,
FractionalSecondsCommandInput,
FractionalSecondsCommandOutput,
} from "./commands/FractionalSecondsCommand";
import {
GreetingWithErrorsCommand,
GreetingWithErrorsCommandInput,
GreetingWithErrorsCommandOutput,
} from "./commands/GreetingWithErrorsCommand";
import {
NoInputOutputCommand,
NoInputOutputCommandInput,
NoInputOutputCommandOutput,
} from "./commands/NoInputOutputCommand";
import {
OperationWithDefaultsCommand,
OperationWithDefaultsCommandInput,
OperationWithDefaultsCommandOutput,
} from "./commands/OperationWithDefaultsCommand";
import {
OptionalInputOutputCommand,
OptionalInputOutputCommandInput,
OptionalInputOutputCommandOutput,
} from "./commands/OptionalInputOutputCommand";
import {
RecursiveShapesCommand,
RecursiveShapesCommandInput,
RecursiveShapesCommandOutput,
} from "./commands/RecursiveShapesCommand";
import {
RpcV2CborDenseMapsCommand,
RpcV2CborDenseMapsCommandInput,
RpcV2CborDenseMapsCommandOutput,
} from "./commands/RpcV2CborDenseMapsCommand";
import {
RpcV2CborListsCommand,
RpcV2CborListsCommandInput,
RpcV2CborListsCommandOutput,
} from "./commands/RpcV2CborListsCommand";
import {
RpcV2CborSparseMapsCommand,
RpcV2CborSparseMapsCommandInput,
RpcV2CborSparseMapsCommandOutput,
} from "./commands/RpcV2CborSparseMapsCommand";
import {
SimpleScalarPropertiesCommand,
SimpleScalarPropertiesCommandInput,
SimpleScalarPropertiesCommandOutput,
} from "./commands/SimpleScalarPropertiesCommand";
import {
SparseNullsOperationCommand,
SparseNullsOperationCommandInput,
SparseNullsOperationCommandOutput,
} from "./commands/SparseNullsOperationCommand";
import { createAggregatedClient } from "@smithy/smithy-client";
import { HttpHandlerOptions as __HttpHandlerOptions } from "@smithy/types";

const commands = {
EmptyInputOutputCommand,
FractionalSecondsCommand,
GreetingWithErrorsCommand,
NoInputOutputCommand,
OperationWithDefaultsCommand,
OptionalInputOutputCommand,
RecursiveShapesCommand,
RpcV2CborDenseMapsCommand,
RpcV2CborListsCommand,
RpcV2CborSparseMapsCommand,
SimpleScalarPropertiesCommand,
SparseNullsOperationCommand,
}

export interface RpcV2Protocol {
/**
* @see {@link EmptyInputOutputCommand}
*/
emptyInputOutput(): Promise<EmptyInputOutputCommandOutput>;
emptyInputOutput(
args: EmptyInputOutputCommandInput,
options?: __HttpHandlerOptions,
): Promise<EmptyInputOutputCommandOutput>;
emptyInputOutput(
args: EmptyInputOutputCommandInput,
cb: (err: any, data?: EmptyInputOutputCommandOutput) => void
): void;
emptyInputOutput(
args: EmptyInputOutputCommandInput,
options: __HttpHandlerOptions,
cb: (err: any, data?: EmptyInputOutputCommandOutput) => void
): void;

/**
* @see {@link FractionalSecondsCommand}
*/
fractionalSeconds(): Promise<FractionalSecondsCommandOutput>;
fractionalSeconds(
args: FractionalSecondsCommandInput,
options?: __HttpHandlerOptions,
): Promise<FractionalSecondsCommandOutput>;
fractionalSeconds(
args: FractionalSecondsCommandInput,
cb: (err: any, data?: FractionalSecondsCommandOutput) => void
): void;
fractionalSeconds(
args: FractionalSecondsCommandInput,
options: __HttpHandlerOptions,
cb: (err: any, data?: FractionalSecondsCommandOutput) => void
): void;

/**
* @see {@link GreetingWithErrorsCommand}
*/
greetingWithErrors(): Promise<GreetingWithErrorsCommandOutput>;
greetingWithErrors(
args: GreetingWithErrorsCommandInput,
options?: __HttpHandlerOptions,
): Promise<GreetingWithErrorsCommandOutput>;
greetingWithErrors(
args: GreetingWithErrorsCommandInput,
cb: (err: any, data?: GreetingWithErrorsCommandOutput) => void
): void;
greetingWithErrors(
args: GreetingWithErrorsCommandInput,
options: __HttpHandlerOptions,
cb: (err: any, data?: GreetingWithErrorsCommandOutput) => void
): void;

/**
* @see {@link NoInputOutputCommand}
*/
noInputOutput(): Promise<NoInputOutputCommandOutput>;
noInputOutput(
args: NoInputOutputCommandInput,
options?: __HttpHandlerOptions,
): Promise<NoInputOutputCommandOutput>;
noInputOutput(
args: NoInputOutputCommandInput,
cb: (err: any, data?: NoInputOutputCommandOutput) => void
): void;
noInputOutput(
args: NoInputOutputCommandInput,
options: __HttpHandlerOptions,
cb: (err: any, data?: NoInputOutputCommandOutput) => void
): void;

/**
* @see {@link OperationWithDefaultsCommand}
*/
operationWithDefaults(): Promise<OperationWithDefaultsCommandOutput>;
operationWithDefaults(
args: OperationWithDefaultsCommandInput,
options?: __HttpHandlerOptions,
): Promise<OperationWithDefaultsCommandOutput>;
operationWithDefaults(
args: OperationWithDefaultsCommandInput,
cb: (err: any, data?: OperationWithDefaultsCommandOutput) => void
): void;
operationWithDefaults(
args: OperationWithDefaultsCommandInput,
options: __HttpHandlerOptions,
cb: (err: any, data?: OperationWithDefaultsCommandOutput) => void
): void;

/**
* @see {@link OptionalInputOutputCommand}
*/
optionalInputOutput(): Promise<OptionalInputOutputCommandOutput>;
optionalInputOutput(
args: OptionalInputOutputCommandInput,
options?: __HttpHandlerOptions,
): Promise<OptionalInputOutputCommandOutput>;
optionalInputOutput(
args: OptionalInputOutputCommandInput,
cb: (err: any, data?: OptionalInputOutputCommandOutput) => void
): void;
optionalInputOutput(
args: OptionalInputOutputCommandInput,
options: __HttpHandlerOptions,
cb: (err: any, data?: OptionalInputOutputCommandOutput) => void
): void;

/**
* @see {@link RecursiveShapesCommand}
*/
recursiveShapes(): Promise<RecursiveShapesCommandOutput>;
recursiveShapes(
args: RecursiveShapesCommandInput,
options?: __HttpHandlerOptions,
): Promise<RecursiveShapesCommandOutput>;
recursiveShapes(
args: RecursiveShapesCommandInput,
cb: (err: any, data?: RecursiveShapesCommandOutput) => void
): void;
recursiveShapes(
args: RecursiveShapesCommandInput,
options: __HttpHandlerOptions,
cb: (err: any, data?: RecursiveShapesCommandOutput) => void
): void;

/**
* @see {@link RpcV2CborDenseMapsCommand}
*/
rpcV2CborDenseMaps(): Promise<RpcV2CborDenseMapsCommandOutput>;
rpcV2CborDenseMaps(
args: RpcV2CborDenseMapsCommandInput,
options?: __HttpHandlerOptions,
): Promise<RpcV2CborDenseMapsCommandOutput>;
rpcV2CborDenseMaps(
args: RpcV2CborDenseMapsCommandInput,
cb: (err: any, data?: RpcV2CborDenseMapsCommandOutput) => void
): void;
rpcV2CborDenseMaps(
args: RpcV2CborDenseMapsCommandInput,
options: __HttpHandlerOptions,
cb: (err: any, data?: RpcV2CborDenseMapsCommandOutput) => void
): void;

/**
* @see {@link RpcV2CborListsCommand}
*/
rpcV2CborLists(): Promise<RpcV2CborListsCommandOutput>;
rpcV2CborLists(
args: RpcV2CborListsCommandInput,
options?: __HttpHandlerOptions,
): Promise<RpcV2CborListsCommandOutput>;
rpcV2CborLists(
args: RpcV2CborListsCommandInput,
cb: (err: any, data?: RpcV2CborListsCommandOutput) => void
): void;
rpcV2CborLists(
args: RpcV2CborListsCommandInput,
options: __HttpHandlerOptions,
cb: (err: any, data?: RpcV2CborListsCommandOutput) => void
): void;

/**
* @see {@link RpcV2CborSparseMapsCommand}
*/
rpcV2CborSparseMaps(): Promise<RpcV2CborSparseMapsCommandOutput>;
rpcV2CborSparseMaps(
args: RpcV2CborSparseMapsCommandInput,
options?: __HttpHandlerOptions,
): Promise<RpcV2CborSparseMapsCommandOutput>;
rpcV2CborSparseMaps(
args: RpcV2CborSparseMapsCommandInput,
cb: (err: any, data?: RpcV2CborSparseMapsCommandOutput) => void
): void;
rpcV2CborSparseMaps(
args: RpcV2CborSparseMapsCommandInput,
options: __HttpHandlerOptions,
cb: (err: any, data?: RpcV2CborSparseMapsCommandOutput) => void
): void;

/**
* @see {@link SimpleScalarPropertiesCommand}
*/
simpleScalarProperties(): Promise<SimpleScalarPropertiesCommandOutput>;
simpleScalarProperties(
args: SimpleScalarPropertiesCommandInput,
options?: __HttpHandlerOptions,
): Promise<SimpleScalarPropertiesCommandOutput>;
simpleScalarProperties(
args: SimpleScalarPropertiesCommandInput,
cb: (err: any, data?: SimpleScalarPropertiesCommandOutput) => void
): void;
simpleScalarProperties(
args: SimpleScalarPropertiesCommandInput,
options: __HttpHandlerOptions,
cb: (err: any, data?: SimpleScalarPropertiesCommandOutput) => void
): void;

/**
* @see {@link SparseNullsOperationCommand}
*/
sparseNullsOperation(): Promise<SparseNullsOperationCommandOutput>;
sparseNullsOperation(
args: SparseNullsOperationCommandInput,
options?: __HttpHandlerOptions,
): Promise<SparseNullsOperationCommandOutput>;
sparseNullsOperation(
args: SparseNullsOperationCommandInput,
cb: (err: any, data?: SparseNullsOperationCommandOutput) => void
): void;
sparseNullsOperation(
args: SparseNullsOperationCommandInput,
options: __HttpHandlerOptions,
cb: (err: any, data?: SparseNullsOperationCommandOutput) => void
): void;

}

/**
* @public
*/
export class RpcV2Protocol extends RpcV2ProtocolClient implements RpcV2Protocol {}
createAggregatedClient(commands, RpcV2Protocol);
Loading

0 comments on commit 3375c7e

Please sign in to comment.