@@ -303,9 +303,11 @@ TEST_F(TrainEnvFixture, Sensor3DOF)
303
303
mujoco_ros_msgs::SensorNoiseModel noise_model;
304
304
noise_model.mean .emplace_back (0.0 );
305
305
noise_model.mean .emplace_back (1.0 );
306
+ noise_model.mean .emplace_back (0.0 );
306
307
noise_model.std .emplace_back (0.025 );
307
308
noise_model.std .emplace_back (0.0 );
308
- noise_model.set_flag = 3 ;
309
+ noise_model.std .emplace_back (0.0 );
310
+ noise_model.set_flag = 7 ;
309
311
noise_model.sensor_name = " vel_EE" ;
310
312
311
313
mujoco_ros_msgs::RegisterSensorNoiseModels srv;
@@ -416,9 +418,11 @@ TEST_F(TrainEnvFixture, Framepos)
416
418
mujoco_ros_msgs::SensorNoiseModel noise_model;
417
419
noise_model.mean .emplace_back (0.0 );
418
420
noise_model.mean .emplace_back (1.0 );
421
+ noise_model.mean .emplace_back (0.0 );
419
422
noise_model.std .emplace_back (0.025 );
420
423
noise_model.std .emplace_back (0.0 );
421
- noise_model.set_flag = 3 ;
424
+ noise_model.std .emplace_back (0.0 );
425
+ noise_model.set_flag = 7 ;
422
426
noise_model.sensor_name = " immovable_pos" ;
423
427
424
428
mujoco_ros_msgs::RegisterSensorNoiseModels srv;
@@ -608,9 +612,13 @@ TEST_F(TrainEnvFixture, quaternion)
608
612
{ msgPtr->quaternion .w , msgPtr->quaternion .x , msgPtr->quaternion .y , msgPtr->quaternion .z }, 0.0001 , true );
609
613
610
614
mujoco_ros_msgs::SensorNoiseModel noise_model;
615
+ noise_model.mean .emplace_back (0.0 );
616
+ noise_model.mean .emplace_back (0.0 );
611
617
noise_model.mean .emplace_back (1.0 );
618
+ noise_model.std .emplace_back (0.0 );
619
+ noise_model.std .emplace_back (0.0 );
612
620
noise_model.std .emplace_back (0.025 );
613
- noise_model.set_flag = 4 ;
621
+ noise_model.set_flag = 7 ;
614
622
noise_model.sensor_name = " immovable_quat" ;
615
623
616
624
mujoco_ros_msgs::RegisterSensorNoiseModels srv;
@@ -710,3 +718,66 @@ TEST_F(TrainEnvFixture, quaternion)
710
718
EXPECT_EQ (variances[4 ], 0 );
711
719
EXPECT_EQ (variances[5 ], 0 );
712
720
}
721
+
722
+ TEST_F (EvalEnvFixture, NoAdmEvalNoiseModelChange)
723
+ {
724
+ mujoco_ros_msgs::SensorNoiseModel noise_model;
725
+ noise_model.mean .emplace_back (0.0 );
726
+ noise_model.mean .emplace_back (1.0 );
727
+ noise_model.std .emplace_back (0.025 );
728
+ noise_model.std .emplace_back (0.0 );
729
+ noise_model.set_flag = 3 ;
730
+ noise_model.sensor_name = " vel_EE" ;
731
+
732
+ mujoco_ros_msgs::RegisterSensorNoiseModels srv;
733
+ srv.request .noise_models .emplace_back (noise_model);
734
+ srv.request .admin_hash = " some_wrong_hash" ;
735
+
736
+ ros::ServiceClient client =
737
+ nh->serviceClient <mujoco_ros_msgs::RegisterSensorNoiseModels>(" /sensors/register_noise_models" );
738
+ EXPECT_TRUE (client.call (srv)) << " Service call failed!" ;
739
+
740
+ EXPECT_EQ (srv.response .success , false ) << " Service call should have failed!" ;
741
+ }
742
+
743
+ TEST_F (EvalEnvFixture, AllowedEvalNoiseModelChange)
744
+ {
745
+ mujoco_ros_msgs::SensorNoiseModel noise_model;
746
+ noise_model.mean .emplace_back (0.0 );
747
+ noise_model.mean .emplace_back (1.0 );
748
+ noise_model.std .emplace_back (0.025 );
749
+ noise_model.std .emplace_back (0.0 );
750
+ noise_model.set_flag = 3 ;
751
+ noise_model.sensor_name = " vel_EE" ;
752
+
753
+ mujoco_ros_msgs::RegisterSensorNoiseModels srv;
754
+ srv.request .noise_models .emplace_back (noise_model);
755
+ srv.request .admin_hash = " some_hash" ;
756
+
757
+ ros::ServiceClient client =
758
+ nh->serviceClient <mujoco_ros_msgs::RegisterSensorNoiseModels>(" /sensors/register_noise_models" );
759
+ EXPECT_TRUE (client.call (srv)) << " Service call failed!" ;
760
+
761
+ EXPECT_EQ (srv.response .success , true ) << " Service call should have succeeded!" ;
762
+ }
763
+
764
+ TEST_F (TrainEnvFixture, UnknownSensorAddNoise)
765
+ {
766
+ mujoco_ros_msgs::SensorNoiseModel noise_model;
767
+ noise_model.mean .emplace_back (0.0 );
768
+ noise_model.mean .emplace_back (1.0 );
769
+ noise_model.std .emplace_back (0.025 );
770
+ noise_model.std .emplace_back (0.0 );
771
+ noise_model.set_flag = 3 ;
772
+ noise_model.sensor_name = " unknown_sensor" ;
773
+
774
+ mujoco_ros_msgs::RegisterSensorNoiseModels srv;
775
+ srv.request .noise_models .emplace_back (noise_model);
776
+ srv.request .admin_hash = " example_hash" ;
777
+
778
+ ros::ServiceClient client =
779
+ nh->serviceClient <mujoco_ros_msgs::RegisterSensorNoiseModels>(" /sensors/register_noise_models" );
780
+ EXPECT_TRUE (client.call (srv)) << " Service call failed!" ;
781
+
782
+ EXPECT_EQ (srv.response .success , true ) << " Service call should have succeeded!" ;
783
+ }
0 commit comments