summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAaron Patterson <aaron.patterson@gmail.com>2009-09-30 09:45:04 -0700
committerAaron Patterson <aaron.patterson@gmail.com>2009-09-30 09:45:04 -0700
commit1e1aadba8331c4f0ee607671e491b0eafc270531 (patch)
treec4b40f66f22aa76a845aca31d78d00a5bfafd838
parent59e343cfc97458a38e9a9da5b0e9ba102fed0dd6 (diff)
downloadpsych-1e1aadba8331c4f0ee607671e491b0eafc270531.zip
round trip empty strings
-rw-r--r--lib/psych/visitors/yast_builder.rb2
-rw-r--r--test/visitors/test_yast_builder.rb6
2 files changed, 3 insertions, 5 deletions
diff --git a/lib/psych/visitors/yast_builder.rb b/lib/psych/visitors/yast_builder.rb
index 90dc8d0..52eae59 100644
--- a/lib/psych/visitors/yast_builder.rb
+++ b/lib/psych/visitors/yast_builder.rb
@@ -21,7 +21,7 @@ module Psych
end
def visit_String o
- quote = !!(o =~ /^(null|~)$/i)
+ quote = !!(o =~ /^(null|~)$/i or o.empty?)
scalar = Nodes::Scalar.new(o, nil, nil, !quote, quote)
@stack.last.children << scalar
diff --git a/test/visitors/test_yast_builder.rb b/test/visitors/test_yast_builder.rb
index 67d54be..bcf0cd2 100644
--- a/test/visitors/test_yast_builder.rb
+++ b/test/visitors/test_yast_builder.rb
@@ -9,10 +9,8 @@ module Psych
end
def test_scalar
- @v.accept 'foo'
-
- assert_equal 'foo', Psych.load(@v.tree.to_yaml)
- assert_equal 'foo', Psych.load('foo'.to_yaml)
+ assert_round_trip 'foo'
+ assert_round_trip ''
end
def test_binary