HUGE rewrite to use Prisma instead of TypeORM (not finished yet)

This commit is contained in:
Jesse Wierzbinski 2023-11-10 16:36:06 -10:00
parent a1c0164e9d
commit 5eed8374cd
No known key found for this signature in database
GPG key ID: F9A1E418934E40B0
53 changed files with 1452 additions and 1967 deletions

View file

@ -3,25 +3,25 @@
import { getConfig } from "@config";
import { afterAll, beforeAll, describe, expect, test } from "bun:test";
import { AppDataSource } from "~database/datasource";
import { Application } from "~database/entities/Application";
import { Emoji } from "~database/entities/Emoji";
import { ApplicationAction } from "~database/entities/Application";
import { EmojiAction } from "~database/entities/Emoji";
import { Token, TokenType } from "~database/entities/Token";
import { User } from "~database/entities/User";
import { UserAction } from "~database/entities/User";
import { APIEmoji } from "~types/entities/emoji";
import { APIInstance } from "~types/entities/instance";
const config = getConfig();
let token: Token;
let user: User;
let user2: User;
let user: UserAction;
let user2: UserAction;
describe("API Tests", () => {
beforeAll(async () => {
if (!AppDataSource.isInitialized) await AppDataSource.initialize();
// Initialize test user
user = await User.createNewLocal({
user = await UserAction.createNewLocal({
email: "test@test.com",
username: "test",
password: "test",
@ -29,14 +29,14 @@ describe("API Tests", () => {
});
// Initialize second test user
user2 = await User.createNewLocal({
user2 = await UserAction.createNewLocal({
email: "test2@test.com",
username: "test2",
password: "test2",
display_name: "",
});
const app = new Application();
const app = new ApplicationAction();
app.name = "Test Application";
app.website = "https://example.com";
@ -106,7 +106,7 @@ describe("API Tests", () => {
describe("GET /api/v1/custom_emojis", () => {
beforeAll(async () => {
const emoji = new Emoji();
const emoji = new EmojiAction();
emoji.instance = null;
emoji.url = "https://example.com/test.png";
@ -139,7 +139,7 @@ describe("API Tests", () => {
expect(emojis[0].url).toBe("https://example.com/test.png");
});
afterAll(async () => {
await Emoji.delete({ shortcode: "test" });
await EmojiAction.delete({ shortcode: "test" });
});
});
});

View file

@ -3,9 +3,9 @@
import { getConfig } from "@config";
import { afterAll, beforeAll, describe, expect, test } from "bun:test";
import { AppDataSource } from "~database/datasource";
import { Application } from "~database/entities/Application";
import { ApplicationAction } from "~database/entities/Application";
import { Token, TokenType } from "~database/entities/Token";
import { User } from "~database/entities/User";
import { UserAction } from "~database/entities/User";
import { APIAccount } from "~types/entities/account";
import { APIRelationship } from "~types/entities/relationship";
import { APIStatus } from "~types/entities/status";
@ -13,15 +13,15 @@ import { APIStatus } from "~types/entities/status";
const config = getConfig();
let token: Token;
let user: User;
let user2: User;
let user: UserAction;
let user2: UserAction;
describe("API Tests", () => {
beforeAll(async () => {
if (!AppDataSource.isInitialized) await AppDataSource.initialize();
// Initialize test user
user = await User.createNewLocal({
user = await UserAction.createNewLocal({
email: "test@test.com",
username: "test",
password: "test",
@ -29,14 +29,14 @@ describe("API Tests", () => {
});
// Initialize second test user
user2 = await User.createNewLocal({
user2 = await UserAction.createNewLocal({
email: "test2@test.com",
username: "test2",
password: "test2",
display_name: "",
});
const app = new Application();
const app = new ApplicationAction();
app.name = "Test Application";
app.website = "https://example.com";

View file

@ -3,17 +3,17 @@
import { getConfig } from "@config";
import { afterAll, beforeAll, describe, expect, test } from "bun:test";
import { AppDataSource } from "~database/datasource";
import { Application } from "~database/entities/Application";
import { ApplicationAction } from "~database/entities/Application";
import { Token, TokenType } from "~database/entities/Token";
import { User } from "~database/entities/User";
import { UserAction } from "~database/entities/User";
import { APIContext } from "~types/entities/context";
import { APIStatus } from "~types/entities/status";
const config = getConfig();
let token: Token;
let user: User;
let user2: User;
let user: UserAction;
let user2: UserAction;
let status: APIStatus | null = null;
let status2: APIStatus | null = null;
@ -22,7 +22,7 @@ describe("API Tests", () => {
if (!AppDataSource.isInitialized) await AppDataSource.initialize();
// Initialize test user
user = await User.createNewLocal({
user = await UserAction.createNewLocal({
email: "test@test.com",
username: "test",
password: "test",
@ -30,14 +30,14 @@ describe("API Tests", () => {
});
// Initialize second test user
user2 = await User.createNewLocal({
user2 = await UserAction.createNewLocal({
email: "test2@test.com",
username: "test2",
password: "test2",
display_name: "",
});
const app = new Application();
const app = new ApplicationAction();
app.name = "Test Application";
app.website = "https://example.com";
@ -157,7 +157,7 @@ describe("API Tests", () => {
expect(status2.card).toBeNull();
expect(status2.poll).toBeNull();
expect(status2.emojis).toEqual([]);
expect(status2.in_reply_to_id).toEqual(status?.id);
expect(status2.in_reply_to_id).toEqual(status?.id || null);
expect(status2.in_reply_to_account_id).toEqual(user.id);
});
});
@ -181,7 +181,7 @@ describe("API Tests", () => {
const statusJson = (await response.json()) as APIStatus;
expect(statusJson.id).toBe(status?.id);
expect(statusJson.id).toBe(status?.id || "");
expect(statusJson.content).toBeDefined();
expect(statusJson.created_at).toBeDefined();
expect(statusJson.account).toBeDefined();
@ -231,7 +231,7 @@ describe("API Tests", () => {
expect(context.descendants.length).toBe(1);
// First descendant should be status2
expect(context.descendants[0].id).toBe(status2?.id);
expect(context.descendants[0].id).toBe(status2?.id || "");
});
});
@ -322,7 +322,7 @@ describe("API Tests", () => {
"application/json"
);
const users = (await response.json()) as User[];
const users = (await response.json()) as UserAction[];
expect(users.length).toBe(1);
expect(users[0].id).toBe(user.id);

View file

@ -1,9 +1,9 @@
import { getConfig } from "@config";
import { afterAll, beforeAll, describe, expect, test } from "bun:test";
import { AppDataSource } from "~database/datasource";
import { Application } from "~database/entities/Application";
import { ApplicationAction } from "~database/entities/Application";
import { Token } from "~database/entities/Token";
import { User, userRelations } from "~database/entities/User";
import { UserAction, userRelations } from "~database/entities/User";
const config = getConfig();
@ -16,7 +16,7 @@ beforeAll(async () => {
if (!AppDataSource.isInitialized) await AppDataSource.initialize();
// Initialize test user
await User.createNewLocal({
await UserAction.createNewLocal({
email: "test@test.com",
username: "test",
password: "test",
@ -139,7 +139,7 @@ describe("GET /api/v1/apps/verify_credentials", () => {
expect(response.status).toBe(200);
expect(response.headers.get("content-type")).toBe("application/json");
const credentials = (await response.json()) as Partial<Application>;
const credentials = (await response.json()) as Partial<ApplicationAction>;
expect(credentials.name).toBe("Test Application");
expect(credentials.website).toBe("https://example.com");
@ -150,7 +150,7 @@ describe("GET /api/v1/apps/verify_credentials", () => {
afterAll(async () => {
// Clean up user
const user = await User.findOne({
const user = await UserAction.findOne({
where: {
username: "test",
},
@ -164,7 +164,7 @@ afterAll(async () => {
},
});
const applications = await Application.findBy({
const applications = await ApplicationAction.findBy({
client_id,
secret: client_secret,
});