<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -23,4 +23,6 @@ Install with:
 === Cloning really deep
    pirate.clone :include =&gt; {:treasures =&gt; :gold_pieces}
 
+=== Cloning really deep with multiple associations
+   pirate.clone :include =&gt; [:mateys, {:treasures =&gt; :gold_pieces}]
 Copyright (c) 2008 Jan De Poorter, released under the MIT license</diff>
      <filename>README.rdoc</filename>
    </modified>
    <modified>
      <diff>@@ -24,6 +24,9 @@ module DeepCloning
   #
   # ==== Cloning really deep
   #   pirate.clone :include =&gt; {:treasures =&gt; :gold_pieces}
+  #
+  # ==== Cloning really deep with multiple associations
+  #   pirate.clone :include =&gt; [:mateys, {:treasures =&gt; :gold_pieces}]
   # 
   def clone_with_deep_cloning options = {}
     kopy = clone_without_deep_cloning
@@ -36,6 +39,10 @@ module DeepCloning
     
     if options[:include]
       Array(options[:include]).each do |association, deep_associations|
+        if (association.kind_of? Hash)
+          deep_associations = association[association.keys.first]
+          association = association.keys.first
+        end
         opts = deep_associations.blank? ? {} : {:include =&gt; deep_associations}
         kopy.send(&quot;#{association}=&quot;, self.send(association).collect {|i| i.clone(opts) })
       end</diff>
      <filename>lib/deep_cloning.rb</filename>
    </modified>
    <modified>
      <diff>@@ -50,4 +50,12 @@ class DeepCloningTest &lt; Test::Unit::TestCase
     assert_equal 1, clone.gold_pieces.size
     assert_equal 1, clone.mateys.size
   end
+  
+  def test_multiple_and_deep_include_association_with_array
+    clone = @jack.clone(:include =&gt; [{:treasures =&gt; :gold_pieces}, :mateys])
+    assert clone.save
+    assert_equal 1, clone.treasures.size
+    assert_equal 1, clone.gold_pieces.size
+    assert_equal 1, clone.mateys.size
+  end
 end
\ No newline at end of file</diff>
      <filename>test/deep_cloning_test.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>a1efe599d8334948339e38c5a260a3c637a2c04a</id>
    </parent>
  </parents>
  <author>
    <name>Jan De Poorter</name>
    <email>jan@defv.be</email>
  </author>
  <url>http://github.com/DefV/deep_cloning/commit/247fdd274687583e174ac5bc8c8232d3c2ad9bf6</url>
  <id>247fdd274687583e174ac5bc8c8232d3c2ad9bf6</id>
  <committed-date>2008-04-17T03:03:06-07:00</committed-date>
  <authored-date>2008-04-17T03:03:06-07:00</authored-date>
  <message>Cloning really deep with multiple associations

Made it easy to do deep cloning with multiple associations. So you could do:
	pirate.clone :include =&gt; [:mateys, {:treasures =&gt; :gold_pieces}]

thanks to Mark Donnelly for this patch</message>
  <tree>ed647911ee4b0fbcc236398dbb37b8ac6816bf9e</tree>
  <committer>
    <name>Jan De Poorter</name>
    <email>jan@defv.be</email>
  </committer>
</commit>
