Exemplo n.º 1
0
def test_inertial_parser_data(urdf_file):
    r_original = RobotModel.from_urdf_file(urdf_file)
    r = RobotModel.from_data(r_original.data)
    assert r.links[0].inertial.origin is not None
    assert r.links[0].inertial.origin.point == [0.0, 0.0, 0.5]
    assert r.links[0].inertial.mass.value == 1.0
    assert r.links[0].inertial.inertia.izz == 100.0
Exemplo n.º 2
0
def test_unknown_urdf_attributes_data():
    r_original = RobotModel.from_urdf_string(
        """<?xml version="1.0" encoding="UTF-8"?><robot name="panda" some_random_attr="1337"></robot>"""
    )
    r = RobotModel.from_data(r_original.data)
    assert r.name == 'panda'
    assert r.attr['some_random_attr'] == '1337'
Exemplo n.º 3
0
def test_link_parser_data(urdf_file):
    r_original = RobotModel.from_urdf_file(urdf_file)
    r = RobotModel.from_data(r_original.data)

    assert r.links[0].name == 'panda_link0'
    assert r.links[1].name == 'panda_link1'
    assert r.links[2].name == 'panda_link2'

    assert r.links[0].type == 'test_type'

    assert len(r.links) == 12
Exemplo n.º 4
0
def test_geometry_parser_data(urdf_file_with_shapes):
    r_original = RobotModel.from_urdf_file(urdf_file_with_shapes)
    r = RobotModel.from_data(r_original.data)

    assert r.links[0].visual[0].geometry.shape.filename == 'package://franka_description/meshes/visual/link0.dae'
    assert r.links[0].visual[0].geometry.shape.scale == [1.0, 1.0, 1.0]

    assert isinstance(r.links[0].collision[0].geometry.shape, (Sphere, SphereProxy))
    assert r.links[0].collision[0].geometry.shape.radius == 0.2

    assert isinstance(r.links[1].visual[0].geometry.shape, (Box, BoxProxy))
    assert r.links[1].visual[0].geometry.shape.size == [0.6, 0.1, 0.2]

    assert isinstance(r.links[1].collision[0].geometry.shape, (Cylinder, CylinderProxy))
    assert r.links[1].collision[0].geometry.shape.length == 0.6
    assert r.links[1].collision[0].geometry.shape.radius == 0.2
Exemplo n.º 5
0
def test_unknown_axis_attribute_data(urdf_with_unknown_attr):
    r_original = RobotModel.from_urdf_file(urdf_with_unknown_attr)
    r = RobotModel.from_data(r_original.data)
    assert r.joints[0].axis.attr['rpy'] == '0 0 0'
Exemplo n.º 6
0
def test_root_data(urdf_file):
    r_original = RobotModel.from_urdf_file(urdf_file)
    r = RobotModel.from_data(r_original.data)
    assert 'panda_link0' == r.root.name
Exemplo n.º 7
0
def test_parse_from_file_data(urdf_file):
    r_original = RobotModel.from_urdf_file(urdf_file)
    r = RobotModel.from_data(r_original.data)
    assert r is not None
    assert r.name == 'panda'
Exemplo n.º 8
0
def test_ur5_urdf_data(ur5_file):
    r_original = RobotModel.from_urdf_file(ur5_file)
    r = RobotModel.from_data(r_original.data)
    assert r.name == 'ur5'
    assert len(list(filter(lambda i: i.type == Joint.REVOLUTE, r.joints))) == 6