Skip to content

Commit

Permalink
refactor(make-request): remove non-existent method
Browse files Browse the repository at this point in the history
This method now executes PartiQL requests. No Replacement available.

BREAKING CHANGE:
Methods DynamoStore.makeRequest and DynamoDBWrapper.makeRequest are no longer available.
  • Loading branch information
Michael Wittwer committed Apr 16, 2024
1 parent 01a0be7 commit 9a64894
Show file tree
Hide file tree
Showing 4 changed files with 0 additions and 62 deletions.
36 changes: 0 additions & 36 deletions src/dynamo/dynamo-db-wrapper.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -98,31 +98,6 @@ describe('dynamo rx', () => {
})
})

// TODO v3: remove when decision is made if DynamoDbWrapper.makeRequest comes back or not
// describe('makeRequest', () => {
// let dynamoDBWrapper: DynamoDbWrapper
// let sessionValidityEnsurerMock: jest.Mock
// let dynamoDBMock: jest.SpyInstance
// let pseudoParams: any
//
// beforeEach(() => {
// pseudoParams = { TableName: 'tableName', KeyConditionExpression: 'blub' }
// sessionValidityEnsurerMock = jest.fn().mockReturnValueOnce(Promise.resolve(true))
// updateDynamoEasyConfig({ sessionValidityEnsurer: sessionValidityEnsurerMock })
// dynamoDBWrapper = new DynamoDbWrapper(new DynamoDB.DynamoDB({}))
// })
//
// it('should call the validity ensurer before each call and call the correct dynamoDB method', async () => {
// dynamoDBMock = jest
// .spyOn(dynamoDBWrapper.dynamoDB, 'makeRequest')
// .mockReturnValueOnce(<any>{ promise: () => Promise.resolve() })
// await dynamoDBWrapper.makeRequest('pseudoOperation', pseudoParams)
// expect(sessionValidityEnsurerMock).toHaveBeenCalled()
// expect(dynamoDBMock).toHaveBeenCalledTimes(1)
// expect(dynamoDBMock).toHaveBeenCalledWith('pseudoOperation', pseudoParams)
// })
// })

describe('query', () => {
beforeEach(() => {})
it('should throw when no KeyConditionExpression was given', () => {
Expand All @@ -131,15 +106,4 @@ describe('dynamo rx', () => {
expect(() => dynamoDBWrapper.query({ TableName: 'tableName' })).toThrow()
})
})

// TODO v3: remove when decision is made if DynamoDbWrapper.makeRequest comes back or not
// it('should call makeRequest with the given params', async () => {
// const dynamoDBWrapper = new DynamoDbWrapper(new DynamoDB.DynamoDB({}))
// const makeRequestMock = jest.fn().mockReturnValue({ promise: (args: any) => Promise.resolve(args) })
// Object.assign(dynamoDBWrapper, { dynamoDB: { makeRequest: makeRequestMock } })
//
// await dynamoDBWrapper.makeRequest(<any>{ ok: true })
// expect(makeRequestMock).toHaveBeenCalled()
// expect(makeRequestMock.mock.calls.slice(-1)[0][0]).toEqual({ ok: true })
// })
})
7 changes: 0 additions & 7 deletions src/dynamo/dynamo-db-wrapper.ts
Original file line number Diff line number Diff line change
Expand Up @@ -58,11 +58,4 @@ export class DynamoDbWrapper {

return dynamoEasyConfig.sessionValidityEnsurer().then(() => this.dynamoDB.query(params))
}

/*
* TODO v3: check for replacement. DynamoDB.executeStatement is now used to execute statements using PartiQL
*/
// makeRequest(operation: string, params?: Record<string, any>): Promise<any> {
// return dynamoEasyConfig.sessionValidityEnsurer().then(() => this.dynamoDB.executeStatement(operation as any, params))
// }
}
9 changes: 0 additions & 9 deletions src/dynamo/dynamo-store.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -90,15 +90,6 @@ describe('dynamo store', () => {
expect(store.transactGet([{ id: 'myId' }]) instanceof TransactGetSingleTableRequest).toBeTruthy())
})

// TODO v3: possibly remove when we decided on how to proceed with DynamoDbWrapper.makeRequest
// xdescribe('should enable custom requests', () => {
// const makeRequestSpy = jest.fn().mockReturnValue(Promise.resolve())
// const store = new DynamoStore(SimpleWithPartitionKeyModel, dynamoDB)
// Object.assign(store, { dynamoDBWrapper: { makeRequest: makeRequestSpy } })
// store.makeRequest('updateTimeToLive', {})
// expect(makeRequestSpy).toBeCalled()
// })

describe('allow to get dynamoDB instance', () => {
const store = new DynamoStore(SimpleWithPartitionKeyModel, new DynamoDB.DynamoDB({}))
expect(store.dynamoDB).toBeDefined()
Expand Down
10 changes: 0 additions & 10 deletions src/dynamo/dynamo-store.ts
Original file line number Diff line number Diff line change
Expand Up @@ -80,14 +80,4 @@ export class DynamoStore<T> {
transactGet(keys: Array<Partial<T>>): TransactGetSingleTableRequest<T> {
return new TransactGetSingleTableRequest(this.dynamoDBWrapper, this.modelClazz, keys)
}

/**
* TODO v3: check for potential replacement
*/
// makeRequest<Z>(operation: DynamoApiOperations, params?: Record<string, any>): Promise<Z> {
// this.logger.debug('request', params)
// return this.dynamoDBWrapper
// .makeRequest(operation, params)
// .then(promiseTap((r: Z) => this.logger.debug('response', r)))
// }
}

0 comments on commit 9a64894

Please sign in to comment.