mirror of
https://github.com/discourse/discourse.git
synced 2025-05-21 18:12:32 +08:00
FEATURE: improve handling of site setting secrets
This commit is contained in:
@ -439,7 +439,7 @@ describe SiteSettingExtension do
|
||||
|
||||
describe ".set_and_log" do
|
||||
before do
|
||||
settings.setting(:s3_secret_access_key, "old_secret_key")
|
||||
settings.setting(:s3_secret_access_key, "old_secret_key", secret: true)
|
||||
settings.setting(:title, "Discourse v1")
|
||||
settings.refresh!
|
||||
end
|
||||
@ -592,6 +592,27 @@ describe SiteSettingExtension do
|
||||
end
|
||||
end
|
||||
|
||||
describe "secret" do
|
||||
before do
|
||||
settings.setting(:superman_identity, 'Clark Kent', secret: true)
|
||||
settings.refresh!
|
||||
end
|
||||
|
||||
it "is in the `secret_settings` collection" do
|
||||
expect(settings.secret_settings.include?(:superman_identity)).to eq(true)
|
||||
end
|
||||
|
||||
it "can be retrieved" do
|
||||
expect(settings.superman_identity).to eq("Clark Kent")
|
||||
end
|
||||
|
||||
it "is present in all_settings by default" do
|
||||
secret_setting = settings.all_settings.find { |s| s[:setting] == :superman_identity }
|
||||
expect(secret_setting).to be_present
|
||||
expect(secret_setting[:secret]).to eq(true)
|
||||
end
|
||||
end
|
||||
|
||||
describe 'locale default overrides are respected' do
|
||||
before do
|
||||
settings.setting(:test_override, 'default', locale_default: { zh_CN: 'cn' })
|
||||
|
Reference in New Issue
Block a user