summaryrefslogtreecommitdiff
path: root/test/test_generator.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/test_generator.rb')
-rw-r--r--test/test_generator.rb37
1 files changed, 37 insertions, 0 deletions
diff --git a/test/test_generator.rb b/test/test_generator.rb
index e03c49d..71974dd 100644
--- a/test/test_generator.rb
+++ b/test/test_generator.rb
@@ -70,4 +70,41 @@ class TestGenerator < Test::Unit::TestCase
assert_equal expected, output.gsub(/[\t]/, "\s\s")
end
+
+ def test_custom_indent
+ hsh = { key1: 1, 'key2' => 2 }
+ output_plist_node = Plist::Emit.plist_node(hsh, indent: nil)
+ output_plist_dump_with_envelope = Plist::Emit.dump(hsh, indent: nil)
+ output_plist_dump_no_envelope = Plist::Emit.dump(hsh, false, indent: nil)
+
+ expected_with_envelope = <<-STR
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+<key>key1</key>
+<integer>1</integer>
+<key>key2</key>
+<integer>2</integer>
+</dict>
+</plist>
+STR
+
+ expected_no_envelope = <<-STR
+<dict>
+<key>key1</key>
+<integer>1</integer>
+<key>key2</key>
+<integer>2</integer>
+</dict>
+STR
+ assert_equal expected_no_envelope, output_plist_node
+ assert_equal expected_with_envelope, output_plist_dump_with_envelope
+ assert_equal expected_no_envelope, output_plist_dump_no_envelope
+
+ hsh.save_plist('test.plist', indent: nil)
+ output_plist_file = File.read('test.plist')
+ assert_equal expected_with_envelope, output_plist_file
+ File.unlink('test.plist')
+ end
end