UNPKG

@designliquido/lincones-sqlite

Version:
52 lines 2.91 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const construtos_1 = require("../fontes/construtos"); const coluna_1 = require("../fontes/construtos/coluna"); describe('Construtos', () => { describe('Coluna', () => { it('toString, trivial', () => { const coluna = new coluna_1.Coluna('nome', 'texto', undefined, true); expect(coluna.toString()).toBe("<Coluna nome=nome tipo=TEXTO nulo=Sim>"); }); it('toString, chave primária', () => { const coluna = new coluna_1.Coluna('nome', 'texto', undefined, false, true); expect(coluna.toString()).toBe("<Coluna nome=nome tipo=TEXTO nulo=Não chave primária;>"); }); }); describe('ColunaEValor', () => { it('toString, trivial', () => { const colunaEValor = new construtos_1.ColunaEValor(new coluna_1.Coluna('nome', 'texto', undefined, false, true), new construtos_1.Literal('valor')); expect(colunaEValor.toString()).toBe("<ColunaEValor coluna=nome valor=<Literal valor=valor tipo presumido=CARACTERES>>"); }); }); describe('Condicao', () => { it('toString, trivial', () => { const condicao = new construtos_1.Condicao(new coluna_1.Coluna('nome', 'texto', undefined, false, true), 'IGUAL', new construtos_1.Literal('teste')); expect(condicao.toString()).toBe("<Condição operando esquerdo=<Coluna nome=nome tipo=TEXTO nulo=Não chave primária;> operador=IGUAL operando direito=<Literal valor=teste tipo presumido=CARACTERES>>"); }); }); describe('OperacaoAlteracaoTabela', () => { it('construtor, tipo inválido', () => { expect(() => { new construtos_1.OperacaoAlteracaoTabela('INVALIDO', new coluna_1.Coluna('coluna', 'texto')); }).toThrow('Tipo de operação de alteração de tabela inválido: INVALIDO'); }); it('toString, trivial', () => { const operacaoAlteracaoTabela = new construtos_1.OperacaoAlteracaoTabela('ADICIONAR', new coluna_1.Coluna('nova_coluna', 'texto')); expect(operacaoAlteracaoTabela.toString()).toBe("<OperaçãoAlteraçãoTabela tipo=ADICIONAR elemento=<Coluna nome=nova_coluna tipo=TEXTO nulo=Não>>"); }); }); describe('Restricao', () => { it('toString, trivial', () => { const restricao = new construtos_1.Restricao('teste_restricao', 'ÚNICA', 'teste_tabela', [ 'coluna1', 'coluna2' ], 'outra_tabela', [ 'coluna3', 'coluna4' ]); expect(restricao.toString()).toBe("<Restrição nome=teste_restricao tabela=teste_tabela colunas=[coluna1, coluna2] tabela referenciada=outra_tabela colunas referenciadas=[coluna3, coluna4]>"); }); }); }); //# sourceMappingURL=construtos.test.js.map