Add assertions for ActiveRecord::Base.current_role
Since the `current_role` is public API.
This commit is contained in:
parent
3d5db4920a
commit
0dec2b5aa3
@ -108,6 +108,7 @@ def test_switching_connections_via_handler
|
||||
ActiveRecord::Base.connected_to(role: :reading) do
|
||||
@ro_handler = ActiveRecord::Base.connection_handler
|
||||
assert_equal ActiveRecord::Base.connection_handler, ActiveRecord::Base.connection_handlers[:reading]
|
||||
assert_equal :reading, ActiveRecord::Base.current_role
|
||||
assert ActiveRecord::Base.connected_to?(role: :reading)
|
||||
assert_not ActiveRecord::Base.connected_to?(role: :writing)
|
||||
end
|
||||
@ -115,6 +116,7 @@ def test_switching_connections_via_handler
|
||||
ActiveRecord::Base.connected_to(role: :writing) do
|
||||
assert_equal ActiveRecord::Base.connection_handler, ActiveRecord::Base.connection_handlers[:writing]
|
||||
assert_not_equal @ro_handler, ActiveRecord::Base.connection_handler
|
||||
assert_equal :writing, ActiveRecord::Base.current_role
|
||||
assert ActiveRecord::Base.connected_to?(role: :writing)
|
||||
assert_not ActiveRecord::Base.connected_to?(role: :reading)
|
||||
end
|
||||
@ -129,6 +131,7 @@ def test_switching_connections_with_database_url
|
||||
previous_url, ENV["DATABASE_URL"] = ENV["DATABASE_URL"], "postgres://localhost/foo"
|
||||
|
||||
ActiveRecord::Base.connected_to(database: { writing: "postgres://localhost/bar" }) do
|
||||
assert_equal :writing, ActiveRecord::Base.current_role
|
||||
assert ActiveRecord::Base.connected_to?(role: :writing)
|
||||
|
||||
handler = ActiveRecord::Base.connection_handler
|
||||
@ -148,6 +151,7 @@ def test_switching_connections_with_database_config_hash
|
||||
config = { adapter: "sqlite3", database: "db/readonly.sqlite3" }
|
||||
|
||||
ActiveRecord::Base.connected_to(database: { writing: config }) do
|
||||
assert_equal :writing, ActiveRecord::Base.current_role
|
||||
assert ActiveRecord::Base.connected_to?(role: :writing)
|
||||
|
||||
handler = ActiveRecord::Base.connection_handler
|
||||
@ -187,6 +191,7 @@ def test_switching_connections_with_database_symbol
|
||||
@prev_configs, ActiveRecord::Base.configurations = ActiveRecord::Base.configurations, config
|
||||
|
||||
ActiveRecord::Base.connected_to(database: :readonly) do
|
||||
assert_equal :readonly, ActiveRecord::Base.current_role
|
||||
assert ActiveRecord::Base.connected_to?(role: :readonly)
|
||||
|
||||
handler = ActiveRecord::Base.connection_handler
|
||||
@ -211,6 +216,7 @@ def test_connects_to_with_single_configuration
|
||||
|
||||
assert_equal 1, ActiveRecord::Base.connection_handlers.size
|
||||
assert_equal ActiveRecord::Base.connection_handler, ActiveRecord::Base.connection_handlers[:writing]
|
||||
assert_equal :writing, ActiveRecord::Base.current_role
|
||||
assert ActiveRecord::Base.connected_to?(role: :writing)
|
||||
ensure
|
||||
ActiveRecord::Base.configurations = @prev_configs
|
||||
|
Loading…
Reference in New Issue
Block a user