diff options
Diffstat (limited to 'spec/rubyspec/library/rexml/element/clone_spec.rb')
-rw-r--r-- | spec/rubyspec/library/rexml/element/clone_spec.rb | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/spec/rubyspec/library/rexml/element/clone_spec.rb b/spec/rubyspec/library/rexml/element/clone_spec.rb new file mode 100644 index 0000000000..08f97e7793 --- /dev/null +++ b/spec/rubyspec/library/rexml/element/clone_spec.rb @@ -0,0 +1,29 @@ +require 'rexml/document' +require File.expand_path('../../../../spec_helper', __FILE__) + +describe "REXML::Element#clone" do + before :each do + @e = REXML::Element.new "a" + end + it "creates a copy of element" do + @e.clone.to_s.should == @e.to_s + end + + it "copies the attributes" do + @e.add_attribute("foo", "bar") + @e.clone.to_s.should == @e.to_s + end + + it "does not copy the text" do + @e.add_text "some text..." + @e.clone.to_s.should_not == @e + @e.clone.to_s.should == "<a/>" + end + + it "does not copy the child elements" do + b = REXML::Element.new "b" + @e << b + @e.clone.should_not == @e + @e.clone.to_s.should == "<a/>" + end +end |