From cd7ababab0b7525f76ad66e3d9abb7da5de45916 Mon Sep 17 00:00:00 2001 From: zmagod Date: Wed, 26 Jul 2017 16:16:08 +0200 Subject: [PATCH] fix sample types --- spec/factories/sample_types.rb | 5 +++++ spec/factories/samples.rb | 5 +++++ spec/models/sample_type_spec.rb | 14 +++++++++++++- 3 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 spec/factories/sample_types.rb create mode 100644 spec/factories/samples.rb diff --git a/spec/factories/sample_types.rb b/spec/factories/sample_types.rb new file mode 100644 index 000000000..90d0e4a67 --- /dev/null +++ b/spec/factories/sample_types.rb @@ -0,0 +1,5 @@ +FactoryGirl.define do + factory :sample_type do + name 'Sample type' + end +end diff --git a/spec/factories/samples.rb b/spec/factories/samples.rb new file mode 100644 index 000000000..36957c3d6 --- /dev/null +++ b/spec/factories/samples.rb @@ -0,0 +1,5 @@ +FactoryGirl.define do + factory :sample do + name 'Sample' + end +end diff --git a/spec/models/sample_type_spec.rb b/spec/models/sample_type_spec.rb index 5200e2d8c..da448f2a3 100644 --- a/spec/models/sample_type_spec.rb +++ b/spec/models/sample_type_spec.rb @@ -22,11 +22,23 @@ describe SampleType, type: :model do end describe 'Should be a valid object' do + let(:team) { create :team } + let!(:test_type) { create :sample_type, name: 'Sample one', team: team } + it { should validate_presence_of :name } it { should validate_presence_of :team } it do should validate_length_of(:name).is_at_most(Constants::NAME_MAX_LENGTH) end - it { should validate_uniqueness_of(:name).scoped_to(:team).case_insensitive } + + it 'should have uniq name scoped to team' do + new_type = build :sample_type, name: 'Sample one', team: team + expect(new_type).to_not be_valid + end + + it 'should not be case sensitive' do + new_type = build :sample_type, name: 'SAMPLE ONE', team: team + expect(new_type).to be_valid + end end end