[前][次][番号順一覧][スレッド一覧]

ruby-changes:25297

From: tenderlove <ko1@a...>
Date: Sun, 28 Oct 2012 10:08:58 +0900 (JST)
Subject: [ruby-changes:25297] tenderlove:r37349 (trunk): * ext/psych/lib/psych/visitors/yaml_tree.rb: YAML Tree object should

tenderlove	2012-10-28 10:06:09 +0900 (Sun, 28 Oct 2012)

  New Revision: 37349

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=37349

  Log:
    * ext/psych/lib/psych/visitors/yaml_tree.rb: YAML Tree object should
      be able to take an emitter object as it's output.
    
    * test/psych/visitors/test_yaml_tree.rb: related test.

  Modified files:
    trunk/ChangeLog
    trunk/ext/psych/lib/psych/visitors/yaml_tree.rb
    trunk/test/psych/visitors/test_yaml_tree.rb

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 37348)
+++ ChangeLog	(revision 37349)
@@ -1,3 +1,10 @@
+Sun Oct 28 10:05:03 2012  Aaron Patterson <aaron@t...>
+
+	* ext/psych/lib/psych/visitors/yaml_tree.rb: YAML Tree object should
+	  be able to take an emitter object as it's output.
+
+	* test/psych/visitors/test_yaml_tree.rb: related test.
+
 Sun Oct 28 08:23:16 2012  Koichi Sasada  <ko1@a...>
 
 	* bignum.c (bignew_1): Bignum instances are frozen.
Index: ext/psych/lib/psych/visitors/yaml_tree.rb
===================================================================
--- ext/psych/lib/psych/visitors/yaml_tree.rb	(revision 37348)
+++ ext/psych/lib/psych/visitors/yaml_tree.rb	(revision 37349)
@@ -65,7 +65,7 @@
 
         @emitter.start_document version, [], false
         accept object
-        @emitter.end_document
+        @emitter.end_document !@emitter.streaming?
       end
       alias :<< :push
 
Index: test/psych/visitors/test_yaml_tree.rb
===================================================================
--- test/psych/visitors/test_yaml_tree.rb	(revision 37348)
+++ test/psych/visitors/test_yaml_tree.rb	(revision 37349)
@@ -8,6 +8,17 @@
         @v = Visitors::YAMLTree.new
       end
 
+      def test_yaml_tree_can_take_an_emitter
+        io = StringIO.new
+        e  = Psych::Emitter.new io
+        v = Visitors::YAMLTree.new({}, e)
+        v.start
+        v << "hello world"
+        v.finish
+
+        assert_match "hello world", io.string
+      end
+
       def test_binary_formatting
         gif = "GIF89a\f\x00\f\x00\x84\x00\x00\xFF\xFF\xF7\xF5\xF5\xEE\xE9\xE9\xE5fff\x00\x00\x00\xE7\xE7\xE7^^^\xF3\xF3\xED\x8E\x8E\x8E\xE0\xE0\xE0\x9F\x9F\x9F\x93\x93\x93\xA7\xA7\xA7\x9E\x9E\x9Eiiiccc\xA3\xA3\xA3\x84\x84\x84\xFF\xFE\xF9\xFF\xFE\xF9\xFF\xFE\xF9\xFF\xFE\xF9\xFF\xFE\xF9\xFF\xFE\xF9\xFF\xFE\xF9\xFF\xFE\xF9\xFF\xFE\xF9\xFF\xFE\xF9\xFF\xFE\xF9\xFF\xFE\xF9\xFF\xFE\xF9\xFF\xFE\xF9!\xFE\x0EMade with GIMP\x00,\x00\x00\x00\x00\f\x00\f\x00\x00\x05,  \x8E\x810\x9E\xE3@\x14\xE8i\x10\xC4\xD1\x8A\b\x1C\xCF\x80M$z\xEF\xFF0\x85p\xB8\xB01f\r\e\xCE\x01\xC3\x01\x1E\x10' \x82\n\x01\x00;"
         @v << gif

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]