blob: 3db45c4d2318181b4e31e4d01cab575eee42e776 [file] [log] [blame]
# invoke.rb
require 'test/unit'
require 'rexml/document'
require File.join(File.dirname(__FILE__),'_loadpath')
require 'openwsman'
require '_client'
class WsmanTest < Test::Unit::TestCase
def test_client
client = Client.open
assert client
options = Openwsman::ClientOptions.new
assert options
options.set_dump_request
uri_prefix = "http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/"
klass = "Win32_ProcessStartup"
uri = uri_prefix + klass
# instance values
instance = { "Title" => "Notepad" }
data = Openwsman::XmlDoc.new(klass, uri)
root = data.root
instance.each do |key,value|
root.add uri, key, value
end
s = data.to_xml
# puts "Creating #{klass} with #{s}"
#
# result = client.create( options, uri, s, s.size, "utf-8" )
# if fault? client, result
# exit 1
# end
puts "Starting notepad"
uri = uri_prefix + "Win32_Process"
options.add_selector( "CommandLine", "notepad.exe")
options.add_selector( "CurrentDirectory", "C:\\" )
options.add_selector( "ProcessStartupInformation", s )
method = "Create"
# method = "StopService"
result = client.invoke( options, uri, method )
fault? client, result
end
end