sequelize-typescript icon indicating copy to clipboard operation
sequelize-typescript copied to clipboard

● Test suite failed to run @Table annotation is missing on class "API"

Open odeyemiibukunajewole opened this issue 1 year ago • 1 comments

Hello , Im writing a jest test for my application writting in typescript

Any time a mocked the Model class this way ,

jest.mock("@apps/apim/entities/server.entity"); jest.mock("@apps/apim/entities/api.entity");

I got this error

apps/apim/tests/unit/services/endpoint.service.test.ts ● Test suite failed to run

@Table annotation is missing on class "EndPoint"

  4 | import { glob } from "glob";
  5 |
> 6 | const sequelize = new Sequelize({
    |                   ^
  7 |   dialect: "mysql",
  8 |   // sync: { force: true },
  9 |   // sync: { alter: true },

  at node_modules/sequelize-typescript/dist/sequelize/sequelize/sequelize.js:68:23
      at Array.map (<anonymous>)
  at Sequelize.defineModels (node_modules/sequelize-typescript/dist/sequelize/sequelize/sequelize.js:61:23)
  at Sequelize.addModels (node_modules/sequelize-typescript/dist/sequelize/sequelize/sequelize.js:37:36)
  at new Sequelize (node_modules/sequelize-typescript/dist/sequelize/sequelize/sequelize.js:20:22)
  at Object.<anonymous> (libs/core/database/index.ts:6:19)
  at Object.<anonymous> (apps/apim/services/api.service.ts:17:1)
  at Object.<anonymous> (apps/apim/services/endpoint.service.ts:8:1)
  at Object.<anonymous> (apps/apim/__tests__/unit/services/endpoint.service.test.ts:5:1)

this is my table @Table({ modelName: 'apim_api' }) export default class API extends Model<API> { @Column({ type: DataType.UUID, primaryKey: true, defaultValue: DataType.UUIDV4, }) id: string;

@ForeignKey(() => Category)
@Column({ type: DataType.UUID, allowNull: false })
category_id: string;

odeyemiibukunajewole avatar May 02 '24 03:05 odeyemiibukunajewole

Having the same issue here. Driving me nuts, works when running the app, but getting that same error every time i run tests.

Bodokh avatar May 19 '24 06:05 Bodokh