|
48 | 48 | #include <sensor_msgs/JointState.h>
|
49 | 49 | #include <sensor_msgs/LaserScan.h>
|
50 | 50 | #include <sensor_msgs/MagneticField.h>
|
| 51 | +#include <sensor_msgs/NavSatFix.h> |
51 | 52 | #include <sensor_msgs/PointCloud2.h>
|
52 | 53 | #include <sensor_msgs/PointField.h>
|
53 | 54 | #include <tf2_msgs/TFMessage.h>
|
@@ -832,6 +833,42 @@ namespace testing
|
832 | 833 | EXPECT_FLOAT_EQ(0, _msg.magnetic_field_covariance[i]);
|
833 | 834 | }
|
834 | 835 |
|
| 836 | + /// \brief Create a message used for testing. |
| 837 | + /// \param[out] _msg The message populated. |
| 838 | + void createTestMsg(sensor_msgs::NavSatFix &_msg) |
| 839 | + { |
| 840 | + std_msgs::Header header_msg; |
| 841 | + createTestMsg(header_msg); |
| 842 | + |
| 843 | + _msg.header = header_msg; |
| 844 | + _msg.status.status = sensor_msgs::NavSatStatus::STATUS_FIX; |
| 845 | + _msg.latitude = 0.00; |
| 846 | + _msg.longitude = 0.00; |
| 847 | + _msg.altitude = 0.00; |
| 848 | + _msg.position_covariance = {1, 2, 3, 4, 5, 6, 7, 8, 9}; |
| 849 | + _msg.position_covariance_type = |
| 850 | + sensor_msgs::NavSatFix::COVARIANCE_TYPE_UNKNOWN; |
| 851 | + } |
| 852 | + |
| 853 | + /// \brief Compare a message with the populated for testing. |
| 854 | + /// \param[in] _msg The message to compare. |
| 855 | + void compareTestMsg(const sensor_msgs::NavSatFix &_msg) |
| 856 | + { |
| 857 | + sensor_msgs::NavSatFix expected_msg; |
| 858 | + createTestMsg(expected_msg); |
| 859 | + |
| 860 | + compareTestMsg(_msg.header); |
| 861 | + EXPECT_EQ(expected_msg.status, _msg.status); |
| 862 | + EXPECT_FLOAT_EQ(expected_msg.latitude, _msg.latitude); |
| 863 | + EXPECT_FLOAT_EQ(expected_msg.longitude, _msg.longitude); |
| 864 | + EXPECT_FLOAT_EQ(expected_msg.altitude, _msg.altitude); |
| 865 | + EXPECT_EQ(expected_msg.position_covariance_type, |
| 866 | + _msg.position_covariance_type); |
| 867 | + |
| 868 | + for (auto i = 0u; i < 9; ++i) |
| 869 | + EXPECT_FLOAT_EQ(0, _msg.position_covariance[i]); |
| 870 | + } |
| 871 | + |
835 | 872 | /// \brief Create a message used for testing.
|
836 | 873 | /// \param[out] _msg The message populated.
|
837 | 874 | void createTestMsg(sensor_msgs::PointCloud2 &_msg)
|
@@ -1633,6 +1670,39 @@ namespace testing
|
1633 | 1670 | compareTestMsg(_msg.field_tesla());
|
1634 | 1671 | }
|
1635 | 1672 |
|
| 1673 | + /// \brief Create a message used for testing. |
| 1674 | + /// \param[out] _msg The message populated. |
| 1675 | + void createTestMsg(ignition::msgs::NavSat &_msg) |
| 1676 | + { |
| 1677 | + ignition::msgs::Header header_msg; |
| 1678 | + createTestMsg(header_msg); |
| 1679 | + |
| 1680 | + _msg.mutable_header()->CopyFrom(header_msg); |
| 1681 | + _msg.set_frame_id("frame_id_value"); |
| 1682 | + _msg.set_latitude_deg(0.00); |
| 1683 | + _msg.set_longitude_deg(0.00); |
| 1684 | + _msg.set_altitude(0.00); |
| 1685 | + _msg.set_velocity_east(0.00); |
| 1686 | + _msg.set_velocity_north(0.00); |
| 1687 | + _msg.set_velocity_up(0.00); |
| 1688 | + } |
| 1689 | + |
| 1690 | + /// \brief Compare a message with the populated for testing. |
| 1691 | + /// \param[in] _msg The message to compare. |
| 1692 | + void compareTestMsg(const ignition::msgs::NavSat &_msg) |
| 1693 | + { |
| 1694 | + ignition::msgs::NavSat expected_msg; |
| 1695 | + createTestMsg(expected_msg); |
| 1696 | + |
| 1697 | + compareTestMsg(_msg.header()); |
| 1698 | + EXPECT_FLOAT_EQ(expected_msg.latitude_deg(), _msg.latitude_deg()); |
| 1699 | + EXPECT_FLOAT_EQ(expected_msg.longitude_deg(), _msg.longitude_deg()); |
| 1700 | + EXPECT_FLOAT_EQ(expected_msg.altitude(), _msg.altitude()); |
| 1701 | + EXPECT_FLOAT_EQ(expected_msg.velocity_east(), _msg.velocity_east()); |
| 1702 | + EXPECT_FLOAT_EQ(expected_msg.velocity_north(), _msg.velocity_north()); |
| 1703 | + EXPECT_FLOAT_EQ(expected_msg.velocity_up(), _msg.velocity_up()); |
| 1704 | + } |
| 1705 | + |
1636 | 1706 | /// \brief Create a message used for testing.
|
1637 | 1707 | /// \param[out] _msg The message populated.
|
1638 | 1708 | void createTestMsg(ignition::msgs::Actuators &_msg)
|
|
0 commit comments