Implandação da customização das permissões dos usuarios e das notificaçoes
This commit is contained in:
27
spec/models/variavel_personalizada_spec.rb
Normal file
27
spec/models/variavel_personalizada_spec.rb
Normal file
@@ -0,0 +1,27 @@
|
||||
require 'rails_helper'
|
||||
|
||||
RSpec.describe VariavelPersonalizada do
|
||||
it 'normaliza a chave (minúscula, sem espaço)' do
|
||||
v = create(:variavel_personalizada, chave: ' Telefone Suporte ', valor: '4002-8922')
|
||||
expect(v.chave).to eq('telefone_suporte')
|
||||
expect(v.marcador).to eq('{{telefone_suporte}}')
|
||||
end
|
||||
|
||||
it 'recusa chave com formato que o renderizador não substituiria' do
|
||||
expect(build(:variavel_personalizada, chave: '2telefone')).not_to be_valid
|
||||
expect(build(:variavel_personalizada, chave: 'telefone-suporte')).not_to be_valid
|
||||
end
|
||||
|
||||
# Deixar o ADM criar {{valor}} faria a variável dele brigar com a do sistema —
|
||||
# e o preview não mostraria o problema, só o envio real.
|
||||
it 'recusa chave que já existe no sistema' do
|
||||
v = build(:variavel_personalizada, chave: 'valor')
|
||||
expect(v).not_to be_valid
|
||||
expect(v.errors[:chave].join).to include('já existe no sistema')
|
||||
end
|
||||
|
||||
it 'não aceita duas variáveis com a mesma chave' do
|
||||
create(:variavel_personalizada, chave: 'site', valor: 'a')
|
||||
expect(build(:variavel_personalizada, chave: 'SITE', valor: 'b')).not_to be_valid
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user