Skip to content

Commit

Permalink
update imports & exports for rest of files
Browse files Browse the repository at this point in the history
  • Loading branch information
lailien3 committed Jan 30, 2025
1 parent d24bc7b commit 3264363
Show file tree
Hide file tree
Showing 13 changed files with 76 additions and 61 deletions.
2 changes: 1 addition & 1 deletion packages/connectors-lib/src/aws.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ export default function () {
console.log('Config.aws.dynamodb.endpoint:', Config.aws.dynamodb.endpoint)

const docClient = createDocumentClient(dynamoDBInstance)
console.log('Real docClient initialized:', !!docClient)
console.log('Real docClient initialised:', !!docClient)

return {
ddb: dynamoDBInstance,
Expand Down
22 changes: 13 additions & 9 deletions packages/pocl-job/src/io/__tests__/db.spec.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import * as db from '../db.js'
import { docClient } from '../../../../connectors-lib/src/aws.js'
import { AWS } from '@defra-fish/connectors-lib'
import { GetCommand, UpdateCommand } from '@aws-sdk/lib-dynamodb'

jest.mock('../../config.js', () => ({
Expand All @@ -10,16 +10,20 @@ jest.mock('../../config.js', () => ({
}
}))

jest.mock('../../../../connectors-lib/src/aws.js', () => ({
docClient: {
send: jest.fn(),
scanAllPromise: jest.fn(),
queryAllPromise: jest.fn(),
batchWriteAllPromise: jest.fn(),
createUpdateExpression: jest.fn()
}
jest.mock('@defra-fish/connectors-lib', () => ({
AWS: jest.fn(() => ({
docClient: {
send: jest.fn(),
scanAllPromise: jest.fn(),
queryAllPromise: jest.fn(),
batchWriteAllPromise: jest.fn(),
createUpdateExpression: jest.fn()
}
}))
}))

const { docClient } = AWS.mock.results[0].value

describe('database operations', () => {
const TEST_FILENAME = 'testfile.xml'

Expand Down
3 changes: 2 additions & 1 deletion packages/pocl-job/src/io/db.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import config from '../config.js'
import { docClient } from '../../../connectors-lib/src/aws.js'
import { GetCommand, UpdateCommand } from '@aws-sdk/lib-dynamodb'
import { AWS } from '@defra-fish/connectors-lib'
const { docClient } = AWS()

/**
* Update the POCL file staging table to add or update the entry for the provided filename
Expand Down
Original file line number Diff line number Diff line change
@@ -1,25 +1,29 @@
import { PAYMENTS_TABLE } from '../../../config.js'
import { createPaymentJournal, updatePaymentJournal, getPaymentJournal, queryJournalsByTimestamp } from '../payment-journals.service.js'
import { docClient } from '../../../../../connectors-lib/src/aws.js'
import { PutCommand, UpdateCommand, GetCommand, QueryCommand } from '@aws-sdk/lib-dynamodb'
import { AWS } from '@defra-fish/connectors-lib'

jest.mock('../../../../../connectors-lib/src/aws.js', () => ({
docClient: {
send: jest.fn(),
createUpdateExpression: jest.fn(payload =>
Object.entries(payload).reduce(
(acc, [k, v], idx) => {
acc.UpdateExpression += `${idx > 0 ? ',' : ''}#${k} = :${k}`
acc.ExpressionAttributeNames[`#${k}`] = k
acc.ExpressionAttributeValues[`:${k}`] = v
return acc
},
{ UpdateExpression: 'SET ', ExpressionAttributeNames: {}, ExpressionAttributeValues: {} }
jest.mock('@defra-fish/connectors-lib', () => ({
AWS: jest.fn(() => ({
docClient: {
send: jest.fn(),
createUpdateExpression: jest.fn(payload =>
Object.entries(payload).reduce(
(acc, [k, v], idx) => {
acc.UpdateExpression += `${idx > 0 ? ',' : ''}#${k} = :${k}`
acc.ExpressionAttributeNames[`#${k}`] = k
acc.ExpressionAttributeValues[`:${k}`] = v
return acc
},
{ UpdateExpression: 'SET ', ExpressionAttributeNames: {}, ExpressionAttributeValues: {} }
)
)
)
}
}
}))
}))

const { docClient } = AWS.mock.results[0].value

describe('payment-journals service', () => {
beforeAll(async () => {
PAYMENTS_TABLE.TableName = 'TestTable'
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
import { PutCommand, UpdateCommand, GetCommand, QueryCommand } from '@aws-sdk/lib-dynamodb'
import { PAYMENTS_TABLE } from '../../config.js'
import db from 'debug'
// import { docClient } from '../../../../connectors-lib/src/aws.js'
import AWS from '../../../../connectors-lib/src/aws.js'
const { docClient } = AWS
import { AWS } from '@defra-fish/connectors-lib'
const { docClient } = AWS()

const debug = db('sales:paymentjournals')

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,7 @@ import moment from 'moment'
import { TRANSACTION_STATUS } from '../constants.js'
import permissionsService from '../../permissions.service.js'
import { UpdateCommand, GetCommand } from '@aws-sdk/lib-dynamodb'
import AWS from '../../../../../connectors-lib/src/aws.js'
const { docClient, sqs } = AWS
import { AWS } from '@defra-fish/connectors-lib'

const { START_AFTER_PAYMENT_MINUTES } = BusinessRulesLib

Expand All @@ -31,16 +30,20 @@ jest.mock('@defra-fish/business-rules-lib', () => ({
START_AFTER_PAYMENT_MINUTES: 30
}))

jest.mock('../../../../../connectors-lib/src/aws.js', () => ({
docClient: {
send: jest.fn(),
createUpdateExpression: jest.fn()
},
sqs: {
sendMessage: jest.fn()
}
jest.mock('@defra-fish/connectors-lib', () => ({
AWS: jest.fn(() => ({
docClient: {
send: jest.fn(),
createUpdateExpression: jest.fn()
},
sqs: {
sendMessage: jest.fn()
}
}))
}))

const { docClient, sqs } = AWS.mock.results[0].value

const getStagedTransactionRecord = () => {
const record = mockStagedTransactionRecord()
const {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,7 @@ import { processDlq } from '../process-transaction-dlq.js'
import { retrieveStagedTransaction } from '../retrieve-transaction.js'
import { createStagingExceptionFromError } from '../../exceptions/exceptions.service.js'
import { TRANSACTION_STAGING_TABLE } from '../../../config.js'
import AWS from '../../../../../connectors-lib/src/aws.js'
const { docClient } = AWS
import { AWS } from '@defra-fish/connectors-lib'

let mockProcessingException
jest.mock('../process-transaction-queue.js', () => ({
Expand All @@ -20,12 +19,16 @@ jest.mock('../retrieve-transaction.js', () => ({

jest.mock('../../exceptions/exceptions.service.js')

jest.mock('../../../../../connectors-lib/src/aws.js', () => ({
docClient: {
send: jest.fn()
}
jest.mock('@defra-fish/connectors-lib', () => ({
AWS: jest.fn(() => ({
docClient: {
send: jest.fn()
}
}))
}))

const { docClient } = AWS.mock.results[0].value

// helper function
const expectDynamoDbTtlUpdate = () => {
const updateCommandInstance = docClient.send.mock.calls[0][0]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,7 @@ import { TRANSACTION_STAGING_TABLE, TRANSACTION_STAGING_HISTORY_TABLE } from '..
import { POCL_DATA_SOURCE, DDE_DATA_SOURCE } from '@defra-fish/business-rules-lib'
import moment from 'moment'
import { processRecurringPayment, generateRecurringPaymentRecord } from '../../recurring-payments.service.js'
import AWS from '../../../../../connectors-lib/src/aws.js'
const { docClient } = AWS
import { AWS } from '@defra-fish/connectors-lib'

jest.mock('../../reference-data.service.js', () => ({
...jest.requireActual('../../reference-data.service.js'),
Expand Down Expand Up @@ -66,12 +65,16 @@ jest.mock('@defra-fish/business-rules-lib', () => ({
START_AFTER_PAYMENT_MINUTES: 30
}))

jest.mock('../../../../../connectors-lib/src/aws.js', () => ({
docClient: {
send: jest.fn()
}
jest.mock('@defra-fish/connectors-lib', () => ({
AWS: jest.fn(() => ({
docClient: {
send: jest.fn()
}
}))
}))

const { docClient } = AWS.mock.results[0].value

jest.mock('../../recurring-payments.service.js')

describe('transaction service', () => {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ import { Permit } from '@defra-fish/dynamics-lib'
import { getPermissionCost } from '@defra-fish/business-rules-lib'
import { PutCommand, BatchWriteCommand } from '@aws-sdk/lib-dynamodb'
import { AWS } from '@defra-fish/connectors-lib'
// import AWS from '../../../../connectors-lib/src/aws.js'
const { docClient } = AWS()

const debug = db('sales:transactions')
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,8 @@ import moment from 'moment'
import Boom from '@hapi/boom'
import db from 'debug'
import { UpdateCommand } from '@aws-sdk/lib-dynamodb'
import AWS from '../../../../connectors-lib/src/aws.js'
const { docClient, sqs } = AWS

import { AWS } from '@defra-fish/connectors-lib'
const { sqs, docClient } = AWS()
const debug = db('sales:transactions')

const getAdjustedStartDate = ({ issueDate, startDate, dataSource }) => {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ import { createStagingExceptionFromError } from '../exceptions/exceptions.servic
import { TRANSACTION_STAGING_TABLE } from '../../config.js'
import db from 'debug'
import { UpdateCommand } from '@aws-sdk/lib-dynamodb'
import AWS from '../../../../connectors-lib/src/aws.js'
const { docClient } = AWS
import { AWS } from '@defra-fish/connectors-lib'
const { docClient } = AWS()

const debug = db('sales:transactions')

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ import { TRANSACTION_STAGING_TABLE, TRANSACTION_STAGING_HISTORY_TABLE } from '..
import db from 'debug'
import moment from 'moment'
import { PutCommand, DeleteCommand } from '@aws-sdk/lib-dynamodb'
import AWS from '../../../../connectors-lib/src/aws.js'
const { docClient } = AWS
import { AWS } from '@defra-fish/connectors-lib'
const { docClient } = AWS()

const debug = db('sales:transactions')

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ import Boom from '@hapi/boom'
import { TRANSACTION_STAGING_TABLE, TRANSACTION_STAGING_HISTORY_TABLE } from '../../config.js'
import db from 'debug'
import { GetCommand } from '@aws-sdk/lib-dynamodb'
import AWS from '../../../../connectors-lib/src/aws.js'
const { docClient } = AWS
import { AWS } from '@defra-fish/connectors-lib'
const { docClient } = AWS()
const debug = db('sales:transactions')

export const retrieveStagedTransaction = async id => {
Expand Down

0 comments on commit 3264363

Please sign in to comment.