|
@@ -30,6 +30,58 @@ RSpec.describe Taskbar do
|
|
|
expect(taskbar.state.empty?).to eq(true)
|
|
|
end
|
|
|
|
|
|
+ it 'check last_contact' do
|
|
|
+ UserInfo.current_user_id = 1
|
|
|
+
|
|
|
+ last_contact1 = taskbar.last_contact
|
|
|
+
|
|
|
+ travel 2.minutes
|
|
|
+ taskbar.notify = false
|
|
|
+ taskbar.state = { a: 1 }
|
|
|
+ taskbar.save!
|
|
|
+ expect(taskbar.last_contact.to_s).not_to eq(last_contact1.to_s)
|
|
|
+
|
|
|
+ last_contact2 = taskbar.last_contact
|
|
|
+ travel 2.minutes
|
|
|
+ taskbar.notify = true
|
|
|
+ taskbar.save!
|
|
|
+ expect(taskbar.last_contact.to_s).not_to eq(last_contact1.to_s)
|
|
|
+ expect(taskbar.last_contact.to_s).to eq(last_contact2.to_s)
|
|
|
+
|
|
|
+ travel 2.minutes
|
|
|
+ taskbar.notify = true
|
|
|
+ taskbar.save!
|
|
|
+
|
|
|
+ expect(taskbar.last_contact.to_s).not_to eq(last_contact1.to_s)
|
|
|
+ expect(taskbar.last_contact.to_s).to eq(last_contact2.to_s)
|
|
|
+
|
|
|
+ travel 2.minutes
|
|
|
+ taskbar.notify = false
|
|
|
+ taskbar.state = { a: 1 }
|
|
|
+ taskbar.save!
|
|
|
+
|
|
|
+ expect(taskbar.last_contact.to_s).not_to eq(last_contact1.to_s)
|
|
|
+ expect(taskbar.last_contact.to_s).to eq(last_contact2.to_s)
|
|
|
+
|
|
|
+ travel 2.minutes
|
|
|
+ taskbar.notify = true
|
|
|
+ taskbar.state = { a: 1 }
|
|
|
+ taskbar.save!
|
|
|
+
|
|
|
+ expect(taskbar.last_contact.to_s).not_to eq(last_contact1.to_s)
|
|
|
+ expect(taskbar.last_contact.to_s).to eq(last_contact2.to_s)
|
|
|
+
|
|
|
+ travel 2.minutes
|
|
|
+ taskbar.notify = true
|
|
|
+ taskbar.state = { a: 2 }
|
|
|
+ taskbar.save!
|
|
|
+
|
|
|
+ expect(taskbar.last_contact.to_s).not_to eq(last_contact1.to_s)
|
|
|
+ expect(taskbar.last_contact.to_s).not_to eq(last_contact2.to_s)
|
|
|
+
|
|
|
+ travel_back
|
|
|
+ end
|
|
|
+
|
|
|
UserInfo.current_user_id = nil
|
|
|
end
|
|
|
|
|
@@ -262,6 +314,108 @@ RSpec.describe Taskbar do
|
|
|
expect(taskbar4.preferences[:tasks][2][:user_id]).to eq(3)
|
|
|
expect(taskbar4.preferences[:tasks][2][:changed]).to eq(false)
|
|
|
|
|
|
+ taskbar1_last_contact = taskbar1.last_contact.to_s
|
|
|
+ taskbar2_last_contact = taskbar2.last_contact.to_s
|
|
|
+ taskbar3_last_contact = taskbar3.last_contact.to_s
|
|
|
+ taskbar4_last_contact = taskbar4.last_contact.to_s
|
|
|
+ travel 2.minutes
|
|
|
+
|
|
|
+ UserInfo.current_user_id = 2
|
|
|
+ taskbar2.state = { article: { body: 'some body' }, ticket: {} }
|
|
|
+ taskbar2.notify = true
|
|
|
+ taskbar2.save!
|
|
|
+
|
|
|
+ taskbar1.reload
|
|
|
+ expect(taskbar1.preferences[:tasks].count).to eq(3)
|
|
|
+ expect(taskbar1.preferences[:tasks][0][:user_id]).to eq(1)
|
|
|
+ expect(taskbar1.preferences[:tasks][0][:changed]).to eq(true)
|
|
|
+ expect(taskbar1.preferences[:tasks][0][:last_contact].to_s).to eq(taskbar1_last_contact)
|
|
|
+ expect(taskbar1.preferences[:tasks][1][:user_id]).to eq(2)
|
|
|
+ expect(taskbar1.preferences[:tasks][1][:changed]).to eq(true)
|
|
|
+ expect(taskbar1.preferences[:tasks][1][:last_contact].to_s).to eq(taskbar2_last_contact)
|
|
|
+ expect(taskbar1.preferences[:tasks][2][:user_id]).to eq(3)
|
|
|
+ expect(taskbar1.preferences[:tasks][2][:changed]).to eq(false)
|
|
|
+ expect(taskbar1.preferences[:tasks][2][:last_contact].to_s).to eq(taskbar4_last_contact)
|
|
|
+
|
|
|
+ taskbar2.reload
|
|
|
+ expect(taskbar2.preferences[:tasks].count).to eq(3)
|
|
|
+ expect(taskbar2.preferences[:tasks][0][:user_id]).to eq(1)
|
|
|
+ expect(taskbar2.preferences[:tasks][0][:changed]).to eq(true)
|
|
|
+ expect(taskbar2.preferences[:tasks][0][:last_contact].to_s).to eq(taskbar1_last_contact)
|
|
|
+ expect(taskbar2.preferences[:tasks][1][:user_id]).to eq(2)
|
|
|
+ expect(taskbar2.preferences[:tasks][1][:changed]).to eq(true)
|
|
|
+ expect(taskbar2.preferences[:tasks][1][:last_contact].to_s).to eq(taskbar2_last_contact)
|
|
|
+ expect(taskbar2.preferences[:tasks][2][:user_id]).to eq(3)
|
|
|
+ expect(taskbar2.preferences[:tasks][2][:changed]).to eq(false)
|
|
|
+ expect(taskbar2.preferences[:tasks][2][:last_contact].to_s).to eq(taskbar4_last_contact)
|
|
|
+
|
|
|
+ taskbar3.reload
|
|
|
+ expect(taskbar3.preferences[:tasks].count).to eq(1)
|
|
|
+ expect(taskbar3.preferences[:tasks][0][:user_id]).to eq(2)
|
|
|
+ expect(taskbar3.preferences[:tasks][0][:changed]).to eq(false)
|
|
|
+ expect(taskbar3.preferences[:tasks][0][:last_contact].to_s).to eq(taskbar3_last_contact)
|
|
|
+
|
|
|
+ taskbar4.reload
|
|
|
+ expect(taskbar4.preferences[:tasks].count).to eq(3)
|
|
|
+ expect(taskbar4.preferences[:tasks][0][:user_id]).to eq(1)
|
|
|
+ expect(taskbar4.preferences[:tasks][0][:changed]).to eq(true)
|
|
|
+ expect(taskbar4.preferences[:tasks][0][:last_contact].to_s).to eq(taskbar1_last_contact)
|
|
|
+ expect(taskbar4.preferences[:tasks][1][:user_id]).to eq(2)
|
|
|
+ expect(taskbar4.preferences[:tasks][1][:changed]).to eq(true)
|
|
|
+ expect(taskbar4.preferences[:tasks][1][:last_contact].to_s).to eq(taskbar2_last_contact)
|
|
|
+ expect(taskbar4.preferences[:tasks][2][:user_id]).to eq(3)
|
|
|
+ expect(taskbar4.preferences[:tasks][2][:changed]).to eq(false)
|
|
|
+ expect(taskbar4.preferences[:tasks][2][:last_contact].to_s).to eq(taskbar4_last_contact)
|
|
|
+
|
|
|
+ UserInfo.current_user_id = 2
|
|
|
+ taskbar2.state = { article: { body: 'some body 222' }, ticket: {} }
|
|
|
+ taskbar2.notify = true
|
|
|
+ taskbar2.save!
|
|
|
+
|
|
|
+ taskbar1.reload
|
|
|
+ expect(taskbar1.preferences[:tasks].count).to eq(3)
|
|
|
+ expect(taskbar1.preferences[:tasks][0][:user_id]).to eq(1)
|
|
|
+ expect(taskbar1.preferences[:tasks][0][:changed]).to eq(true)
|
|
|
+ expect(taskbar1.preferences[:tasks][0][:last_contact].to_s).to eq(taskbar1_last_contact)
|
|
|
+ expect(taskbar1.preferences[:tasks][1][:user_id]).to eq(2)
|
|
|
+ expect(taskbar1.preferences[:tasks][1][:changed]).to eq(true)
|
|
|
+ expect(taskbar1.preferences[:tasks][1][:last_contact].to_s).not_to eq(taskbar2_last_contact)
|
|
|
+ expect(taskbar1.preferences[:tasks][2][:user_id]).to eq(3)
|
|
|
+ expect(taskbar1.preferences[:tasks][2][:changed]).to eq(false)
|
|
|
+ expect(taskbar1.preferences[:tasks][2][:last_contact].to_s).to eq(taskbar4_last_contact)
|
|
|
+
|
|
|
+ taskbar2.reload
|
|
|
+ expect(taskbar2.preferences[:tasks].count).to eq(3)
|
|
|
+ expect(taskbar2.preferences[:tasks][0][:user_id]).to eq(1)
|
|
|
+ expect(taskbar2.preferences[:tasks][0][:changed]).to eq(true)
|
|
|
+ expect(taskbar2.preferences[:tasks][0][:last_contact].to_s).to eq(taskbar1_last_contact)
|
|
|
+ expect(taskbar2.preferences[:tasks][1][:user_id]).to eq(2)
|
|
|
+ expect(taskbar2.preferences[:tasks][1][:changed]).to eq(true)
|
|
|
+ expect(taskbar2.preferences[:tasks][1][:last_contact].to_s).not_to eq(taskbar2_last_contact)
|
|
|
+ expect(taskbar2.preferences[:tasks][2][:user_id]).to eq(3)
|
|
|
+ expect(taskbar2.preferences[:tasks][2][:changed]).to eq(false)
|
|
|
+ expect(taskbar2.preferences[:tasks][2][:last_contact].to_s).to eq(taskbar4_last_contact)
|
|
|
+
|
|
|
+ taskbar3.reload
|
|
|
+ expect(taskbar3.preferences[:tasks].count).to eq(1)
|
|
|
+ expect(taskbar3.preferences[:tasks][0][:user_id]).to eq(2)
|
|
|
+ expect(taskbar3.preferences[:tasks][0][:changed]).to eq(false)
|
|
|
+ expect(taskbar3.preferences[:tasks][0][:last_contact].to_s).to eq(taskbar3_last_contact)
|
|
|
+
|
|
|
+ taskbar4.reload
|
|
|
+ expect(taskbar4.preferences[:tasks].count).to eq(3)
|
|
|
+ expect(taskbar4.preferences[:tasks][0][:user_id]).to eq(1)
|
|
|
+ expect(taskbar4.preferences[:tasks][0][:changed]).to eq(true)
|
|
|
+ expect(taskbar4.preferences[:tasks][0][:last_contact].to_s).to eq(taskbar1_last_contact)
|
|
|
+ expect(taskbar4.preferences[:tasks][1][:user_id]).to eq(2)
|
|
|
+ expect(taskbar4.preferences[:tasks][1][:changed]).to eq(true)
|
|
|
+ expect(taskbar4.preferences[:tasks][1][:last_contact].to_s).not_to eq(taskbar2_last_contact)
|
|
|
+ expect(taskbar4.preferences[:tasks][2][:user_id]).to eq(3)
|
|
|
+ expect(taskbar4.preferences[:tasks][2][:changed]).to eq(false)
|
|
|
+ expect(taskbar4.preferences[:tasks][2][:last_contact].to_s).to eq(taskbar4_last_contact)
|
|
|
+
|
|
|
+ travel_back
|
|
|
+
|
|
|
UserInfo.current_user_id = nil
|
|
|
end
|
|
|
end
|