12345678910111213141516171819202122232425262728 |
- import { DataTypes, Model, Sequelize } from '@sequelize/core';
- import { Attribute } from '@sequelize/core/decorators-legacy';
- import { SqliteDialect } from '@sequelize/sqlite3';
- import { IsLowercase } from '@sequelize/validator.js';
- import chai, { expect } from 'chai';
- import chaiAsPromised from 'chai-as-promised';
- chai.use(chaiAsPromised);
- describe('@IsLowercase legacy decorator', () => {
- it('validates that the attribute is lowercase', async () => {
- class User extends Model {
- @Attribute(DataTypes.STRING)
- @IsLowercase
- declare name: string;
- }
- new Sequelize({
- dialect: SqliteDialect,
- storage: ':memory:',
- models: [User],
- });
- const user = User.build({ name: 'ABC' });
- await expect(user.validate()).to.be.rejectedWith('Validation isLowercase on name failed');
- });
- });
|