1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/spec/ruby/library/rexml/document/new_spec.rb

40 lines
1 KiB
Ruby
Raw Normal View History

require_relative '../../../spec_helper'
2020-09-15 15:54:31 -04:00
ruby_version_is ''...'3.0' do
2020-01-11 18:14:26 -05:00
require 'rexml/document'
2020-01-11 18:14:26 -05:00
describe "REXML::Document#new" do
2020-01-11 18:14:26 -05:00
it "initializes context of {} unless specified" do
d = REXML::Document.new("<foo />")
d.context.should == {}
end
2020-01-11 18:14:26 -05:00
it "has empty attributes if source is nil" do
d = REXML::Document.new(nil)
d.elements.should be_empty
end
2020-01-11 18:14:26 -05:00
it "can use other document context" do
s = REXML::Document.new("")
d = REXML::Document.new(s)
d.context.should == s.context
end
2020-01-11 18:14:26 -05:00
it "clones source attributes" do
s = REXML::Document.new("<root />")
s.attributes["some_attr"] = "some_val"
d = REXML::Document.new(s)
d.attributes.should == s.attributes
end
it "raises an error if source is not a Document, String or IO" do
-> {REXML::Document.new(3)}.should raise_error(RuntimeError)
end
2020-01-11 18:14:26 -05:00
it "does not perform XML validation" do
REXML::Document.new("Invalid document").should be_kind_of(REXML::Document)
end
end
end