From 87b4191c94c4005bf34bc3d84b181254b7403e96 Mon Sep 17 00:00:00 2001 From: Guillaume Duboc Date: Fri, 26 Jan 2024 17:48:22 +0100 Subject: [PATCH 1/2] feat: make documentClient optionnal on Table --- src/v1/operations/batch/batchWrite.ts | 2 +- src/v1/operations/deleteItem/command.ts | 6 +++--- src/v1/operations/errors.ts | 7 +++++++ src/v1/operations/getItem/command.ts | 6 +++--- src/v1/operations/putItem/command.ts | 6 +++--- src/v1/operations/query/command.ts | 2 +- src/v1/operations/scan/command.ts | 2 +- .../transactions/deleteItem/operation.ts | 2 +- .../transactions/putItem/operation.ts | 2 +- .../transactions/updateItem/operation.ts | 2 +- src/v1/operations/updateItem/command.ts | 6 +++--- src/v1/table/class.ts | 17 ++++++++++++++--- 12 files changed, 39 insertions(+), 21 deletions(-) diff --git a/src/v1/operations/batch/batchWrite.ts b/src/v1/operations/batch/batchWrite.ts index 4901201e2..25d9c0b8e 100644 --- a/src/v1/operations/batch/batchWrite.ts +++ b/src/v1/operations/batch/batchWrite.ts @@ -28,7 +28,7 @@ export const batchWrite = async ( } = {} ): Promise => { const documentClient = - options?.dynamoDBDocumentClient ?? requests[0][$entity].table.documentClient + options?.dynamoDBDocumentClient ?? requests[0][$entity].table.getDocumentClient() const commandInput = getBatchWriteCommandInput(requests, options?.batchWriteOptions) diff --git a/src/v1/operations/deleteItem/command.ts b/src/v1/operations/deleteItem/command.ts index eb6e192db..a000ddcdb 100644 --- a/src/v1/operations/deleteItem/command.ts +++ b/src/v1/operations/deleteItem/command.ts @@ -78,9 +78,9 @@ export class DeleteItemCommand< async send(): Promise> { const deleteItemParams = this.params() - const commandOutput = await this[$entity].table.documentClient.send( - new DeleteCommand(deleteItemParams) - ) + const commandOutput = await this[$entity].table + .getDocumentClient() + .send(new DeleteCommand(deleteItemParams)) const { Attributes: attributes, ...restCommandOutput } = commandOutput diff --git a/src/v1/operations/errors.ts b/src/v1/operations/errors.ts index 3249db658..c00ee79a8 100644 --- a/src/v1/operations/errors.ts +++ b/src/v1/operations/errors.ts @@ -71,6 +71,12 @@ type UnknownOptionErrorBlueprint = ErrorBlueprint<{ payload: { option: unknown } }> +type MissingDocumentClientErrorBlueprint = ErrorBlueprint<{ + code: 'operations.missingDocumentClient' + hasPath: false + payload: undefined +}> + export type OperationsErrorBlueprints = | ScanCommandErrorBlueprints | QueryCommandErrorBlueprints @@ -87,3 +93,4 @@ export type OperationsErrorBlueprints = | InvalidSelectOptionErrorBlueprint | UnknownOptionErrorBlueprint | ExpressionParsersErrorBlueprints + | MissingDocumentClientErrorBlueprint diff --git a/src/v1/operations/getItem/command.ts b/src/v1/operations/getItem/command.ts index ec6af98ab..a800e2d40 100644 --- a/src/v1/operations/getItem/command.ts +++ b/src/v1/operations/getItem/command.ts @@ -62,9 +62,9 @@ export class GetItemCommand< async send(): Promise> { const getItemParams = this.params() - const commandOutput = await this[$entity].table.documentClient.send( - new GetCommand(getItemParams) - ) + const commandOutput = await this[$entity].table + .getDocumentClient() + .send(new GetCommand(getItemParams)) const { Item: item, ...restCommandOutput } = commandOutput diff --git a/src/v1/operations/putItem/command.ts b/src/v1/operations/putItem/command.ts index 057a40690..1ec3d4f41 100644 --- a/src/v1/operations/putItem/command.ts +++ b/src/v1/operations/putItem/command.ts @@ -93,9 +93,9 @@ export class PutItemCommand< async send(): Promise> { const putItemParams = this.params() - const commandOutput = await this[$entity].table.documentClient.send( - new PutCommand(putItemParams) - ) + const commandOutput = await this[$entity].table + .getDocumentClient() + .send(new PutCommand(putItemParams)) const { Attributes: attributes, ...restCommandOutput } = commandOutput diff --git a/src/v1/operations/query/command.ts b/src/v1/operations/query/command.ts index 04992f099..b21dc612c 100644 --- a/src/v1/operations/query/command.ts +++ b/src/v1/operations/query/command.ts @@ -160,7 +160,7 @@ export class QueryCommand< ScannedCount: pageScannedCount, ConsumedCapacity: pageConsumedCapacity, $metadata: pageMetadata - } = await this[$table].documentClient.send(new _QueryCommand(pageQueryParams)) + } = await this[$table].getDocumentClient().send(new _QueryCommand(pageQueryParams)) for (const item of items) { const itemEntityName = item[this[$table].entityAttributeSavedAs] diff --git a/src/v1/operations/scan/command.ts b/src/v1/operations/scan/command.ts index 47f9d243c..e10f07d7c 100644 --- a/src/v1/operations/scan/command.ts +++ b/src/v1/operations/scan/command.ts @@ -119,7 +119,7 @@ export class ScanCommand< ScannedCount: pageScannedCount, ConsumedCapacity: pageConsumedCapacity, $metadata: pageMetadata - } = await this[$table].documentClient.send(new _ScanCommand(pageScanParams)) + } = await this[$table].getDocumentClient().send(new _ScanCommand(pageScanParams)) for (const item of items) { const itemEntityName = item[this[$table].entityAttributeSavedAs] diff --git a/src/v1/operations/transactions/deleteItem/operation.ts b/src/v1/operations/transactions/deleteItem/operation.ts index b25810595..dee9b5c20 100644 --- a/src/v1/operations/transactions/deleteItem/operation.ts +++ b/src/v1/operations/transactions/deleteItem/operation.ts @@ -58,7 +58,7 @@ export class DeleteItemTransaction< params: TransactDeleteItemParams } { return { - documentClient: this[$entity].table.documentClient, + documentClient: this[$entity].table.getDocumentClient(), type: 'Delete', params: this.params() } diff --git a/src/v1/operations/transactions/putItem/operation.ts b/src/v1/operations/transactions/putItem/operation.ts index 740fc00dd..79f0191af 100644 --- a/src/v1/operations/transactions/putItem/operation.ts +++ b/src/v1/operations/transactions/putItem/operation.ts @@ -58,7 +58,7 @@ export class PutItemTransaction< params: TransactPutItemParams } { return { - documentClient: this[$entity].table.documentClient, + documentClient: this[$entity].table.getDocumentClient(), type: 'Put', params: this.params() } diff --git a/src/v1/operations/transactions/updateItem/operation.ts b/src/v1/operations/transactions/updateItem/operation.ts index 979085273..2ae0bc2fd 100644 --- a/src/v1/operations/transactions/updateItem/operation.ts +++ b/src/v1/operations/transactions/updateItem/operation.ts @@ -58,7 +58,7 @@ export class UpdateItemTransaction< params: TransactUpdateItemParams } { return { - documentClient: this[$entity].table.documentClient, + documentClient: this[$entity].table.getDocumentClient(), type: 'Update', params: this.params() } diff --git a/src/v1/operations/updateItem/command.ts b/src/v1/operations/updateItem/command.ts index a8e17102b..ae1c6f411 100644 --- a/src/v1/operations/updateItem/command.ts +++ b/src/v1/operations/updateItem/command.ts @@ -93,9 +93,9 @@ export class UpdateItemCommand< async send(): Promise> { const getItemParams = this.params() - const commandOutput = await this[$entity].table.documentClient.send( - new UpdateCommand(getItemParams) - ) + const commandOutput = await this[$entity].table + .getDocumentClient() + .send(new UpdateCommand(getItemParams)) const { Attributes: attributes, ...restCommandOutput } = commandOutput diff --git a/src/v1/table/class.ts b/src/v1/table/class.ts index 0d00d4749..285223193 100644 --- a/src/v1/table/class.ts +++ b/src/v1/table/class.ts @@ -1,5 +1,6 @@ import type { DynamoDBDocumentClient } from '@aws-sdk/lib-dynamodb' +import { DynamoDBToolboxError } from 'v1/errors' import type { TableCommand } from 'v1/operations/class' import type { NarrowObject, NarrowObjectRec } from 'v1/types/narrowObject' import { isString } from 'v1/utils/validation/isString' @@ -12,7 +13,7 @@ export class TableV2< INDEXES extends Record = Key extends PARTITION_KEY ? Record : {}, ENTITY_ATTRIBUTE_SAVED_AS extends string = Key extends PARTITION_KEY ? string : '_et' > { - public documentClient: DynamoDBDocumentClient + public documentClient?: DynamoDBDocumentClient public name: string | (() => string) public partitionKey: PARTITION_KEY public sortKey?: SORT_KEY @@ -22,7 +23,7 @@ export class TableV2< /** * Define a Table * - * @param documentClient DynamoDBDocumentClient + * @param documentClient _(optional)_ DynamoDBDocumentClient * @param name string * @param partitionKey Partition key * @param sortKey _(optional)_ Sort key @@ -36,7 +37,7 @@ export class TableV2< indexes = {} as INDEXES, entityAttributeSavedAs = '_et' as ENTITY_ATTRIBUTE_SAVED_AS }: { - documentClient: DynamoDBDocumentClient + documentClient?: DynamoDBDocumentClient name: string | (() => string) partitionKey: NarrowObject sortKey?: NarrowObject @@ -66,4 +67,14 @@ export class TableV2< ): TABLE_COMMAND_CLASS { return new commandClass(this) } + + getDocumentClient = () => { + if (this.documentClient === undefined) { + throw new DynamoDBToolboxError('operations.missingDocumentClient', { + message: 'You need to set a document client on your table to send a command' + }) + } + + return this.documentClient + } } From 77420a37b5ad176d1762b75e73543400afb042b0 Mon Sep 17 00:00:00 2001 From: Guillaume Duboc Date: Fri, 26 Jan 2024 18:06:05 +0100 Subject: [PATCH 2/2] chore: remove document client from unit tests --- .../operations/batch/batchWrite.unit.test.ts | 13 ++----------- .../BatchDeleteItemParams.unit.test.ts | 10 +--------- .../putItem/BatchPutItemParams.unit.test.ts | 10 +--------- .../deleteItemParams.unit.test.ts | 10 +--------- .../getItemParams/getItemParams.unit.test.ts | 13 ++----------- .../putItemParams/putItemParams.unit.test.ts | 16 +++------------- .../queryParams/queryParams.unit.test.ts | 9 +-------- .../scan/scanParams/scanParams.unit.test.ts | 9 +-------- .../transactDeleteItemParams.unit.test.ts | 10 +--------- .../transactPutItemParams.unit.test.ts | 16 +++------------- .../transactUpdateItemParams.unit.test.ts | 19 ++++--------------- .../updateItemParams.unit.test.ts | 19 ++++--------------- 12 files changed, 24 insertions(+), 130 deletions(-) diff --git a/src/v1/operations/batch/batchWrite.unit.test.ts b/src/v1/operations/batch/batchWrite.unit.test.ts index b67680c37..7feb494f8 100644 --- a/src/v1/operations/batch/batchWrite.unit.test.ts +++ b/src/v1/operations/batch/batchWrite.unit.test.ts @@ -1,15 +1,8 @@ -import { DynamoDBClient } from '@aws-sdk/client-dynamodb' -import { DynamoDBDocumentClient } from '@aws-sdk/lib-dynamodb' - import { DynamoDBToolboxError, EntityV2, TableV2, schema, string } from 'v1' import { BatchPutItemRequest } from './putItem/operation' import { BatchDeleteItemRequest } from './deleteItem/operation' import { getBatchWriteCommandInput } from './batchWrite' -const dynamoDbClient = new DynamoDBClient({}) - -const documentClient = DynamoDBDocumentClient.from(dynamoDbClient) - const TestTable = new TableV2({ name: 'test-table', partitionKey: { @@ -19,8 +12,7 @@ const TestTable = new TableV2({ sortKey: { type: 'string', name: 'sk' - }, - documentClient + } }) const TestTable2 = new TableV2({ name: 'test-table2', @@ -38,8 +30,7 @@ const TestTable2 = new TableV2({ sortKey: { name: 'GSIsk1', type: 'string' }, type: 'global' } - }, - documentClient + } }) const TestEntity = new EntityV2({ diff --git a/src/v1/operations/batch/deleteItem/BatchDeleteItemParams.unit.test.ts b/src/v1/operations/batch/deleteItem/BatchDeleteItemParams.unit.test.ts index b7bc9fde5..a3c946cb4 100644 --- a/src/v1/operations/batch/deleteItem/BatchDeleteItemParams.unit.test.ts +++ b/src/v1/operations/batch/deleteItem/BatchDeleteItemParams.unit.test.ts @@ -1,13 +1,6 @@ -import { DynamoDBClient } from '@aws-sdk/client-dynamodb' -import { DynamoDBDocumentClient } from '@aws-sdk/lib-dynamodb' - import { DynamoDBToolboxError, EntityV2, TableV2, schema, string } from 'v1' import { BatchDeleteItemRequest } from './operation' -const dynamoDbClient = new DynamoDBClient({}) - -const documentClient = DynamoDBDocumentClient.from(dynamoDbClient) - const TestTable = new TableV2({ name: 'test-table', partitionKey: { @@ -17,8 +10,7 @@ const TestTable = new TableV2({ sortKey: { type: 'string', name: 'sk' - }, - documentClient + } }) const TestEntity = new EntityV2({ diff --git a/src/v1/operations/batch/putItem/BatchPutItemParams.unit.test.ts b/src/v1/operations/batch/putItem/BatchPutItemParams.unit.test.ts index bfaffc84c..195da1773 100644 --- a/src/v1/operations/batch/putItem/BatchPutItemParams.unit.test.ts +++ b/src/v1/operations/batch/putItem/BatchPutItemParams.unit.test.ts @@ -1,13 +1,6 @@ -import { DynamoDBClient } from '@aws-sdk/client-dynamodb' -import { DynamoDBDocumentClient } from '@aws-sdk/lib-dynamodb' - import { DynamoDBToolboxError, EntityV2, TableV2, schema, string } from 'v1' import { BatchPutItemRequest } from './operation' -const dynamoDbClient = new DynamoDBClient({}) - -const documentClient = DynamoDBDocumentClient.from(dynamoDbClient) - const TestTable = new TableV2({ name: 'test-table', partitionKey: { @@ -17,8 +10,7 @@ const TestTable = new TableV2({ sortKey: { type: 'string', name: 'sk' - }, - documentClient + } }) const TestEntity = new EntityV2({ diff --git a/src/v1/operations/deleteItem/deleteItemParams/deleteItemParams.unit.test.ts b/src/v1/operations/deleteItem/deleteItemParams/deleteItemParams.unit.test.ts index d5b7b1bb5..ab80bb243 100644 --- a/src/v1/operations/deleteItem/deleteItemParams/deleteItemParams.unit.test.ts +++ b/src/v1/operations/deleteItem/deleteItemParams/deleteItemParams.unit.test.ts @@ -1,6 +1,3 @@ -import { DynamoDBClient } from '@aws-sdk/client-dynamodb' -import { DynamoDBDocumentClient } from '@aws-sdk/lib-dynamodb' - import { TableV2, EntityV2, @@ -11,10 +8,6 @@ import { prefix } from 'v1' -const dynamoDbClient = new DynamoDBClient({}) - -const documentClient = DynamoDBDocumentClient.from(dynamoDbClient) - const TestTable = new TableV2({ name: 'test-table', partitionKey: { @@ -24,8 +17,7 @@ const TestTable = new TableV2({ sortKey: { type: 'string', name: 'sk' - }, - documentClient + } }) const TestEntity = new EntityV2({ diff --git a/src/v1/operations/getItem/getItemParams/getItemParams.unit.test.ts b/src/v1/operations/getItem/getItemParams/getItemParams.unit.test.ts index f6b3d2b9e..a01d39abe 100644 --- a/src/v1/operations/getItem/getItemParams/getItemParams.unit.test.ts +++ b/src/v1/operations/getItem/getItemParams/getItemParams.unit.test.ts @@ -1,12 +1,5 @@ -import { DynamoDBClient } from '@aws-sdk/client-dynamodb' -import { DynamoDBDocumentClient } from '@aws-sdk/lib-dynamodb' - import { TableV2, EntityV2, schema, string, DynamoDBToolboxError, GetItemCommand, prefix } from 'v1' -const dynamoDbClient = new DynamoDBClient({}) - -const documentClient = DynamoDBDocumentClient.from(dynamoDbClient) - const TestTable = new TableV2({ name: 'test-table', partitionKey: { @@ -16,8 +9,7 @@ const TestTable = new TableV2({ sortKey: { type: 'string', name: 'sk' - }, - documentClient + } }) const TestEntity = new EntityV2({ @@ -33,8 +25,7 @@ const TestEntity = new EntityV2({ const TestTable2 = new TableV2({ name: 'test-table', partitionKey: { type: 'string', name: 'pk' }, - sortKey: { type: 'string', name: 'sk' }, - documentClient + sortKey: { type: 'string', name: 'sk' } }) const TestEntity2 = new EntityV2({ diff --git a/src/v1/operations/putItem/putItemParams/putItemParams.unit.test.ts b/src/v1/operations/putItem/putItemParams/putItemParams.unit.test.ts index dc3470839..8c16dcbba 100644 --- a/src/v1/operations/putItem/putItemParams/putItemParams.unit.test.ts +++ b/src/v1/operations/putItem/putItemParams/putItemParams.unit.test.ts @@ -1,6 +1,3 @@ -import { DynamoDBDocumentClient } from '@aws-sdk/lib-dynamodb' -import { DynamoDBClient } from '@aws-sdk/client-dynamodb' - import { TableV2, EntityV2, @@ -19,10 +16,6 @@ import { prefix } from 'v1' -const dynamoDbClient = new DynamoDBClient({}) - -const documentClient = DynamoDBDocumentClient.from(dynamoDbClient) - const TestTable = new TableV2({ name: 'test-table', partitionKey: { @@ -32,8 +25,7 @@ const TestTable = new TableV2({ sortKey: { type: 'string', name: 'sk' - }, - documentClient + } }) const TestEntity = new EntityV2({ @@ -62,8 +54,7 @@ const TestEntity = new EntityV2({ const TestTable2 = new TableV2({ name: 'test-table', - partitionKey: { type: 'string', name: 'pk' }, - documentClient + partitionKey: { type: 'string', name: 'pk' } }) const TestEntity2 = new EntityV2({ @@ -97,8 +88,7 @@ const TestEntity3 = new EntityV2({ const TestTable3 = new TableV2({ name: 'TestTable3', partitionKey: { type: 'string', name: 'pk' }, - sortKey: { type: 'string', name: 'sk' }, - documentClient + sortKey: { type: 'string', name: 'sk' } }) const TestEntity4 = new EntityV2({ diff --git a/src/v1/operations/query/queryParams/queryParams.unit.test.ts b/src/v1/operations/query/queryParams/queryParams.unit.test.ts index 91b6755d1..7aeddb424 100644 --- a/src/v1/operations/query/queryParams/queryParams.unit.test.ts +++ b/src/v1/operations/query/queryParams/queryParams.unit.test.ts @@ -1,5 +1,3 @@ -import { DynamoDBClient } from '@aws-sdk/client-dynamodb' -import { DynamoDBDocumentClient } from '@aws-sdk/lib-dynamodb' import type { A } from 'ts-toolbelt' import { @@ -15,10 +13,6 @@ import { prefix } from 'v1' -const dynamoDbClient = new DynamoDBClient({}) - -const documentClient = DynamoDBDocumentClient.from(dynamoDbClient) - const TestTable = new TableV2({ name: 'test-table', partitionKey: { @@ -48,8 +42,7 @@ const TestTable = new TableV2({ type: 'string' } } - }, - documentClient + } }) const Entity1 = new EntityV2({ diff --git a/src/v1/operations/scan/scanParams/scanParams.unit.test.ts b/src/v1/operations/scan/scanParams/scanParams.unit.test.ts index a9af0142f..cdc8177e4 100644 --- a/src/v1/operations/scan/scanParams/scanParams.unit.test.ts +++ b/src/v1/operations/scan/scanParams/scanParams.unit.test.ts @@ -1,5 +1,3 @@ -import { DynamoDBClient } from '@aws-sdk/client-dynamodb' -import { DynamoDBDocumentClient } from '@aws-sdk/lib-dynamodb' import type { A } from 'ts-toolbelt' import { @@ -15,10 +13,6 @@ import { prefix } from 'v1' -const dynamoDbClient = new DynamoDBClient({}) - -const documentClient = DynamoDBDocumentClient.from(dynamoDbClient) - const TestTable = new TableV2({ name: 'test-table', partitionKey: { @@ -41,8 +35,7 @@ const TestTable = new TableV2({ type: 'string' } } - }, - documentClient + } }) const Entity1 = new EntityV2({ diff --git a/src/v1/operations/transactions/deleteItem/transactDeleteItemParams/transactDeleteItemParams.unit.test.ts b/src/v1/operations/transactions/deleteItem/transactDeleteItemParams/transactDeleteItemParams.unit.test.ts index c1baf860a..f7bdf1751 100644 --- a/src/v1/operations/transactions/deleteItem/transactDeleteItemParams/transactDeleteItemParams.unit.test.ts +++ b/src/v1/operations/transactions/deleteItem/transactDeleteItemParams/transactDeleteItemParams.unit.test.ts @@ -1,13 +1,6 @@ -import { DynamoDBDocumentClient } from '@aws-sdk/lib-dynamodb' -import { DynamoDBClient } from '@aws-sdk/client-dynamodb' - import { TableV2, EntityV2, schema, string, DynamoDBToolboxError } from 'v1' import { DeleteItemTransaction } from '../operation' -const dynamoDbClient = new DynamoDBClient({}) - -const documentClient = DynamoDBDocumentClient.from(dynamoDbClient) - const TestTable = new TableV2({ name: 'test-table', partitionKey: { @@ -17,8 +10,7 @@ const TestTable = new TableV2({ sortKey: { type: 'string', name: 'sk' - }, - documentClient + } }) const TestEntity = new EntityV2({ diff --git a/src/v1/operations/transactions/putItem/transactPutItemParams/transactPutItemParams.unit.test.ts b/src/v1/operations/transactions/putItem/transactPutItemParams/transactPutItemParams.unit.test.ts index 9e326ee08..45e72faeb 100644 --- a/src/v1/operations/transactions/putItem/transactPutItemParams/transactPutItemParams.unit.test.ts +++ b/src/v1/operations/transactions/putItem/transactPutItemParams/transactPutItemParams.unit.test.ts @@ -1,6 +1,3 @@ -import { DynamoDBDocumentClient } from '@aws-sdk/lib-dynamodb' -import { DynamoDBClient } from '@aws-sdk/client-dynamodb' - import { TableV2, EntityV2, @@ -17,10 +14,6 @@ import { PutItemTransaction } from 'v1' -const dynamoDbClient = new DynamoDBClient({}) - -const documentClient = DynamoDBDocumentClient.from(dynamoDbClient) - const TestTable = new TableV2({ name: 'test-table', partitionKey: { @@ -30,8 +23,7 @@ const TestTable = new TableV2({ sortKey: { type: 'string', name: 'sk' - }, - documentClient + } }) const TestEntity = new EntityV2({ @@ -58,8 +50,7 @@ const TestEntity = new EntityV2({ const TestTable2 = new TableV2({ name: 'test-table', - partitionKey: { type: 'string', name: 'pk' }, - documentClient + partitionKey: { type: 'string', name: 'pk' } }) const TestEntity2 = new EntityV2({ @@ -93,8 +84,7 @@ const TestEntity3 = new EntityV2({ const TestTable3 = new TableV2({ name: 'TestTable3', partitionKey: { type: 'string', name: 'pk' }, - sortKey: { type: 'string', name: 'sk' }, - documentClient + sortKey: { type: 'string', name: 'sk' } }) const TestEntity4 = new EntityV2({ diff --git a/src/v1/operations/transactions/updateItem/transactUpdateItemParams/transactUpdateItemParams.unit.test.ts b/src/v1/operations/transactions/updateItem/transactUpdateItemParams/transactUpdateItemParams.unit.test.ts index 3cb728d3c..bdb45666c 100644 --- a/src/v1/operations/transactions/updateItem/transactUpdateItemParams/transactUpdateItemParams.unit.test.ts +++ b/src/v1/operations/transactions/updateItem/transactUpdateItemParams/transactUpdateItemParams.unit.test.ts @@ -1,6 +1,3 @@ -import { DynamoDBDocumentClient } from '@aws-sdk/lib-dynamodb' -import { DynamoDBClient } from '@aws-sdk/client-dynamodb' - import { TableV2, EntityV2, @@ -30,10 +27,6 @@ import { $prepend } from 'v1/operations/updateItem/utils' -const dynamoDbClient = new DynamoDBClient({}) - -const documentClient = DynamoDBDocumentClient.from(dynamoDbClient) - const TestTable = new TableV2({ name: 'test-table', partitionKey: { @@ -43,8 +36,7 @@ const TestTable = new TableV2({ sortKey: { type: 'string', name: 'sk' - }, - documentClient + } }) const TestEntity = new EntityV2({ @@ -88,8 +80,7 @@ const TestTable2 = new TableV2({ partitionKey: { type: 'string', name: 'pk' - }, - documentClient + } }) const TestEntity2 = new EntityV2({ @@ -121,8 +112,7 @@ const TestTable3 = new TableV2({ partitionKey: { type: 'string', name: 'pk' - }, - documentClient + } }) const TestEntity3 = new EntityV2({ @@ -142,8 +132,7 @@ const TestTable4 = new TableV2({ partitionKey: { type: 'string', name: 'pk' - }, - documentClient + } }) const TestEntity4 = new EntityV2({ diff --git a/src/v1/operations/updateItem/updateItemParams/updateItemParams.unit.test.ts b/src/v1/operations/updateItem/updateItemParams/updateItemParams.unit.test.ts index b768da6be..0b4a488ff 100644 --- a/src/v1/operations/updateItem/updateItemParams/updateItemParams.unit.test.ts +++ b/src/v1/operations/updateItem/updateItemParams/updateItemParams.unit.test.ts @@ -1,6 +1,3 @@ -import { DynamoDBDocumentClient } from '@aws-sdk/lib-dynamodb' -import { DynamoDBClient } from '@aws-sdk/client-dynamodb' - import { TableV2, EntityV2, @@ -20,10 +17,6 @@ import { } from 'v1' import { $set, $get, $remove, $sum, $subtract, $add, $delete, $append, $prepend } from '../utils' -const dynamoDbClient = new DynamoDBClient({}) - -const documentClient = DynamoDBDocumentClient.from(dynamoDbClient) - const TestTable = new TableV2({ name: 'test-table', partitionKey: { @@ -33,8 +26,7 @@ const TestTable = new TableV2({ sortKey: { type: 'string', name: 'sk' - }, - documentClient + } }) const TestEntity = new EntityV2({ @@ -78,8 +70,7 @@ const TestTable2 = new TableV2({ partitionKey: { type: 'string', name: 'pk' - }, - documentClient + } }) const TestEntity2 = new EntityV2({ @@ -111,8 +102,7 @@ const TestTable3 = new TableV2({ partitionKey: { type: 'string', name: 'pk' - }, - documentClient + } }) const TestEntity3 = new EntityV2({ @@ -132,8 +122,7 @@ const TestTable4 = new TableV2({ partitionKey: { type: 'string', name: 'pk' - }, - documentClient + } }) const TestEntity4 = new EntityV2({