11import * as DynamoDB from '@aws-sdk/client-dynamodb'
2+ import { ReturnConsumedCapacity , ReturnItemCollectionMetrics } from '@aws-sdk/client-dynamodb'
23import { ComplexModel , SimpleWithPartitionKeyModel } from '../../../test/models'
34import { getTableName } from '../get-table-name.function'
45import { BatchWriteRequest } from './batch-write.request'
@@ -8,31 +9,33 @@ describe('batchWriteRequest', () => {
89
910 describe ( 'constructor' , ( ) => {
1011 it ( 'should initialize params' , ( ) => {
11- req = new BatchWriteRequest ( )
12+ req = new BatchWriteRequest ( new DynamoDB . DynamoDB ( { } ) )
1213 expect ( req . params . RequestItems ) . toBeDefined ( )
1314 expect ( req . params . RequestItems ) . toEqual ( { } )
1415 } )
1516
1617 describe ( 'use provided DynamoDB instance' , ( ) => {
17- const dynamoDB = new DynamoDB . default ( )
18+ const dynamoDB = new DynamoDB . DynamoDB ( { } )
1819 const batchWriteRequest = new BatchWriteRequest ( dynamoDB )
1920 expect ( batchWriteRequest . dynamoDB ) . toBe ( dynamoDB )
2021
21- const batchWriteRequest2 = new BatchWriteRequest ( )
22+ const batchWriteRequest2 = new BatchWriteRequest ( new DynamoDB . DynamoDB ( { } ) )
2223 expect ( batchWriteRequest2 . dynamoDB ) . not . toBe ( dynamoDB )
2324 } )
2425 } )
2526
2627 describe ( 'returnConsumedCapacity' , ( ) => {
2728 it ( 'should set params' , ( ) => {
28- req = new BatchWriteRequest ( ) . returnConsumedCapacity ( ' TOTAL' )
29+ req = new BatchWriteRequest ( new DynamoDB . DynamoDB ( { } ) ) . returnConsumedCapacity ( ReturnConsumedCapacity . TOTAL )
2930 expect ( req . params . ReturnConsumedCapacity ) . toBe ( 'TOTAL' )
3031 } )
3132 } )
3233
3334 describe ( 'returnItemCollectionMetrics' , ( ) => {
3435 it ( 'should set params' , ( ) => {
35- req = new BatchWriteRequest ( ) . returnItemCollectionMetrics ( 'SIZE' )
36+ req = new BatchWriteRequest ( new DynamoDB . DynamoDB ( { } ) ) . returnItemCollectionMetrics (
37+ ReturnItemCollectionMetrics . SIZE ,
38+ )
3639 expect ( req . params . ReturnItemCollectionMetrics ) . toBe ( 'SIZE' )
3740 } )
3841 } )
@@ -41,7 +44,7 @@ describe('batchWriteRequest', () => {
4144 const now = new Date ( )
4245
4346 it ( 'should set params' , ( ) => {
44- req = new BatchWriteRequest ( )
47+ req = new BatchWriteRequest ( new DynamoDB . DynamoDB ( { } ) )
4548 . delete ( SimpleWithPartitionKeyModel , [ { id : 'myId1' } ] )
4649 . delete ( ComplexModel , [ { id : 'myId2' , creationDate : now } ] )
4750
@@ -69,15 +72,17 @@ describe('batchWriteRequest', () => {
6972 const items : Array < Partial < SimpleWithPartitionKeyModel > > = [ ...new Array ( 30 ) ] . map ( ( _ , ix ) => ( {
7073 id : `mydId-${ ix } ` ,
7174 } ) )
72- expect ( ( ) => new BatchWriteRequest ( ) . delete ( SimpleWithPartitionKeyModel , items ) ) . toThrow ( )
75+ expect ( ( ) =>
76+ new BatchWriteRequest ( new DynamoDB . DynamoDB ( { } ) ) . delete ( SimpleWithPartitionKeyModel , items ) ,
77+ ) . toThrow ( )
7378 } )
7479 } )
7580
7681 describe ( 'put' , ( ) => {
7782 const now = new Date ( )
7883
7984 it ( 'should set params' , ( ) => {
80- req = new BatchWriteRequest ( )
85+ req = new BatchWriteRequest ( new DynamoDB . DynamoDB ( { } ) )
8186 . put ( SimpleWithPartitionKeyModel , [ < any > { id : 'myId1' } ] )
8287 . put ( ComplexModel , [ < any > { id : 'myId2' , creationDate : now } ] )
8388
@@ -98,7 +103,7 @@ describe('batchWriteRequest', () => {
98103
99104 it ( 'should throw when too many items' , ( ) => {
100105 const items : SimpleWithPartitionKeyModel [ ] = [ ...new Array ( 30 ) ] . map ( ( _ , ix ) => ( { id : `mydId-${ ix } ` , age : ix } ) )
101- expect ( ( ) => new BatchWriteRequest ( ) . put ( SimpleWithPartitionKeyModel , items ) ) . toThrow ( )
106+ expect ( ( ) => new BatchWriteRequest ( new DynamoDB . DynamoDB ( { } ) ) . put ( SimpleWithPartitionKeyModel , items ) ) . toThrow ( )
102107 } )
103108 } )
104109
@@ -116,7 +121,7 @@ describe('batchWriteRequest', () => {
116121 ( _ , ix ) => < ComplexModel > { id : `myId-${ ix } ` , creationDate : now } ,
117122 )
118123
119- beforeEach ( ( ) => ( req = new BatchWriteRequest ( ) ) )
124+ beforeEach ( ( ) => ( req = new BatchWriteRequest ( new DynamoDB . DynamoDB ( { } ) ) ) )
120125
121126 it ( 'should add correct request items' , ( ) => {
122127 req . put ( ComplexModel , complexItems ) . delete ( SimpleWithPartitionKeyModel , [ simpleItem ] )
@@ -144,7 +149,7 @@ describe('batchWriteRequest', () => {
144149 }
145150 batchWriteItemMock = jest . fn ( ) . mockReturnValueOnce ( Promise . resolve ( output ) )
146151 const dynamoDBWrapper = < any > { batchWriteItem : batchWriteItemMock }
147- req = new BatchWriteRequest ( )
152+ req = new BatchWriteRequest ( new DynamoDB . DynamoDB ( { } ) )
148153 Object . assign ( req , { dynamoDBWrapper } )
149154 } )
150155
0 commit comments