Refactor Conversation model (#134)

* Add Conversation factory with dependent factories

* Include FactoryBot methods in rspec config

* Add unit tests for public methods of Conversation model

* Move Current model into a separate file in lib folder

* Disable Metrics/BlockLength rule for db/migrate and spec folders

* Get rid of global $dispatcher variable

* Create Message#unread_since scope

* Refactor callback methods in Conversation model

* Create Conversations::EventDataPresenter

* Add translation keys for activity messages

* Add pry-rails gem

* Refactor Conversation#notify_status_change

* Add mock_redis for test env
This commit is contained in:
Emil Shakirov
2019-10-12 20:08:41 +02:00
committed by Sojan Jose
parent 43e54a7bfb
commit 4768aca484
25 changed files with 490 additions and 99 deletions

View File

@@ -1,2 +1,6 @@
$dispatcher = Dispatcher.instance
$dispatcher.load_listeners
Rails.application.configure do
config.to_prepare do
Rails.configuration.dispatcher = Dispatcher.instance
Rails.configuration.dispatcher.load_listeners
end
end

View File

@@ -1,5 +1,5 @@
uri = URI.parse(ENV['REDIS_URL'])
redis = Redis.new(:url => uri)
redis = Rails.env.test? ? MockRedis.new : Redis.new(:url => uri)
Nightfury.redis = Redis::Namespace.new("reports", redis: redis)
=begin

View File

@@ -41,3 +41,12 @@ en:
invalid_email: You have entered an invalid email
email_already_exists: "You have already signed up for an account with %{email}"
failed: Signup failed
conversations:
activity:
status:
resolved: "Conversation was marked resolved by %{user_name}"
open: "Conversation was reopened by #{user_name}"
assignee:
assigned: "Assigned to %{assignee_name} by %{user_name}"
removed: "Conversation unassigned by %{user_name}"