class LoaderUiTest
Public Instance Methods
initialize_vizkit_extension()
click to toggle source
# File test/test_uiloader.rb, line 414 def initialize_vizkit_extension @val = 1234 end
setup()
click to toggle source
# File test/test_uiloader.rb, line 12 def setup @loader = Vizkit.default_loader Vizkit::UiLoader.current_loader_instance = @loader Vizkit::UiLoader.current_loader_instance.plugin_specs.delete("QWidget") end
test123()
click to toggle source
# File test/test_uiloader.rb, line 411 def test123 123 end
test3()
click to toggle source
# File test/test_uiloader.rb, line 309 def test3 333 end
test_callback_create()
click to toggle source
# File test/test_uiloader.rb, line 118 def test_callback_create spec = Vizkit::CallbackSpec.new("String",:display,true,:test) assert_equal Vizkit::CallbackSpec::MethodNameAdapter, spec.callback.class assert_equal :test,spec.callback.to_sym assert_equal "String",spec.argument assert_equal :display,spec.callback_type spec.callback_type(:my) assert_equal :my,spec.callback_type assert_equal true,spec.default spec.default(false) assert_equal false,spec.default spec.doc("Doc") assert_equal "Doc",spec.doc spec = Vizkit::CallbackSpec.new("String",:display,false) assert_equal Vizkit::CallbackSpec::NoCallbackAdapter, spec.callback.class assert_equal "String",spec.argument assert_equal :display,spec.callback_type assert_equal false,spec.default spec = Vizkit::CallbackSpec.new("String") assert_equal Vizkit::CallbackSpec::NoCallbackAdapter, spec.callback.class assert_equal "String",spec.argument assert_equal nil,display,spec.callback_type assert_equal false,spec.default spec = Vizkit::CallbackSpec.new("String",:display,false) do |sample,port| 123 end assert_equal Vizkit::CallbackSpec::BlockAdapter, spec.callback.class assert_equal 123,spec.callback.call("la","la") assert_equal "String",spec.argument assert_equal :display,spec.callback_type assert_equal false,spec.default spec = Vizkit::CallbackSpec.new("String",:display,false) do |sample,port| 123 end assert_equal Vizkit::CallbackSpec::BlockAdapter, spec.callback.class assert_equal 123,spec.callback.call("la","la") assert_equal "String",spec.argument assert_equal :display,spec.callback_type assert_equal false,spec.default spec = Vizkit::CallbackSpec.new("String") do |sample,port| 123 end assert_equal Vizkit::CallbackSpec::BlockAdapter, spec.callback.class assert_equal 123,spec.callback.call("la","la") assert_equal "String",spec.argument assert_equal nil,spec.callback_type assert_equal false,spec.default end
test_callback_match()
click to toggle source
# File test/test_uiloader.rb, line 172 def test_callback_match spec = Vizkit::CallbackSpec.new("String",:display,true,:test) assert spec.match?(:argument => "String") assert !spec.match?(:argument => "Numeric") assert spec.match?(:argument => "String",:callback_type => :display) assert !spec.match?(:argument => "String",:callback_type => :display2) assert spec.match?(:argument => "String",:callback_type => :display,:default => true) assert !spec.match?(:argument => "String",:callback_type => :display,:default => false) assert spec.match?(:callback_type => :display) assert !spec.match?(:callback_type => :display2) assert spec.match?(:callback_type => :display,:default => true) assert !spec.match?(:callback_type => :display,:default => false) assert spec.match?(:default => true) assert !spec.match?(:default => false) #test superclass (Numeric is superclass of Float) spec = Vizkit::CallbackSpec.new("Numeric",:display,true,:test) assert spec.match?(:argument => "Float") assert !spec.match?(:argument => "Float",:exact => true) assert !spec.match?(:argument => "String") assert !spec.match?(:argument => "Float",:callback_type => :display2) assert spec.match?(:argument => "Float",:callback_type => :display,:default => true) assert !spec.match?(:argument => "Float",:callback_type => :display,:default => false) #test mapping Vizkit::PluginHelper.register_map_obj("Float") do |object| ["test_name1","test_name2"] end spec = Vizkit::CallbackSpec.new("test_name1",:display,false,:test2) assert spec.match?(:argument => 123.2,:callback_type => :display) end
test_callbacks()
click to toggle source
# File test/test_uiloader.rb, line 225 def test_callbacks block = Proc.new do |*args| args end adapter = Vizkit::CallbackSpec::UnboundBlockAdapter.new(block) obj = String.new adapter2 = adapter.bind(obj) assert_equal obj,adapter2.call.first end
test_class_from_string()
click to toggle source
# File test/test_uiloader.rb, line 32 def test_class_from_string assert_equal String, Vizkit::PluginHelper.class_from_string("String") assert_equal String, Vizkit::PluginHelper.class_from_string(String) assert_equal Array, Vizkit::PluginHelper.class_from_string("Array") assert_equal nil, Vizkit::PluginHelper.class_from_string("Array2") assert_equal Qt::Widget, Vizkit::PluginHelper.class_from_string("Qt::Widget") assert_equal Types::Base::Samples::RigidBodyState, Vizkit::PluginHelper.class_from_string("Types::Base::Samples::RigidBodyState") assert_equal Orocos.registry.get("/base/samples/RigidBodyState"), Vizkit::PluginHelper.class_from_string("/base/samples/RigidBodyState") assert_equal Types::Base::Samples::RigidBodyState, Vizkit::PluginHelper.class_from_string("/base/samples/RigidBodyState_m") assert_equal Types::Base::Angle, Vizkit::PluginHelper.class_from_string("Types::Base::Angle") assert_equal Types::Base::Angle, Vizkit::PluginHelper.class_from_string("/base/Angle") end
test_classes()
click to toggle source
# File test/test_uiloader.rb, line 59 def test_classes _,v2,_ = RUBY_VERSION.split('.') if v2 == "8" assert_equal ["Float","Numeric","Object"],Vizkit::PluginHelper.classes(Float) else assert_equal ["Float","Numeric","Object","BasicObject"],Vizkit::PluginHelper.classes(Float) end end
test_loader_add_plugin_path()
click to toggle source
# File test/test_uiloader.rb, line 507 def test_loader_add_plugin_path assert !@loader.plugin?("TestWidget123") assert !@loader.widget?("TestWidget123") @loader.add_plugin_path(File.join(File.dirname(__FILE__),"extension")) assert @loader.plugin?("TestWidget123") plugin = @loader.create_plugin("TestWidget123") assert plugin assert_equal 123,plugin.test @loader.add_plugin_path(File.join(File.dirname(__FILE__),"does_not_exist")) end
test_loader_available_plugins()
click to toggle source
# File test/test_uiloader.rb, line 499 def test_loader_available_plugins assert @loader.available_plugins.include? "Plot2d" end
test_loader_available_widgets()
click to toggle source
# File test/test_uiloader.rb, line 552 def test_loader_available_widgets assert @loader.available_widgets.find{|p| p == "QWidget"} end
test_loader_create_plugin()
click to toggle source
# File test/test_uiloader.rb, line 524 def test_loader_create_plugin widget = @loader.create_plugin("QWidget") assert_equal widget.class_name, "QWidget" widget = @loader.QWidget assert_equal widget.class_name, "QWidget" #compatibility check widget = @loader.create_widget("QWidget",nil,true,true) assert_equal widget.class_name, "Qt::Widget" widget = @loader.create_widget("QWidget") assert_equal widget.class_name, "QWidget" widget = @loader.QLabel assert_equal widget.class_name, "Qt::Label" #throw error message assert_raise NoMethodError do @loader.ImageView123 end end
test_loader_create_plugin_for()
click to toggle source
# File test/test_uiloader.rb, line 547 def test_loader_create_plugin_for widget = @loader.create_plugin_for("/base/samples/frame/Frame",:display) assert_equal widget.plugin_spec.plugin_name,"ImageView" end
test_loader_exists()
click to toggle source
# File test/test_uiloader.rb, line 23 def test_loader_exists assert(@loader) end
test_loader_extend_cplusplus_widget_class()
click to toggle source
# File test/test_uiloader.rb, line 409 def test_loader_extend_cplusplus_widget_class Vizkit::UiLoader.extend_cplusplus_widget_class("QWidget") do def test123 123 end def initialize_vizkit_extension @val = 1234 end end widget = @loader.create_plugin("QWidget") assert widget.respond_to?(:test123) assert widget.respond_to?(:initialize_vizkit_extension) assert_equal 1234, widget.instance_variable_get(:@val) assert @loader.plugin? "QWidget" assert @loader.create_plugin "QWidget" assert @loader.create_plugin "QPushButton" assert_equal 123,widget.test123 end
test_loader_find_all_plugin_names()
click to toggle source
# File test/test_uiloader.rb, line 519 def test_loader_find_all_plugin_names names = @loader.find_all_plugin_names(:argument => "/base/Time") assert !names.empty? end
test_loader_load_ui()
click to toggle source
# File test/test_uiloader.rb, line 479 def test_loader_load_ui widget = @loader.load File.join(File.dirname(__FILE__),"test.ui") assert widget assert widget.textEdit assert_equal widget.textEdit.class_name, "Qt::TextEdit" assert widget.plot2d assert_equal widget.plot2d.class_name, "Plot2d" #test that the spec was attaced assert widget.plot2d.plugin_spec #test that initialize_vizkit_extension was called assert_equal widget.plot2d.instance_variable_get(:@graphs).class,Hash #test that the spec was set corretly for plugins created via ui loader plugin = @loader.StructViewer assert_equal "StructViewer",plugin.plugin_spec.plugin_name end
test_loader_plugin?()
click to toggle source
# File test/test_uiloader.rb, line 503 def test_loader_plugin? assert @loader.plugin? "ImageView" end
test_loader_register_3d_plugin()
click to toggle source
# File test/test_uiloader.rb, line 393 def test_loader_register_3d_plugin spec = Vizkit::UiLoader.register_3d_plugin("RigidBodyStateVis","vizkit-base","RigidBodyStateVisualization") assert(spec) assert_equal(spec.plugin_type,:vizkit3d_plugin) assert @loader.create_plugin("RigidBodyStateVis") assert @loader.available_plugins.find{|p| p == "RigidBodyStateVis"} assert @loader.plugin?("RigidBodyStateVis") assert !@loader.widget?("RigidBodyStateVis") assert @loader.create_plugin("RigidBodyStateVisualization") #test loading plugin without calling the ui loader widget = Vizkit.vizkit3d_widget.createPlugin("vizkit-base","RigidBodyStateVisualization") assert widget end
test_loader_register_plugin_for()
click to toggle source
# File test/test_uiloader.rb, line 428 def test_loader_register_plugin_for #delete all loaded specs @loader.instance_variable_set(:@plugin_specs,Hash.new) Vizkit::UiLoader.register_plugin_for("QWidget",123,:display) do end spec = Vizkit::UiLoader.register_plugin_for("QPushButton","String",:display) do end assert spec.default plugin = @loader.create_plugin_for(Fixnum,:display) assert plugin assert plugin.is_a? Qt::Widget assert @loader.create_plugin_for(123,:display).is_a? Qt::Widget plugin = @loader.create_plugin_for(String,:display) assert plugin assert plugin.is_a? Qt::Widget #test multi value registration specs = Vizkit::UiLoader.register_plugin_for("QLabel",["String","Array","Hash"],:display) do 888 end assert_equal specs.size,3 plugin = @loader.create_plugin_for(Hash,:display) assert plugin assert plugin.is_a? Qt::Label callback = plugin.plugin_spec.find_callback!(:argument => "Hash",:callback_type => :display) assert callback assert_equal 888,callback.call end
test_loader_register_ruby_widget()
click to toggle source
# File test/test_uiloader.rb, line 372 def test_loader_register_ruby_widget spec = Vizkit::UiLoader.register_ruby_widget("object",Qt::Object.method(:new)) assert(spec) assert_equal(spec.plugin_type,:ruby_plugin) assert @loader.create_plugin("object") assert @loader.available_plugins.find{|p| p == "object"} assert @loader.plugin?("object") assert !@loader.widget?("object") #test name spaces spec = Vizkit::UiLoader.register_ruby_widget("vizkit::object1",Qt::Object.method(:new)) spec = Vizkit::UiLoader.register_ruby_widget("envire.object2",Qt::Object.method(:new)) assert(spec) assert @loader.vizkit.object1 assert @loader.envire.object2 assert_raise NoMethodError do @loader.vizkit.obj end assert @loader.object end
test_loader_register_widget_for()
click to toggle source
# File test/test_uiloader.rb, line 460 def test_loader_register_widget_for #delete all loaded specs @loader.instance_variable_set(:@plugin_specs,Hash.new) Vizkit::UiLoader.register_widget_for("QWidget",123) do end Vizkit::UiLoader.register_widget_for("QPushButton","String") do end widget = @loader.create_plugin_for(Fixnum,:display) assert widget assert widget.is_a? Qt::Widget assert @loader.create_plugin_for(123,:display).is_a? Qt::Widget widget = @loader.create_plugin_for(String,:display) assert widget assert widget.is_a? Qt::Widget end
test_loader_widget?()
click to toggle source
# File test/test_uiloader.rb, line 556 def test_loader_widget? assert @loader.widget? "QWidget" assert @loader.widget? "QPushButton" end
test_map_obj()
click to toggle source
# File test/test_uiloader.rb, line 45 def test_map_obj Vizkit::PluginHelper.register_map_obj("Array") do |object| if object == Numeric "my_name2" else ["my_name"] end end assert_equal "my_name",Vizkit::PluginHelper.map_obj("Array",Array).first assert_equal "my_name2",Vizkit::PluginHelper.map_obj("Array",Numeric).first assert_equal "my_name",Vizkit::PluginHelper.map_obj("Array").first assert_equal "my_name",Vizkit::PluginHelper.map_obj(Array).first end
test_method()
click to toggle source
# File test/test_uiloader.rb, line 363 def test_method end
test_normalize()
click to toggle source
# File test/test_uiloader.rb, line 68 def test_normalize #test abstract name names = Vizkit::PluginHelper.normalize_obj("MyLabel") assert_equal(names.first,"MyLabel") assert_equal(1,names.size) #test typelib class klass = Types::Base::Samples::RigidBodyState names = Vizkit::PluginHelper.normalize_obj(klass) assert_equal "/base/samples/RigidBodyState",names.first names = Vizkit::PluginHelper.normalize_obj("Types::Base::Samples::RigidBodyState") assert_equal "/base/samples/RigidBodyState",names.first names = Vizkit::PluginHelper.normalize_obj("/wrappers/Matrix</double,3,1>") assert names.include?("/base/Vector3d") names = Vizkit::PluginHelper.normalize_obj("/base/samples/frame/Frame") assert names.include?("/base/samples/frame/Frame") #test typelib value argument = klass.new names = Vizkit::PluginHelper.normalize_obj(argument) assert_equal "/base/samples/RigidBodyState_m",names.first names = Vizkit::PluginHelper.normalize_obj("/base/samples/RigidBodyState_m") assert_equal "/base/samples/RigidBodyState",names.first #test normale qt widgets widget = Qt::Widget.new names = Vizkit::PluginHelper.normalize_obj(widget) assert_equal "Qt::Widget",names.first names = Vizkit::PluginHelper.normalize_obj("Qt::Widget") assert_equal "Qt::Widget",names.first #test vizkit plugins spec = Vizkit::PluginSpec.new("my_widget") widget.instance_variable_set :@__plugin_spec__,spec def widget.plugin_spec @__plugin_spec__ end names = Vizkit::PluginHelper.normalize_obj(widget) assert_equal "my_widget",names.first names = Vizkit::PluginHelper.normalize_obj("my_widget") assert_equal "my_widget",names.first end
test_plugin_callback_spec()
click to toggle source
# File test/test_uiloader.rb, line 235 def test_plugin_callback_spec spec = Vizkit::PluginSpec.new("MyPlugin") callback = Vizkit::CallbackSpec.new("String",nil,nil,:test).callback_type(:display).default(false) spec.callback_spec(callback) callback = Vizkit::CallbackSpec.new("Numeric",:display,false) do |sample,options| 123 end spec.callback_spec(callback) assert_equal 2,spec.find_all_callback_specs(:callback_type => :display).size assert_equal 0,spec.find_all_callback_specs(:callback_type => :display2).size assert_equal :test, spec.find_callback!(:argument => "String",:callback_type => :display,:default => false).to_sym spec = Vizkit::PluginSpec.new("MyPlugin") spec.callback_spec("String",:display,false,:test) spec.callback_spec("Numeric",:display,false) do |sample,options| 123 end assert_equal 2,spec.find_all_callback_specs(:callback_type => :display).size assert_equal 0,spec.find_all_callback_specs(:callback_type => :display2).size assert_equal :test, spec.find_callback!(:argument => "String",:callback_type => :display,:default => false).to_sym #test superclass: superclass of Float is Numeric assert_equal 123, spec.find_callback!(:argument => 1.2,:callback_type => :display,:default => false).call(123,Hash.new) #test mapping Vizkit::PluginHelper.register_map_obj("Float") do |object| ["test_name1","test_name2"] end spec.callback_spec(Vizkit::CallbackSpec.new("test_name1",:display,true,:test2)) assert_equal :test2, spec.find_callback!(:argument => 123.2,:callback_type => :display).to_sym assert_equal 123, spec.find_callback!(:argument => 12,:callback_type => :display,:default=>nil).call(123,Hash.new) #test that double registration is not allowed spec.callback_spec("/base/samples/RigidBodyState_m",:display,true,:test2) assert_equal spec.callback_specs.last, spec.find_callback_spec!(:argument => "/base/samples/RigidBodyState_m",:callback_type => :display) size = spec.callback_specs.size spec.callback_spec("/base/samples/RigidBodyState_m",:display,false,:test2) assert_equal size,spec.callback_specs.size end
test_plugin_creation()
click to toggle source
# File test/test_uiloader.rb, line 206 def test_plugin_creation spec = Vizkit::PluginSpec.new("MyPlugin") spec.creation_method do |parent| String.new end assert spec.creation_method assert_equal String.name, spec.create_plugin.class.name assert_equal String.name, spec.created_plugins[0].class.name def spec.test(parent) Array.new end spec.creation_method(spec.method(:test)) assert_equal Array.name, spec.create_plugin.class.name assert_equal Array.name, spec.created_plugins[1].class.name assert_equal spec, spec.created_plugins.first.plugin_spec end
test_plugin_extension()
click to toggle source
# File test/test_uiloader.rb, line 286 def test_plugin_extension spec = Vizkit::PluginSpec.new("MyPlugin") spec.extensions(Test,Test2) spec.creation_method do |caller,parent| String.new end assert_equal 111,spec.create_plugin.test assert_equal 222,spec.create_plugin.test2 spec = Vizkit::PluginSpec.new("MyPlugin") spec.extensions([Test,Test2]) spec.creation_method do |caller,parent| String.new end assert_equal 111,spec.create_plugin.test assert_equal 222,spec.create_plugin.test2 spec = Vizkit::PluginSpec.new("MyPlugin") spec.extension(Test).extension(Test2) spec.creation_method do |caller,parent| String.new end spec.extension do def test3 333 end end assert_equal 111,spec.create_plugin.test assert_equal 222,spec.create_plugin.test2 assert_equal 333,spec.create_plugin.test3 end
test_plugin_match()
click to toggle source
# File test/test_uiloader.rb, line 318 def test_plugin_match spec = Vizkit::PluginSpec.new("MyPlugin") spec.cplusplus_name("CWidget") spec.callback_spec("String",:display,false,:test) spec.callback_spec("Float",:display,true) do |sample,options| 123 end assert spec.match?(:plugin_name => "MyPlugin") assert spec.match?(:plugin_name => "MyPlugin",:cplusplus_name => "CWidget") assert !spec.match?(:plugin_name => "MyPlugin2",:cplusplus_name => "CWidget") assert !spec.match?(:plugin_name => "MyPlugin",:cplusplus_name => "CWidget2") assert !spec.match?(:plugin_name => "MyPlugin2") assert spec.match?(:plugin_name => "MyPlugin",:argument => String,:callback_type => :display) assert spec.match?(:argument => String,:callback_type => :display) assert spec.match?(:plugin_name => "MyPlugin",:argument => Float,:callback_type => :display) assert !spec.match?(:plugin_name => "MyPlugin2",:argument => String,:callback_type => :display) assert !spec.match?(:plugin_name => "MyPlugin",:argument => Array,:callback_type => :display) assert !spec.match?(:plugin_name => "MyPlugin",:argument => Float,:callback_type => :display1) assert spec.match?(:plugin_name => "MyPlugin",:argument => Float,:callback_type => :display,:default => true) assert spec.match?(:argument => Float,:callback_type => :display,:default => true) assert !spec.match?(:plugin_name => "MyPlugin",:argument => Float,:callback_type => :display,:default => false) assert spec.match?(:plugin_name => "MyPlugin",:argument => String,:callback_type => :display,:default => false) assert !spec.match?(:plugin_name => "MyPlugin",:argument => String,:callback_type => :display,:default => true) #test additional flags spec.flags :depricated => true assert spec.match?(:plugin_name => "MyPlugin",:flags =>{:depricated => true}) assert !spec.match?(:plugin_name => "MyPlugin",:flags =>{:depricated => false}) assert !spec.match?(:plugin_name => "MyPlugin",:flags =>{:depricated1 => true}) spec.flags :depricated1 => true assert spec.match?(:plugin_name => "MyPlugin",:flags =>{:depricated1 => true}) assert !spec.match?(:plugin_name => "MyPlugin",:flags =>{:depricated1 => true,:depricated => true}) spec.flags :depricated => true, :depricated1 => true assert spec.match?(:plugin_name => "MyPlugin",:flags =>{:depricated1 => true,:depricated => true}) end
test_plugin_pretty_print()
click to toggle source
# File test/test_uiloader.rb, line 354 def test_plugin_pretty_print spec = Vizkit::PluginSpec.new("MyPlugin") spec.cplusplus_name("CWidget") spec.callback_spec("String",:display,false,:test) spec.doc("This is a test doc") spec.callback_spec("Float",:display,true) do |sample,options| 123 end mod = Module.new do def test_method end end spec.extension(mod) pp2 = PrettyPrint.new spec.flags :test => 123 spec.pretty_print(pp2) end
test_qt()
click to toggle source
# File test/test_uiloader.rb, line 18 def test_qt assert defined? Qt assert defined? Qt::Application end
test_to_typelib_name()
click to toggle source
# File test/test_uiloader.rb, line 27 def test_to_typelib_name assert_equal("/base/samples/frame/Frame",Vizkit::PluginHelper.to_typelib_name("Types::Base::Samples::Frame::Frame")) assert_equal("/base/Angle",Vizkit::PluginHelper.to_typelib_name("Types::Base::Angle")) end