@@ -312,12 +312,13 @@ TEST_F(TestWrenchTransformer, NonIdentityTransform)
312312 // x' = -y, y' = x, z' = z (z-component unchanged since rotation is around z-axis)
313313 // Force: (1.0, 2.0, 3.0) -> x'=-2.0, y'=1.0, z'=3.0 -> (-2.0, 1.0, 3.0)
314314 // Torque: (0.1, 0.2, 0.3) -> x'=-0.2, y'=0.1, z'=0.3 -> (-0.2, 0.1, 0.3)
315- EXPECT_NEAR (received_msg->wrench .force .x , -2.0 , 1e-5 );
316- EXPECT_NEAR (received_msg->wrench .force .y , 1.0 , 1e-5 );
317- EXPECT_NEAR (received_msg->wrench .force .z , 3.0 , 1e-5 );
318- EXPECT_NEAR (received_msg->wrench .torque .x , -0.2 , 1e-5 );
319- EXPECT_NEAR (received_msg->wrench .torque .y , 0.1 , 1e-5 );
320- EXPECT_NEAR (received_msg->wrench .torque .z , 0.3 , 1e-5 );
315+ // Use 1e-4 tolerance to account for floating-point precision in quaternion/transform calculations
316+ EXPECT_NEAR (received_msg->wrench .force .x , -2.0 , 1e-4 );
317+ EXPECT_NEAR (received_msg->wrench .force .y , 1.0 , 1e-4 );
318+ EXPECT_NEAR (received_msg->wrench .force .z , 3.0 , 1e-4 );
319+ EXPECT_NEAR (received_msg->wrench .torque .x , -0.2 , 1e-4 );
320+ EXPECT_NEAR (received_msg->wrench .torque .y , 0.1 , 1e-4 );
321+ EXPECT_NEAR (received_msg->wrench .torque .z , 0.3 , 1e-4 );
321322
322323 // Verify values are different from input (non-identity transform applied)
323324 EXPECT_NE (received_msg->wrench .force .x , test_msg.wrench .force .x );
0 commit comments