Заранее большое спасибо. Я новичок в этой части тестирования. Как я могу понять, что модели не нужна другая модель, связанная с
У меня проблема размещения данных о связи между моделями по фабрикам, как я могу сделать эти файлы.
Я оставил используемые мной модели и файлы
src/app/model/empresa.js
import Sequelize, { Model } from 'sequelize';
class Empresas extends Model {
static init(sequelize) {
super.init(
{
cnpj: Sequelize.STRING,
razao_social: Sequelize.STRING,
nome_fantasia: Sequelize.STRING,
status: Sequelize.BOOLEAN,
paleta_cor_1: Sequelize.STRING,
paleta_cor_2: Sequelize.STRING,
fk_logo_id: Sequelize.INTEGER,
},
{
sequelize,
modelName: 'empresas',
}
);
return this;
}
static associate(models) {
this.belongsTo(models.imagens, { foreignKey: 'fk_logo_id', as: 'logo' });
}
}
export default Empresas;
src/app/model/usuario.js
import Sequelize, { Model } from 'sequelize';
class Usuario extends Model {
static init(sequelize) {
super.init(
{
fk_empresa_id: Sequelize.INTEGER,
email: Sequelize.STRING,
senha_hash: Sequelize.STRING,
permissao: Sequelize.STRING,
},
{
sequelize,
modelName: 'usuarios',
}
);
return this;
}
static associate(models) {
this.belongsTo(models.empresas, {
foreignKey: 'fk_empresa_id',
as: 'empresa',
});
}
}
export default Usuario;
В тестах
__tests__/factories/empresa.factory.js
import faker from 'faker';
import { factory } from 'factory-girl';
import Empresa from '../../src/app/models/Empresa';
factory.define('Empresa', Empresa, {
cnpj: faker.random.uuid,
nome_fantasia: faker.company.companyName,
logo: faker.image.business,
status: faker.random.boolean,
paleta_cor_1: faker.commerce.color,
paleta_cor_2: faker.commerce.color,
});
export default factory;
__tests__/factories/usuario.factory.js
import faker from 'faker';
import { factory } from 'factory-girl';
import Usuario from '../../src/app/models/Usuario';
factory.define('Usuario', Usuario, {
fk_empresa_id: faker.random.number(),
email: faker.internet.email,
senha_hash: faker.internet.password,
permissao: faker.name.jobArea,
});
export default factory;
Thx. как получить ключ компании?