webstudio/server/test/test.ts
2023-10-27 21:22:48 +03:00

52 lines
2.1 KiB
TypeScript

import { TestCore } from "./core/test_core";
import { UnitTestEnv } from "../src/core/di/env";
import { dirname } from "path";
import locator from "../src/core/di/register_di";
import { ExecutorProgramServiceTest } from "./services/executor_program_service_test";
import { FilesChangerTest } from "./services/files_change_notifier_service_test";
import { TriggerServiceTest } from "./services/trigger_service_test";
import { StackServiceTest } from "./services/stack_service_test";
import mongoose from "mongoose";
import { CreateDataBaseModelUseCaseTest } from "./usecases/create_database_model_usecase_test";
import { DeleteDataBaseModelUseCaseTest } from "./usecases/delete_database_model_usecase_test";
import { ReadDataBaseModelUseCaseTest } from "./usecases/read_database_model_usecase_test";
import { UpdateDataBaseModelUseCaseTest } from "./usecases/update_database_model_usecase";
import { PaginationDataBaseModelUseCaseTest } from "./usecases/pagination_database_model_usecase_test";
const testCore = TestCore.instance;
export const dirname__: string = dirname(__filename);
export const assert = testCore.assert;
export const resultTest = testCore.resultTest;
const env = new UnitTestEnv(dirname__);
locator(env);
const tests = [CreateDataBaseModelUseCaseTest, DeleteDataBaseModelUseCaseTest,ReadDataBaseModelUseCaseTest,UpdateDataBaseModelUseCaseTest, PaginationDataBaseModelUseCaseTest]
const init = async () =>{
await mongoose.connect('mongodb://127.0.0.1:27017/test')
}
const test = async () =>{
await new ExecutorProgramServiceTest(dirname__).test();
await new FilesChangerTest(dirname__).test();
await new StackServiceTest(dirname__ + "/context/").test();
await new TriggerServiceTest().test();
await new CreateDataBaseModelUseCaseTest().test()
await new CreateDataBaseModelUseCaseTest().test()
await new DeleteDataBaseModelUseCaseTest().test()
await new ReadDataBaseModelUseCaseTest().test()
await new UpdateDataBaseModelUseCaseTest().test()
for await (const usecase of tests) {
testCore.assert(await new usecase().test(), usecase.name)
}
}
const main = async () => {
await init()
await test()
await testCore.testResult();
};
main();