#
# CMakeLists.txt for openwsman/bindings/ruby/test
#
ENABLE_TESTING()

	# loading rwsman
ADD_TEST(bindings_ruby_loading    ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} loading.rb )

	# predefined stuff
ADD_TEST(bindings_ruby_constants  ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} constants.rb )

	# version
ADD_TEST(bindings_ruby_version    ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} version.rb )

        # Xml bindings
ADD_TEST(bindings_ruby_xmldoc     ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} xmldoc.rb )
ADD_TEST(bindings_ruby_xmlnode    ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} xmlnode.rb )
ADD_TEST(bindings_ruby_xmlattr    ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} xmlattr.rb )
ADD_TEST(bindings_ruby_xmlfind    ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} xmlfind.rb )
	
	# Client
ADD_TEST(bindings_ruby_client     ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} client.rb )
ADD_TEST(bindings_ruby_client_bad ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} client_bad.rb )

	# Transport
ADD_TEST(bindings_ruby_transport  ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} transport.rb )
	
	# ClientOptions
ADD_TEST(bindings_ruby_options    ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} clientoptions.rb )
ADD_TEST(bindings_ruby_debug      ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} debug.rb )
        # Identify
ADD_TEST(bindings_ruby_identify   ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} identify.rb )

	# data types
ADD_TEST(bindings_ruby_fault      ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} fault.rb )

        # needs a CIMOM
ADD_TEST(bindings_ruby_computer_system      ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} cim_computer_system.rb )
ADD_TEST(bindings_ruby_operating_system     ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} cim_operating_system.rb )
ADD_TEST(bindings_ruby_cim_process          ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} cim_process.rb )
ADD_TEST(bindings_ruby_system_configuration ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} cim_system_configuration.rb )
ADD_TEST(bindings_ruby_create               ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} create.rb )
ADD_TEST(bindings_ruby_each_child           ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} each_child.rb )
ADD_TEST(bindings_ruby_enumerate            ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} enumerate.rb )
ADD_TEST(bindings_ruby_get                  ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} get.rb )
ADD_TEST(bindings_ruby_identify             ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} identify.rb )
ADD_TEST(bindings_ruby_invoke               ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} invoke.rb )
ADD_TEST(bindings_ruby_notepad              ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} notepad.rb )
ADD_TEST(bindings_ruby_nsconsts             ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} nsconsts.rb )
ADD_TEST(bindings_ruby_pull                 ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} pull.rb )
ADD_TEST(bindings_ruby_put                  ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} put.rb )
ADD_TEST(bindings_ruby_release              ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} release.rb )

	# needs WinRM system
ADD_TEST(bindings_ruby_win32_operatingsystem ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} win32_operatingsystem.rb )
ADD_TEST(bindings_ruby_win32_process         ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} win32_process.rb )
ADD_TEST(bindings_ruby_win32_services        ${CMAKE_CURRENT_SOURCE_DIR}/ruby -C ${CMAKE_CURRENT_SOURCE_DIR} win32_services.rb )
