Jest тестирование Sequelize INCLUDE связной модели

Что-то измучал меня тест в связке с БД.

Есть два определения моделей для sequelize. Одна модель связана с другой.

let car = sequelize.define('cars', {
    id: {
      type: DataTypes.BIGINT,
      allowNull: false,
      autoIncrement: true,
      primaryKey: true
    },
    driver_id: {
      type: DataTypes.BIGINT,
      allowNull: true
    },
});

let driver = sequelize.define('drivers', {
    id: {
      type: DataTypes.BIGINT,
      allowNull: false,
      autoIncrement: true,
      primaryKey: true
    }
});

car.belongsTo(driver, { foreignKey: 'driver_id', targetKey: 'id' });

Определяем в тесте модели.

const { driver, car } = require('../../models');
const SequelizeMock = require('sequelize-mock');

driver.build({
  id: 1
});

car.build({
  id: 1,
  driver: 1
});

Эти две модели реально билдятся (т.е. мокаются), однако, include их не связывает.

Проверяем функцию:

const { driver, car } = require('../../models');

const getDC = async () => {
  const result = await car.find({
    where: { driver_id: { $ne: null } },
    include: [
      {
        model: driver,
        as: 'driver',
      }
    ]
  });
};

Возвращается только car.

Памагити !!! ))


Ответы (0 шт):