Files
outline/server/test/setup.ts
Nanguan Lin 3a7dd94e14 Migrate from s3 sdk v2 to v3 (#6731)
* chore: migrate from s3 sdk v2 to v3

* import signature-v4-crt

* downgrade minor version

* Add s3-presigned-post manually

* Change s3 mock

* Update server/storage/files/S3Storage.ts

* docs

* Upgrade aws-sdk

---------

Co-authored-by: Tom Moor <tom.moor@gmail.com>
2024-05-19 06:01:42 -07:00

42 lines
946 B
TypeScript

import "reflect-metadata";
import sharedEnv from "@shared/env";
import env from "@server/env";
import Redis from "@server/storage/redis";
require("@server/storage/database");
jest.mock("bull");
// This is needed for the relative manual mock to be picked up
jest.mock("../queues");
// We never want to make real S3 requests in test environment
jest.mock("@aws-sdk/client-s3", () => ({
S3Client: jest.fn(() => ({
send: jest.fn(),
})),
DeleteObjectCommand: jest.fn(),
GetObjectCommand: jest.fn(),
ObjectCannedACL: {},
}));
jest.mock("@aws-sdk/lib-storage", () => ({
Upload: jest.fn(() => ({
done: jest.fn(),
})),
}));
jest.mock("@aws-sdk/s3-presigned-post", () => ({
createPresignedPost: jest.fn(),
}));
jest.mock("@aws-sdk/s3-request-presigner", () => ({
getSignedUrl: jest.fn(),
}));
afterAll(() => Redis.defaultClient.disconnect());
beforeEach(() => {
env.URL = sharedEnv.URL = "https://app.outline.dev";
});