Feat/controller dependencies #2326
83 passed, 21 failed and 7 skipped
✅ 11470584307-tests-test_controllers/test_controllers.xml
1 tests were completed in 974s with 1 passed, 0 failed and 0 skipped.
Test suite | Passed | Failed | Skipped | Time |
---|---|---|---|---|
pytest | 1✅ | 974s |
✅ pytest
tests.test_controllers
✅ test_arm_control
✅ 11470584307-tests-test_data_collection/test_data_collection.xml
1 tests were completed in 1754s with 1 passed, 0 failed and 0 skipped.
Test suite | Passed | Failed | Skipped | Time |
---|---|---|---|---|
pytest | 1✅ | 1754s |
✅ pytest
tests.test_data_collection
✅ test_data_collect_and_playback
✅ 11470584307-tests-test_dump_load_states/test_dump_load_states.xml
4 tests were completed in 1603s with 4 passed, 0 failed and 0 skipped.
Test suite | Passed | Failed | Skipped | Time |
---|---|---|---|---|
pytest | 4✅ | 1603s |
✅ pytest
tests.test_dump_load_states
✅ test_dump_load
✅ test_dump_load_serialized
✅ test_save_restore_partial
✅ test_save_restore_full
✅ 11470584307-tests-test_envs/test_envs.xml
5 tests were completed in 1847s with 5 passed, 0 failed and 0 skipped.
Test suite | Passed | Failed | Skipped | Time |
---|---|---|---|---|
pytest | 5✅ | 1847s |
✅ pytest
tests.test_envs
✅ test_dummy_task
✅ test_point_reaching_task
✅ test_point_navigation_task
✅ test_behavior_task
✅ test_rs_int_full_load
❌ 11470584307-tests-test_multiple_envs/test_multiple_envs.xml
10 tests were completed in 622s with 7 passed, 1 failed and 2 skipped.
Test suite | Passed | Failed | Skipped | Time |
---|---|---|---|---|
pytest | 7✅ | 1❌ | 2⚪ | 622s |
❌ pytest
tests.test_multiple_envs
❌ test_multi_scene_dump_load_states
def test_multi_scene_dump_load_states():
✅ test_multi_scene_get_local_position
✅ test_multi_scene_set_local_position
✅ test_multi_scene_scene_prim
✅ test_multi_scene_particle_source
✅ test_multi_scene_position_orientation_relative_to_scene
✅ test_tiago_getter
✅ test_tiago_setter
⚪ test_behavior_getter
⚪ test_behavior_setter
✅ 11470584307-tests-test_object_removal/test_object_removal.xml
2 tests were completed in 1438s with 2 passed, 0 failed and 0 skipped.
Test suite | Passed | Failed | Skipped | Time |
---|---|---|---|---|
pytest | 2✅ | 1438s |
✅ pytest
tests.test_object_removal
✅ test_removal_and_readdition
✅ test_readdition
✅ 11470584307-tests-test_object_states/test_object_states.xml
33 tests were completed in 1972s with 33 passed, 0 failed and 0 skipped.
Test suite | Passed | Failed | Skipped | Time |
---|---|---|---|---|
pytest | 33✅ | 1972s |
✅ pytest
tests.test_object_states
✅ test_on_top
✅ test_inside
✅ test_under
✅ test_touching
✅ test_contact_bodies
✅ test_next_to
✅ test_overlaid
✅ test_pose
✅ test_joint
✅ test_aabb
✅ test_adjacency
✅ test_temperature
✅ test_max_temperature
✅ test_heat_source_or_sink
✅ test_cooked
✅ test_burnt
✅ test_frozen
✅ test_heated
✅ test_on_fire
✅ test_toggled_on
✅ test_attached_to
✅ test_particle_source
✅ test_particle_sink
✅ test_particle_applier
✅ test_particle_remover
✅ test_saturated
✅ test_open
✅ test_folded_unfolded
✅ test_draped
✅ test_filled
✅ test_contains
✅ test_covered
✅ test_clear_sim
❌ 11470584307-tests-test_primitives/test_primitives.xml
10 tests were completed in 449s with 0 passed, 6 failed and 4 skipped.
Test suite | Passed | Failed | Skipped | Time |
---|---|---|---|---|
pytest | 6❌ | 4⚪ | 449s |
❌ pytest
tests.test_primitives.TestPrimitives
❌ test_navigate[Tiago]
self = <test_primitives.TestPrimitives object at 0x7f54775a8040>
❌ test_navigate[Fetch]
self = <test_primitives.TestPrimitives object at 0x7f54775aaf50>
❌ test_grasp[Tiago]
self = <test_primitives.TestPrimitives object at 0x7f54775abb80>
❌ test_grasp[Fetch]
self = <test_primitives.TestPrimitives object at 0x7f54775ab5e0>
❌ test_place[Tiago]
self = <test_primitives.TestPrimitives object at 0x7f54775aadd0>
❌ test_place[Fetch]
self = <test_primitives.TestPrimitives object at 0x7f54775aa800>
⚪ test_open_prismatic[Tiago]
⚪ test_open_prismatic[Fetch]
⚪ test_open_revolute[Tiago]
⚪ test_open_revolute[Fetch]
❌ 11470584307-tests-test_robot_states_flatcache/test_robot_states_flatcache.xml
3 tests were completed in 553s with 0 passed, 3 failed and 0 skipped.
Test suite | Passed | Failed | Skipped | Time |
---|---|---|---|---|
pytest | 3❌ | 553s |
❌ pytest
tests.test_robot_states_flatcache
❌ test_camera_pose_flatcache_on
def test_camera_pose_flatcache_on():
❌ test_robot_load_drive
def test_robot_load_drive():
❌ test_grasping_mode
def test_grasping_mode():
❌ 11470584307-tests-test_robot_states_no_flatcache/test_robot_states_no_flatcache.xml
3 tests were completed in 433s with 0 passed, 3 failed and 0 skipped.
Test suite | Passed | Failed | Skipped | Time |
---|---|---|---|---|
pytest | 3❌ | 433s |
❌ pytest
tests.test_robot_states_no_flatcache
❌ test_camera_pose_flatcache_off
def test_camera_pose_flatcache_off():
❌ test_camera_semantic_segmentation
def test_camera_semantic_segmentation():
❌ test_object_in_FOV_of_robot
def test_object_in_FOV_of_robot():
✅ 11470584307-tests-test_robot_teleoperation/test_robot_teleoperation.xml
1 tests were completed in 29ms with 0 passed, 0 failed and 1 skipped.
Test suite | Passed | Failed | Skipped | Time |
---|---|---|---|---|
pytest | 1⚪ | 29ms |
✅ pytest
tests.test_robot_teleoperation
⚪ test_teleop
✅ 11470584307-tests-test_scene_graph/test_scene_graph.xml
1 tests were completed in 563s with 1 passed, 0 failed and 0 skipped.
Test suite | Passed | Failed | Skipped | Time |
---|---|---|---|---|
pytest | 1✅ | 563s |
✅ pytest
tests.test_scene_graph
✅ test_scene_graph
✅ 11470584307-tests-test_sensors/test_sensors.xml
2 tests were completed in 1462s with 2 passed, 0 failed and 0 skipped.
Test suite | Passed | Failed | Skipped | Time |
---|---|---|---|---|
pytest | 2✅ | 1462s |
✅ pytest
tests.test_sensors
✅ test_segmentation_modalities
✅ test_bbox_modalities
✅ 11470584307-tests-test_systems/test_systems.xml
1 tests were completed in 1670s with 1 passed, 0 failed and 0 skipped.
Test suite | Passed | Failed | Skipped | Time |
---|---|---|---|---|
pytest | 1✅ | 1670s |
✅ pytest
tests.test_systems
✅ test_system_clear
❌ 11470584307-tests-test_transform_utils/test_transform_utils.xml
34 tests were completed in 81s with 26 passed, 8 failed and 0 skipped.
Test suite | Passed | Failed | Skipped | Time |
---|---|---|---|---|
pytest | 26✅ | 8❌ | 81s |
❌ pytest
tests.test_transform_utils.TestQuaternionOperations
✅ test_quat2mat_special_cases
✅ test_quat_multiply
✅ test_quat_conjugate
✅ test_quat_inverse
✅ test_quat_distance
tests.test_transform_utils.TestVectorOperations
❌ test_normalize
self = <test_transform_utils.TestVectorOperations object at 0x7f67d317d4b0>
✅ test_dot_product
✅ test_l2_distance
tests.test_transform_utils.TestMatrixOperations
✅ test_rotation_matrix_properties
❌ test_rotation_matrix
self = <test_transform_utils.TestMatrixOperations object at 0x7f67d2d6baf0>
❌ test_transformation_matrix
self = <test_transform_utils.TestMatrixOperations object at 0x7f67d2d699c0>
❌ test_transformation_matrix_no_point
self = <test_transform_utils.TestMatrixOperations object at 0x7f67d317cdc0>
✅ test_matrix_inverse
tests.test_transform_utils.TestCoordinateTransformations
✅ test_cartesian_to_polar
tests.test_transform_utils.TestPoseTransformations
✅ test_pose2mat_and_mat2pose
✅ test_pose_inv
tests.test_transform_utils.TestAxisAngleConversions
❌ test_axisangle2quat_and_quat2axisangle
self = <test_transform_utils.TestAxisAngleConversions object at 0x7f67d2d699f0>
❌ test_vecs2axisangle
self = <test_transform_utils.TestAxisAngleConversions object at 0x7f67d2d6a290>
❌ test_vecs2quat
self = <test_transform_utils.TestAxisAngleConversions object at 0x7f67d2d6b820>
tests.test_transform_utils.TestEulerAngleConversions
✅ test_euler2quat_and_quat2euler
✅ test_euler2mat_and_mat2euler
tests.test_transform_utils.TestQuaternionApplications
✅ test_quat_apply
❌ test_quat_slerp
self = <test_transform_utils.TestQuaternionApplications object at 0x7f67d31f2050>
tests.test_transform_utils.TestTransformPoints
✅ test_transform_points_2d
✅ test_transform_points_3d
tests.test_transform_utils.TestMiscellaneousFunctions
✅ test_convert_quat
✅ test_random_quaternion
✅ test_random_axis_angle
✅ test_align_vector_sets
✅ test_copysign
✅ test_anorm
✅ test_check_quat_right_angle
✅ test_z_angle_from_quat
✅ test_integer_spiral_coordinates
Annotations
Check failure on line 0 in 11470584307-tests-test_multiple_envs/test_multiple_envs.xml
github-actions / Test Results
pytest ► tests.test_multiple_envs ► test_multi_scene_dump_load_states
Failed test found in:
11470584307-tests-test_multiple_envs/test_multiple_envs.xml
Error:
def test_multi_scene_dump_load_states():
Raw output
def test_multi_scene_dump_load_states():
vec_env = setup_multi_environment(3)
robot_0 = vec_env.envs[0].scene.robots[0]
robot_1 = vec_env.envs[1].scene.robots[0]
robot_2 = vec_env.envs[2].scene.robots[0]
robot_0_pos = robot_0.get_position_orientation()[0]
robot_1_pos = robot_1.get_position_orientation()[0]
robot_2_pos = robot_2.get_position_orientation()[0]
dist_0_1 = robot_1_pos - robot_0_pos
dist_1_2 = robot_2_pos - robot_1_pos
> assert th.allclose(dist_0_1, dist_1_2, atol=1e-3)
E assert False
E + where False = <built-in method allclose of type object at 0x7ff64f485840>(tensor([ 1.6278e+01, -1.1789e-05, -3.1210e-04]), tensor([ 1.6280e+01, -7.4792e-06, -4.9338e-05]), atol=0.001)
E + where <built-in method allclose of type object at 0x7ff64f485840> = th.allclose
tests/test_multiple_envs.py:58: AssertionError
Check failure on line 0 in 11470584307-tests-test_primitives/test_primitives.xml
github-actions / Test Results
pytest ► tests.test_primitives.TestPrimitives ► test_navigate[Tiago]
Failed test found in:
11470584307-tests-test_primitives/test_primitives.xml
Error:
self = <test_primitives.TestPrimitives object at 0x7f54775a8040>
Raw output
self = <test_primitives.TestPrimitives object at 0x7f54775a8040>
robot = 'Tiago'
def test_navigate(self, robot):
categories = ["floors", "ceilings", "walls"]
> env = setup_environment(categories, robot=robot)
tests/test_primitives.py:92:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests/test_primitives.py:63: in setup_environment
env = og.Environment(configs=cfg)
omnigibson/utils/python_utils.py:93: in wrapper
func(*values.args, **values.kwargs)
omnigibson/envs/env_base.py:132: in __init__
og.sim.play()
omnigibson/simulator.py:1035: in play
self._non_physics_step()
omnigibson/simulator.py:933: in _non_physics_step
obj.initialize()
omnigibson/prims/prim_base.py:79: in initialize
self._initialize()
omnigibson/robots/holonomic_base_robot.py:151: in _initialize
self.reload_controllers(self._controller_config)
omnigibson/objects/controllable_object.py:344: in reload_controllers
self._load_controllers()
omnigibson/objects/controllable_object.py:227: in _load_controllers
self._controller_config = self._generate_controller_config(custom_config=self._controller_config)
omnigibson/objects/controllable_object.py:326: in _generate_controller_config
controller_config[group] = merge_nested_dicts(
omnigibson/utils/python_utils.py:183: in merge_nested_dicts
equal = safe_equal(base_dict[k], v)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
a = tensor([ 8, 11, 14, 16, 18, 20, 22])
b = tensor([ 6, 8, 11, 14, 16, 18, 20, 22])
def safe_equal(a, b):
if isinstance(a, th.Tensor) and isinstance(b, th.Tensor):
> return (a == b).all().item()
E RuntimeError: The size of tensor a (7) must match the size of tensor b (8) at non-singleton dimension 0
omnigibson/utils/python_utils.py:154: RuntimeError
Check failure on line 0 in 11470584307-tests-test_primitives/test_primitives.xml
github-actions / Test Results
pytest ► tests.test_primitives.TestPrimitives ► test_navigate[Fetch]
Failed test found in:
11470584307-tests-test_primitives/test_primitives.xml
Error:
self = <test_primitives.TestPrimitives object at 0x7f54775aaf50>
Raw output
self = <test_primitives.TestPrimitives object at 0x7f54775aaf50>
robot = 'Fetch'
def test_navigate(self, robot):
categories = ["floors", "ceilings", "walls"]
> env = setup_environment(categories, robot=robot)
tests/test_primitives.py:92:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests/test_primitives.py:63: in setup_environment
env = og.Environment(configs=cfg)
omnigibson/utils/python_utils.py:93: in wrapper
func(*values.args, **values.kwargs)
omnigibson/envs/env_base.py:128: in __init__
self.load()
omnigibson/envs/env_base.py:429: in load
self._load_scene()
omnigibson/envs/env_base.py:257: in _load_scene
og.sim.import_scene(self._scene)
omnigibson/simulator.py:712: in import_scene
self.play()
omnigibson/simulator.py:1035: in play
self._non_physics_step()
omnigibson/simulator.py:933: in _non_physics_step
obj.initialize()
omnigibson/prims/prim_base.py:79: in initialize
self._initialize()
omnigibson/robots/holonomic_base_robot.py:137: in _initialize
super()._initialize()
omnigibson/robots/manipulation_robot.py:210: in _initialize
super()._initialize()
omnigibson/robots/robot_base.py:171: in _initialize
super()._initialize()
omnigibson/objects/stateful_object.py:152: in _initialize
super()._initialize()
omnigibson/objects/controllable_object.py:147: in _initialize
super()._initialize()
omnigibson/objects/object_base.py:224: in _initialize
super()._initialize()
omnigibson/prims/entity_prim.py:91: in _initialize
link.initialize()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <omnigibson.prims.rigid_prim.RigidPrim object at 0x7f54779b7a90>
def initialize(self):
"""
Initializes state of this object and sets up any references necessary post-loading. Subclasses should
implement / extend the _initialize() method.
"""
> assert (
not self._initialized
), f"Prim {self.name} at prim_path {self.prim_path} can only be initialized once! (It is already initialized)"
E AssertionError: Prim robot_lwahzr:base_footprint at prim_path /World/scene_0/controllable__tiago__robot_lwahzr/base_footprint can only be initialized once! (It is already initialized)
omnigibson/prims/prim_base.py:76: AssertionError
Check failure on line 0 in 11470584307-tests-test_primitives/test_primitives.xml
github-actions / Test Results
pytest ► tests.test_primitives.TestPrimitives ► test_grasp[Tiago]
Failed test found in:
11470584307-tests-test_primitives/test_primitives.xml
Error:
self = <test_primitives.TestPrimitives object at 0x7f54775abb80>
Raw output
self = <test_primitives.TestPrimitives object at 0x7f54775abb80>
robot = 'Tiago'
def test_grasp(self, robot):
categories = ["floors", "ceilings", "walls", "coffee_table"]
> env = setup_environment(categories, robot=robot)
tests/test_primitives.py:109:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests/test_primitives.py:63: in setup_environment
env = og.Environment(configs=cfg)
omnigibson/utils/python_utils.py:93: in wrapper
func(*values.args, **values.kwargs)
omnigibson/envs/env_base.py:128: in __init__
self.load()
omnigibson/envs/env_base.py:429: in load
self._load_scene()
omnigibson/envs/env_base.py:257: in _load_scene
og.sim.import_scene(self._scene)
omnigibson/simulator.py:712: in import_scene
self.play()
omnigibson/simulator.py:1035: in play
self._non_physics_step()
omnigibson/simulator.py:933: in _non_physics_step
obj.initialize()
omnigibson/prims/prim_base.py:79: in initialize
self._initialize()
omnigibson/robots/holonomic_base_robot.py:137: in _initialize
super()._initialize()
omnigibson/robots/manipulation_robot.py:210: in _initialize
super()._initialize()
omnigibson/robots/robot_base.py:171: in _initialize
super()._initialize()
omnigibson/objects/stateful_object.py:152: in _initialize
super()._initialize()
omnigibson/objects/controllable_object.py:147: in _initialize
super()._initialize()
omnigibson/objects/object_base.py:224: in _initialize
super()._initialize()
omnigibson/prims/entity_prim.py:91: in _initialize
link.initialize()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <omnigibson.prims.rigid_prim.RigidPrim object at 0x7f54779b7a90>
def initialize(self):
"""
Initializes state of this object and sets up any references necessary post-loading. Subclasses should
implement / extend the _initialize() method.
"""
> assert (
not self._initialized
), f"Prim {self.name} at prim_path {self.prim_path} can only be initialized once! (It is already initialized)"
E AssertionError: Prim robot_lwahzr:base_footprint at prim_path /World/scene_0/controllable__tiago__robot_lwahzr/base_footprint can only be initialized once! (It is already initialized)
omnigibson/prims/prim_base.py:76: AssertionError
Check failure on line 0 in 11470584307-tests-test_primitives/test_primitives.xml
github-actions / Test Results
pytest ► tests.test_primitives.TestPrimitives ► test_grasp[Fetch]
Failed test found in:
11470584307-tests-test_primitives/test_primitives.xml
Error:
self = <test_primitives.TestPrimitives object at 0x7f54775ab5e0>
Raw output
self = <test_primitives.TestPrimitives object at 0x7f54775ab5e0>
robot = 'Fetch'
def test_grasp(self, robot):
categories = ["floors", "ceilings", "walls", "coffee_table"]
> env = setup_environment(categories, robot=robot)
tests/test_primitives.py:109:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests/test_primitives.py:63: in setup_environment
env = og.Environment(configs=cfg)
omnigibson/utils/python_utils.py:93: in wrapper
func(*values.args, **values.kwargs)
omnigibson/envs/env_base.py:128: in __init__
self.load()
omnigibson/envs/env_base.py:429: in load
self._load_scene()
omnigibson/envs/env_base.py:257: in _load_scene
og.sim.import_scene(self._scene)
omnigibson/simulator.py:712: in import_scene
self.play()
omnigibson/simulator.py:1035: in play
self._non_physics_step()
omnigibson/simulator.py:933: in _non_physics_step
obj.initialize()
omnigibson/prims/prim_base.py:79: in initialize
self._initialize()
omnigibson/robots/holonomic_base_robot.py:137: in _initialize
super()._initialize()
omnigibson/robots/manipulation_robot.py:210: in _initialize
super()._initialize()
omnigibson/robots/robot_base.py:171: in _initialize
super()._initialize()
omnigibson/objects/stateful_object.py:152: in _initialize
super()._initialize()
omnigibson/objects/controllable_object.py:147: in _initialize
super()._initialize()
omnigibson/objects/object_base.py:224: in _initialize
super()._initialize()
omnigibson/prims/entity_prim.py:91: in _initialize
link.initialize()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <omnigibson.prims.rigid_prim.RigidPrim object at 0x7f54779b7a90>
def initialize(self):
"""
Initializes state of this object and sets up any references necessary post-loading. Subclasses should
implement / extend the _initialize() method.
"""
> assert (
not self._initialized
), f"Prim {self.name} at prim_path {self.prim_path} can only be initialized once! (It is already initialized)"
E AssertionError: Prim robot_lwahzr:base_footprint at prim_path /World/scene_0/controllable__tiago__robot_lwahzr/base_footprint can only be initialized once! (It is already initialized)
omnigibson/prims/prim_base.py:76: AssertionError
Check failure on line 0 in 11470584307-tests-test_primitives/test_primitives.xml
github-actions / Test Results
pytest ► tests.test_primitives.TestPrimitives ► test_place[Tiago]
Failed test found in:
11470584307-tests-test_primitives/test_primitives.xml
Error:
self = <test_primitives.TestPrimitives object at 0x7f54775aadd0>
Raw output
self = <test_primitives.TestPrimitives object at 0x7f54775aadd0>
robot = 'Tiago'
def test_place(self, robot):
categories = ["floors", "ceilings", "walls", "coffee_table"]
> env = setup_environment(categories, robot=robot)
tests/test_primitives.py:126:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests/test_primitives.py:63: in setup_environment
env = og.Environment(configs=cfg)
omnigibson/utils/python_utils.py:93: in wrapper
func(*values.args, **values.kwargs)
omnigibson/envs/env_base.py:128: in __init__
self.load()
omnigibson/envs/env_base.py:429: in load
self._load_scene()
omnigibson/envs/env_base.py:257: in _load_scene
og.sim.import_scene(self._scene)
omnigibson/simulator.py:712: in import_scene
self.play()
omnigibson/simulator.py:1035: in play
self._non_physics_step()
omnigibson/simulator.py:933: in _non_physics_step
obj.initialize()
omnigibson/prims/prim_base.py:79: in initialize
self._initialize()
omnigibson/robots/holonomic_base_robot.py:137: in _initialize
super()._initialize()
omnigibson/robots/manipulation_robot.py:210: in _initialize
super()._initialize()
omnigibson/robots/robot_base.py:171: in _initialize
super()._initialize()
omnigibson/objects/stateful_object.py:152: in _initialize
super()._initialize()
omnigibson/objects/controllable_object.py:147: in _initialize
super()._initialize()
omnigibson/objects/object_base.py:224: in _initialize
super()._initialize()
omnigibson/prims/entity_prim.py:91: in _initialize
link.initialize()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <omnigibson.prims.rigid_prim.RigidPrim object at 0x7f54779b7a90>
def initialize(self):
"""
Initializes state of this object and sets up any references necessary post-loading. Subclasses should
implement / extend the _initialize() method.
"""
> assert (
not self._initialized
), f"Prim {self.name} at prim_path {self.prim_path} can only be initialized once! (It is already initialized)"
E AssertionError: Prim robot_lwahzr:base_footprint at prim_path /World/scene_0/controllable__tiago__robot_lwahzr/base_footprint can only be initialized once! (It is already initialized)
omnigibson/prims/prim_base.py:76: AssertionError
Check failure on line 0 in 11470584307-tests-test_primitives/test_primitives.xml
github-actions / Test Results
pytest ► tests.test_primitives.TestPrimitives ► test_place[Fetch]
Failed test found in:
11470584307-tests-test_primitives/test_primitives.xml
Error:
self = <test_primitives.TestPrimitives object at 0x7f54775aa800>
Raw output
self = <test_primitives.TestPrimitives object at 0x7f54775aa800>
robot = 'Fetch'
def test_place(self, robot):
categories = ["floors", "ceilings", "walls", "coffee_table"]
> env = setup_environment(categories, robot=robot)
tests/test_primitives.py:126:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests/test_primitives.py:63: in setup_environment
env = og.Environment(configs=cfg)
omnigibson/utils/python_utils.py:93: in wrapper
func(*values.args, **values.kwargs)
omnigibson/envs/env_base.py:128: in __init__
self.load()
omnigibson/envs/env_base.py:429: in load
self._load_scene()
omnigibson/envs/env_base.py:257: in _load_scene
og.sim.import_scene(self._scene)
omnigibson/simulator.py:712: in import_scene
self.play()
omnigibson/simulator.py:1035: in play
self._non_physics_step()
omnigibson/simulator.py:933: in _non_physics_step
obj.initialize()
omnigibson/prims/prim_base.py:79: in initialize
self._initialize()
omnigibson/robots/holonomic_base_robot.py:137: in _initialize
super()._initialize()
omnigibson/robots/manipulation_robot.py:210: in _initialize
super()._initialize()
omnigibson/robots/robot_base.py:171: in _initialize
super()._initialize()
omnigibson/objects/stateful_object.py:152: in _initialize
super()._initialize()
omnigibson/objects/controllable_object.py:147: in _initialize
super()._initialize()
omnigibson/objects/object_base.py:224: in _initialize
super()._initialize()
omnigibson/prims/entity_prim.py:91: in _initialize
link.initialize()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <omnigibson.prims.rigid_prim.RigidPrim object at 0x7f54779b7a90>
def initialize(self):
"""
Initializes state of this object and sets up any references necessary post-loading. Subclasses should
implement / extend the _initialize() method.
"""
> assert (
not self._initialized
), f"Prim {self.name} at prim_path {self.prim_path} can only be initialized once! (It is already initialized)"
E AssertionError: Prim robot_lwahzr:base_footprint at prim_path /World/scene_0/controllable__tiago__robot_lwahzr/base_footprint can only be initialized once! (It is already initialized)
omnigibson/prims/prim_base.py:76: AssertionError
github-actions / Test Results
pytest ► tests.test_robot_states_flatcache ► test_camera_pose_flatcache_on
Failed test found in:
11470584307-tests-test_robot_states_flatcache/test_robot_states_flatcache.xml
Error:
def test_camera_pose_flatcache_on():
Raw output
def test_camera_pose_flatcache_on():
> camera_pose_test(True)
tests/test_robot_states_flatcache.py:124:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
flatcache = True
def camera_pose_test(flatcache):
env = setup_environment(flatcache)
robot = env.robots[0]
env.reset()
og.sim.step()
sensors = [s for s in robot.sensors.values() if isinstance(s, VisionSensor)]
assert len(sensors) > 0
vision_sensor = sensors[0]
# Get vision sensor world pose via directly calling get_position_orientation
robot_world_pos, robot_world_ori = robot.get_position_orientation()
sensor_world_pos, sensor_world_ori = vision_sensor.get_position_orientation()
robot_to_sensor_mat = pose2mat(
relative_pose_transform(sensor_world_pos, sensor_world_ori, robot_world_pos, robot_world_ori)
)
sensor_world_pos_gt = th.tensor([150.1620, 149.9999, 101.2193])
sensor_world_ori_gt = th.tensor([-0.2952, 0.2959, 0.6427, -0.6421])
> assert th.allclose(sensor_world_pos, sensor_world_pos_gt, atol=1e-3)
E assert False
E + where False = <built-in method allclose of type object at 0x7f1a58685840>(tensor([150.1629, 149.9990, 101.3772]), tensor([150.1620, 149.9999, 101.2193]), atol=0.001)
E + where <built-in method allclose of type object at 0x7f1a58685840> = th.allclose
tests/test_robot_states_flatcache.py:67: AssertionError
github-actions / Test Results
pytest ► tests.test_robot_states_flatcache ► test_robot_load_drive
Failed test found in:
11470584307-tests-test_robot_states_flatcache/test_robot_states_flatcache.xml
Error:
def test_robot_load_drive():
Raw output
def test_robot_load_drive():
if og.sim is None:
# Set global flags
gm.ENABLE_OBJECT_STATES = True
gm.USE_GPU_DYNAMICS = True
gm.ENABLE_TRANSITION_RULES = False
else:
# Make sure sim is stopped
og.sim.stop()
config = {
"scene": {
"type": "Scene",
},
}
env = og.Environment(configs=config)
og.sim.stop()
# Iterate over all robots and test their motion
for robot_name, robot_cls in REGISTERED_ROBOTS.items():
if robot_name in ["FrankaMounted", "Stretch"]:
# TODO: skipping FrankaMounted and Stretch for now because CI doesn't have the required assets
continue
if robot_name in ["Husky", "BehaviorRobot"]:
# Husky base motion is a little messed up because of the 4-wheel drive; skipping for now
# BehaviorRobot does not work with the primitive actions at the moment
continue
robot = robot_cls(
name=robot_name,
obs_modalities=[],
)
> env.scene.add_object(robot)
tests/test_robot_states_flatcache.py:162:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
omnigibson/scenes/scene_base.py:630: in add_object
prim = obj.load(self)
omnigibson/objects/controllable_object.py:176: in load
prim = super().load(scene)
omnigibson/objects/object_base.py:123: in load
prim = super().load(scene)
omnigibson/prims/prim_base.py:116: in load
self._post_load()
omnigibson/robots/robot_base.py:164: in _post_load
super()._post_load()
omnigibson/objects/stateful_object.py:144: in _post_load
super()._post_load()
omnigibson/objects/controllable_object.py:194: in _post_load
super()._post_load()
omnigibson/objects/object_base.py:161: in _post_load
super()._post_load()
omnigibson/prims/entity_prim.py:127: in _post_load
self.update_links()
omnigibson/prims/entity_prim.py:259: in update_links
self._links[link_name].load(self.scene)
omnigibson/prims/prim_base.py:116: in load
self._post_load()
omnigibson/prims/rigid_prim.py:93: in _post_load
self._rigid_prim_view_direct = RigidPrimView(self.prim_path)
/isaac-sim/exts/omni.isaac.core/omni/isaac/core/prims/rigid_prim_view.py:145: in __init__
XFormPrimView.__init__(
/isaac-sim/exts/omni.isaac.core/omni/isaac/core/prims/xform_prim_view.py:175: in __init__
self._set_xform_properties()
/isaac-sim/exts/omni.isaac.core/omni/isaac/core/prims/xform_prim_view.py:321: in _set_xform_properties
self.set_world_poses(positions=current_positions, orientations=current_orientations)
/isaac-sim/exts/omni.isaac.core/omni/isaac/core/prims/rigid_prim_view.py:367: in set_world_poses
XFormPrimView.set_world_poses(
/isaac-sim/exts/omni.isaac.core/omni/isaac/core/prims/xform_prim_view.py:939: in set_world_poses
calculated_translations, calculated_orientations = self._backend_utils.get_local_from_world(
/isaac-sim/exts/omni.isaac.core/omni/isaac/core/utils/torch/transformations.py:44: in get_local_from_world
my_world_transforms = tf_matrices_from_poses(translations=positions, orientations=orientations, device=device)
/isaac-sim/exts/omni.isaac.core/omni/isaac/core/utils/torch/transformations.py:34: in tf_matrices_from_poses
r = Rotation.from_quat(orientations[:, [1, 2, 3, 0]].detach().cpu().numpy())
_rotation.pyx:637: in scipy.spatial.transform._rotation.Rotation.from_quat
???
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> ???
E ValueError: Found zero norm quaternions in `quat`.
_rotation.pyx:532: ValueError
github-actions / Test Results
pytest ► tests.test_robot_states_flatcache ► test_grasping_mode
Failed test found in:
11470584307-tests-test_robot_states_flatcache/test_robot_states_flatcache.xml
Error:
def test_grasping_mode():
Raw output
def test_grasping_mode():
if og.sim is None:
# Set global flags
gm.ENABLE_FLATCACHE = True
else:
# Make sure sim is stopped
og.sim.stop()
scene_cfg = dict(type="Scene")
objects_cfg = []
objects_cfg.append(
dict(
type="DatasetObject",
name=f"table",
category="breakfast_table",
model="lcsizg",
bounding_box=[0.5, 0.5, 0.8],
fixed_base=True,
position=[0.7, -0.1, 0.6],
)
)
objects_cfg.append(
dict(
type="PrimitiveObject",
name=f"box",
primitive_type="Cube",
rgba=[1.0, 0, 0, 1.0],
size=0.05,
position=[0.53, 0.0, 0.87],
)
)
cfg = dict(scene=scene_cfg, objects=objects_cfg)
> env = og.Environment(configs=cfg)
tests/test_robot_states_flatcache.py:250:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
omnigibson/utils/python_utils.py:93: in wrapper
func(*values.args, **values.kwargs)
omnigibson/envs/env_base.py:128: in __init__
self.load()
omnigibson/envs/env_base.py:431: in load
self._load_objects()
omnigibson/envs/env_base.py:315: in _load_objects
self.scene.add_object(obj)
omnigibson/scenes/scene_base.py:630: in add_object
prim = obj.load(self)
omnigibson/objects/object_base.py:123: in load
prim = super().load(scene)
omnigibson/prims/prim_base.py:116: in load
self._post_load()
omnigibson/objects/dataset_object.py:240: in _post_load
super()._post_load()
omnigibson/objects/stateful_object.py:144: in _post_load
super()._post_load()
omnigibson/objects/object_base.py:161: in _post_load
super()._post_load()
omnigibson/prims/entity_prim.py:127: in _post_load
self.update_links()
omnigibson/prims/entity_prim.py:259: in update_links
self._links[link_name].load(self.scene)
omnigibson/prims/prim_base.py:116: in load
self._post_load()
omnigibson/prims/rigid_prim.py:93: in _post_load
self._rigid_prim_view_direct = RigidPrimView(self.prim_path)
/isaac-sim/exts/omni.isaac.core/omni/isaac/core/prims/rigid_prim_view.py:145: in __init__
XFormPrimView.__init__(
/isaac-sim/exts/omni.isaac.core/omni/isaac/core/prims/xform_prim_view.py:175: in __init__
self._set_xform_properties()
/isaac-sim/exts/omni.isaac.core/omni/isaac/core/prims/xform_prim_view.py:321: in _set_xform_properties
self.set_world_poses(positions=current_positions, orientations=current_orientations)
/isaac-sim/exts/omni.isaac.core/omni/isaac/core/prims/rigid_prim_view.py:367: in set_world_poses
XFormPrimView.set_world_poses(
/isaac-sim/exts/omni.isaac.core/omni/isaac/core/prims/xform_prim_view.py:939: in set_world_poses
calculated_translations, calculated_orientations = self._backend_utils.get_local_from_world(
/isaac-sim/exts/omni.isaac.core/omni/isaac/core/utils/torch/transformations.py:44: in get_local_from_world
my_world_transforms = tf_matrices_from_poses(translations=positions, orientations=orientations, device=device)
/isaac-sim/exts/omni.isaac.core/omni/isaac/core/utils/torch/transformations.py:34: in tf_matrices_from_poses
r = Rotation.from_quat(orientations[:, [1, 2, 3, 0]].detach().cpu().numpy())
_rotation.pyx:637: in scipy.spatial.transform._rotation.Rotation.from_quat
???
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> ???
E ValueError: Found zero norm quaternions in `quat`.
_rotation.pyx:532: ValueError
github-actions / Test Results
pytest ► tests.test_robot_states_no_flatcache ► test_camera_pose_flatcache_off
Failed test found in:
11470584307-tests-test_robot_states_no_flatcache/test_robot_states_no_flatcache.xml
Error:
def test_camera_pose_flatcache_off():
Raw output
def test_camera_pose_flatcache_off():
> camera_pose_test(False)
tests/test_robot_states_no_flatcache.py:11:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
flatcache = False
def camera_pose_test(flatcache):
env = setup_environment(flatcache)
robot = env.robots[0]
env.reset()
og.sim.step()
sensors = [s for s in robot.sensors.values() if isinstance(s, VisionSensor)]
assert len(sensors) > 0
vision_sensor = sensors[0]
# Get vision sensor world pose via directly calling get_position_orientation
robot_world_pos, robot_world_ori = robot.get_position_orientation()
sensor_world_pos, sensor_world_ori = vision_sensor.get_position_orientation()
robot_to_sensor_mat = pose2mat(
relative_pose_transform(sensor_world_pos, sensor_world_ori, robot_world_pos, robot_world_ori)
)
sensor_world_pos_gt = th.tensor([150.1620, 149.9999, 101.2193])
sensor_world_ori_gt = th.tensor([-0.2952, 0.2959, 0.6427, -0.6421])
> assert th.allclose(sensor_world_pos, sensor_world_pos_gt, atol=1e-3)
E assert False
E + where False = <built-in method allclose of type object at 0x7f5a6f485840>(tensor([150.1629, 149.9990, 101.3772]), tensor([150.1620, 149.9999, 101.2193]), atol=0.001)
E + where <built-in method allclose of type object at 0x7f5a6f485840> = th.allclose
tests/test_robot_states_flatcache.py:67: AssertionError