spec/lib/flapjack/data/entity_spec.rb in flapjack-1.2.1 vs spec/lib/flapjack/data/entity_spec.rb in flapjack-1.2.2

- old
+ new

@@ -221,10 +221,12 @@ 'last_name' => 'Johnson', 'email' => 'johnj@example.com' }, :redis => @redis) end + context 'check that rename and merge are called by add' + context 'entity renaming on #add' do let(:time_i) { Time.now.to_i } let(:sha1) { Digest::SHA1.new } @@ -486,9 +488,22 @@ @redis.mapped_hmset('check:name2:PING', data) end before(:each) do add_name2 + end + + it 'clears the old id when a name exists' do + expect(@redis.hget('all_entity_ids_by_name', 'name2')).to eq('5000') + expect(@redis.hget('all_entity_names_by_id', '5000')).to eq('name2') + + Flapjack::Data::Entity.add({'id' => '5001', + 'name' => 'name2'}, + :redis => @redis) + + expect(@redis.hget('all_entity_ids_by_name', 'name2')).to eq('5001') + expect(@redis.hget('all_entity_names_by_id', '5000')).to be_nil + expect(@redis.hget('all_entity_names_by_id', '5001')).to eq('name2') end it 'does not overwrite current state for a check' do add_state1 data_2 = {'state' => 'critical', 'last_change' => time_2_i.to_s, 'last_update' => time_2_i.to_s}