57 lines
1.5 KiB
Ruby
57 lines
1.5 KiB
Ruby
# test XmlNode class
|
|
|
|
require 'test/unit'
|
|
require File.join(File.dirname(__FILE__),'_loadpath')
|
|
require 'openwsman'
|
|
|
|
class XmlNodeTest < Test::Unit::TestCase
|
|
# Nodes are not constructed, but added to other nodes
|
|
def test_node_constructor
|
|
doc = Openwsman::XmlDoc.new "node"
|
|
assert doc
|
|
root = doc.root
|
|
root.add( Openwsman::XML_NS_SOAP_1_2, "one" )
|
|
assert root[0].name = "one"
|
|
root.add( Openwsman::XML_NS_SOAP_1_2, "two", "2" )
|
|
child = root.add( Openwsman::XML_NS_SOAP_1_2, "three", "drei" )
|
|
assert child.ns == Openwsman::XML_NS_SOAP_1_2
|
|
assert child.name == "three"
|
|
assert child.text == "drei"
|
|
assert root.size == 3
|
|
child.text = "troi"
|
|
assert child.text == "troi"
|
|
assert root[2] == child
|
|
i = 0
|
|
root.each { |c| i += 1 }
|
|
assert i == root.size
|
|
end
|
|
def test_node_accessor
|
|
doc = Openwsman::create_soap_envelope
|
|
assert doc
|
|
header = doc.element("Header")
|
|
assert header
|
|
assert header.name == "Header"
|
|
assert header.to_s
|
|
body = doc.element("Body")
|
|
assert body
|
|
assert body.name == "Body"
|
|
assert body.to_s
|
|
envelope = doc.envelope
|
|
assert envelope
|
|
assert envelope.name == "Envelope"
|
|
assert envelope.ns == Openwsman::XML_NS_SOAP_1_2
|
|
end
|
|
def test_node_add
|
|
doc = Openwsman::XmlDoc.new "node"
|
|
root = doc.root
|
|
node = root.add("ns", "name", "value")
|
|
root << node
|
|
root << node
|
|
root << node
|
|
assert root.size == 4
|
|
assert root[1] != node # its a dup
|
|
assert root[0].name == root[1].name
|
|
puts doc.to_xml
|
|
end
|
|
end
|