1- import type { S3 } from '@aws-sdk/client-s3'
21import type { SinglePayloadStoreConfig } from '@message-queue-toolkit/core'
32import { S3PayloadStore } from '@message-queue-toolkit/s3-payload-store'
4- import { deleteQueue } from '@message-queue-toolkit/sqs'
53import type { AwilixContainer } from 'awilix'
64import { asValue } from 'awilix'
75import { afterAll , afterEach , beforeAll , beforeEach , describe , expect , it } from 'vitest'
86import { SNS_MESSAGE_MAX_SIZE } from '../../lib/sns/AbstractSnsService.ts'
9- import { deleteTopic } from '../../lib/utils/snsUtils.ts'
107import { SnsPermissionPublisher } from '../publishers/SnsPermissionPublisher.ts'
11- import { assertBucket , emptyBucket } from '../utils/s3Utils .ts'
8+ import type { TestAwsResourceAdmin } from '../utils/testAdmin .ts'
129import type { Dependencies } from '../utils/testContext.ts'
1310import { registerDependencies } from '../utils/testContext.ts'
1411import { SnsSqsPermissionConsumer } from './SnsSqsPermissionConsumer.ts'
@@ -20,7 +17,7 @@ describe('SnsSqsPermissionConsumer - single-store payload offloading', () => {
2017 const s3BucketName = 'test-bucket'
2118
2219 let diContainer : AwilixContainer < Dependencies >
23- let s3 : S3
20+ let testAdmin : TestAwsResourceAdmin
2421 let payloadStoreConfig : SinglePayloadStoreConfig
2522
2623 let publisher : SnsPermissionPublisher
@@ -31,9 +28,9 @@ describe('SnsSqsPermissionConsumer - single-store payload offloading', () => {
3128 permissionPublisher : asValue ( ( ) => undefined ) ,
3229 permissionConsumer : asValue ( ( ) => undefined ) ,
3330 } )
34- s3 = diContainer . cradle . s3
31+ testAdmin = diContainer . cradle . testAdmin
3532
36- await assertBucket ( s3 , s3BucketName )
33+ await testAdmin . createBucket ( s3BucketName )
3734 payloadStoreConfig = {
3835 messageSizeThreshold : largeMessageSizeThreshold ,
3936 store : new S3PayloadStore ( diContainer . cradle , {
@@ -51,12 +48,8 @@ describe('SnsSqsPermissionConsumer - single-store payload offloading', () => {
5148 payloadStoreConfig,
5249 } )
5350
54- await deleteQueue ( diContainer . cradle . sqsClient , SnsSqsPermissionConsumer . CONSUMED_QUEUE_NAME )
55- await deleteTopic (
56- diContainer . cradle . snsClient ,
57- diContainer . cradle . stsClient ,
58- SnsSqsPermissionConsumer . CONSUMED_QUEUE_NAME ,
59- )
51+ await testAdmin . deleteQueue ( SnsSqsPermissionConsumer . CONSUMED_QUEUE_NAME )
52+ await testAdmin . deleteTopic ( SnsSqsPermissionConsumer . CONSUMED_QUEUE_NAME )
6053
6154 await consumer . start ( )
6255 await publisher . init ( )
@@ -68,7 +61,7 @@ describe('SnsSqsPermissionConsumer - single-store payload offloading', () => {
6861 } )
6962
7063 afterAll ( async ( ) => {
71- await emptyBucket ( s3 , s3BucketName )
64+ await testAdmin . emptyBucket ( s3BucketName )
7265
7366 const { awilixManager } = diContainer . cradle
7467 await awilixManager . executeDispose ( )
0 commit comments