定数を管理する config
といgemがあるが、これはハッシュを指定すると上書きできる。上書きできるのでテストするときは上書きするなどの行為ができる。
※普通のソースコード上ではsettingsの旨味なくなるのでやらないこと
環境
rails (5.2.0) config (1.7.0)
やり方
Settings.add_source!({{上書きしたいHash}}) Settings.reload!
例
こんな感じでyamlを書く
test: text: "TestText" msg: "Message"
ハッシュで上書きする。 同列のネストの値も上書きされてしまうので注意
Settings.test.text # => "TestText" Settings.test.msg # => "Message" # リロードする Settings.add_source!({test:{text:"NewText"}}) Settings.reload! # 再度確かめる Settings.test.text # => "NewText" Settings.test.msg # => nil