demarches-normaliennes/spec/models/champs/integer_number_champ_spec.rb
Pierre de La Morinerie 10065df8ce champs: put champ label in numeric fields validation messages
Replaces

> La valeur du champ doit être un nombre entier (sans chiffres après
> la virgule)

by

> La valeur du champ « Nombre de parents » doit être un nombre entier
> (sans chiffres après la virgule)
2019-07-11 15:12:48 +02:00

39 lines
1 KiB
Ruby

require 'spec_helper'
describe Champs::IntegerNumberChamp do
subject { build(:champ_integer_number, value: value).tap(&:valid?) }
describe '#valid?' do
context 'when the value is integer number' do
let(:value) { 2 }
it { is_expected.to be_valid }
end
context 'when the value is decimal number' do
let(:value) { 2.6 }
it { is_expected.to_not be_valid }
it { expect(subject.errors[:value]).to eq(["« #{subject.libelle} » doit être un nombre entier (sans chiffres après la virgule)"]) }
end
context 'when the value is not a number' do
let(:value) { 'toto' }
it { is_expected.to_not be_valid }
it { expect(subject.errors[:value]).to eq(["« #{subject.libelle} » doit être un nombre entier (sans chiffres après la virgule)"]) }
end
context 'when the value is blank' do
let(:value) { '' }
it { is_expected.to be_valid }
end
context 'when the value is nil' do
let(:value) { nil }
it { is_expected.to be_valid }
end
end
end