summaryrefslogtreecommitdiff
path: root/spec/ruby/library/rexml/element/root_spec.rb
blob: 52aa4571b9068990fb16788928f5b84c0d92a4be (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
require_relative '../../../spec_helper'

ruby_version_is ''...'3.0' do
  require 'rexml/document'

  describe "REXML::Element#root" do
    before :each do
      @doc  = REXML::Document.new
      @root = REXML::Element.new "root"
      @node = REXML::Element.new "node"
      @doc << @root << @node
    end

    it "returns first child on documents" do
      @doc.root.should == @root
    end

    it "returns self on root nodes" do
      @root.root.should == @root
    end

    it "returns parent's root on child nodes" do
      @node.root.should == @root
    end

    it "returns self on standalone nodes" do
      e = REXML::Element.new "Elem"         # Note that it doesn't have a parent node
      e.root.should == e
    end
  end
end