未验证 提交 d134a9aa 编写于 作者: K Kasper Timm Hansen 提交者: GitHub

Merge pull request #30893 from y-yagi/verify_credentials_format_before_saving

Verify credentials format before saving
......@@ -22,6 +22,12 @@ def read
""
end
def write(contents)
deserialize(contents)
super
end
def config
@config ||= deserialize(read).deep_symbolize_keys
end
......@@ -36,7 +42,7 @@ def serialize(config)
end
def deserialize(config)
config.present? ? YAML.load(config) : {}
config.present? ? YAML.load(config, content_path) : {}
end
end
end
......@@ -51,6 +51,14 @@ class EncryptedConfigurationTest < ActiveSupport::TestCase
assert_equal "things", @credentials[:new]
end
test "raise error when writing an invalid format value" do
assert_raise(Psych::SyntaxError) do
@credentials.change do |config_file|
config_file.write "login: *login\n username: dummy"
end
end
end
test "raises key error when accessing config via bang method" do
assert_raise(KeyError) { @credentials.something! }
end
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册