summaryrefslogtreecommitdiff
path: root/spec/ruby/library/rexml/attributes/each_attribute_spec.rb
blob: e84c8dbf51a8e1ee760e17b8ed3373f0bfd43f8b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
require_relative '../../../spec_helper'
require 'rexml/document'

describe "REXML::Attributes#each_attribute" do
  it "iterates over the attributes yielding actual Attribute objects" do
    e = REXML::Element.new("root")
    name = REXML::Attribute.new("name", "Joe")
    ns_uri = REXML::Attribute.new("xmlns:ns", "http://some_uri")
    e.add_attribute name
    e.add_attribute ns_uri

    attributes = []

    e.attributes.each_attribute do |attr|
      attributes << attr
    end

    attributes = attributes.sort_by {|a| a.name }
    attributes.first.should == name
    attributes.last.should == ns_uri
  end
end