8 from actionlib_msgs.msg
import GoalStatus
9 from ensenso_camera_msgs.msg
import GetParameterAction, GetParameterGoal
10 from ensenso_camera_msgs.msg
import SetParameterAction, SetParameterGoal
12 from ensenso_camera_msgs.msg
import Parameter
14 from helper
import RegionOfInterest
20 self.get_parameter_client.wait_for_server()
22 self.set_parameter_client.wait_for_server()
25 self.get_parameter_client.send_goal(GetParameterGoal(parameter_set=parameter_set, keys=keys))
26 self.get_parameter_client.wait_for_result()
28 self.assertEqual(self.get_parameter_client.get_state(), GoalStatus.SUCCEEDED)
29 self.assertEqual(self.get_parameter_client.get_result().error.code, 0)
31 result = self.get_parameter_client.get_result()
32 self.assertTrue(abs(result.stamp.to_sec() - rospy.Time.now().to_sec()) < 1)
37 self.set_parameter_client.send_goal(SetParameterGoal(parameter_set=parameter_set, parameters=parameters))
38 self.set_parameter_client.wait_for_result()
40 self.assertEqual(self.set_parameter_client.get_state(), GoalStatus.SUCCEEDED)
41 self.assertEqual(self.set_parameter_client.get_result().error.code, 0)
43 return self.set_parameter_client.get_result().results
50 self.assertEqual(len(result), 1)
51 self.assertEqual(result[0].key, Parameter.TRIGGER_MODE)
52 self.assertEqual(result[0].string_value,
"Software")
55 result = self.
set_parameter([Parameter(key=Parameter.TRIGGER_MODE, string_value=
"Continuous")],
57 self.assertEqual(len(result), 1)
58 self.assertEqual(result[0].key, Parameter.TRIGGER_MODE)
59 self.assertEqual(result[0].string_value,
"Continuous")
62 result = self.
get_parameter([Parameter.TRIGGER_MODE], parameter_set=
"test")
63 self.assertEqual(len(result), 1)
64 self.assertEqual(result[0].key, Parameter.TRIGGER_MODE)
65 self.assertEqual(result[0].string_value,
"Continuous")
69 self.assertEqual(len(result), 1)
70 self.assertEqual(result[0].key, Parameter.TRIGGER_MODE)
71 self.assertEqual(result[0].string_value,
"Software")
79 self.assertEqual(len(result), 1)
80 self.assertEqual(result[0].key, Parameter.REGION_OF_INTEREST)
81 self.assertTrue(RegionOfInterest.from_message(result[0].region_of_interest_value).equals(default_roi))
83 roi_message = Parameter(key=Parameter.REGION_OF_INTEREST)
84 test_roi.write_to_message(roi_message.region_of_interest_value)
86 self.assertEqual(len(result), 1)
87 self.assertEqual(result[0].key, Parameter.REGION_OF_INTEREST)
88 self.assertTrue(RegionOfInterest.from_message(result[0].region_of_interest_value).equals(test_roi))
91 self.assertEqual(len(result), 1)
92 self.assertEqual(result[0].key, Parameter.REGION_OF_INTEREST)
93 self.assertTrue(RegionOfInterest.from_message(result[0].region_of_interest_value).equals(test_roi))
96 if __name__ ==
"__main__":
98 rospy.init_node(
"test_parameter")
99 rostest.rosrun(
"ensenso_camera_test",
"test_parameter", TestParameter)
100 except rospy.ROSInterruptException:
def set_parameter(self, parameters, parameter_set="")
def get_parameter(self, keys, parameter_set="")