From 93268e4180bf0570104f6f2d46c774ca4badf8d1 Mon Sep 17 00:00:00 2001 From: sgmurray Date: Tue, 13 Aug 2024 06:18:18 -0700 Subject: [PATCH 1/2] Fix flaky transmission_interface tests by making them deterministic. (#1665) (cherry picked from commit ace84165f3eda161db963415c71aa6d9da06ee34) # Conflicts: # transmission_interface/test/random_generator_utils.hpp --- .../four_bar_linkage_transmission.hpp | 2 +- transmission_interface/test/random_generator_utils.hpp | 8 +++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/transmission_interface/include/transmission_interface/four_bar_linkage_transmission.hpp b/transmission_interface/include/transmission_interface/four_bar_linkage_transmission.hpp index 39f5df6f61..863c20da9b 100644 --- a/transmission_interface/include/transmission_interface/four_bar_linkage_transmission.hpp +++ b/transmission_interface/include/transmission_interface/four_bar_linkage_transmission.hpp @@ -288,7 +288,7 @@ inline void FourBarLinkageTransmission::actuator_to_joint() joint_eff[0].set_value(jr[0] * act_eff[0].get_value() * ar[0]); joint_eff[1].set_value( - jr[1] * (act_eff[1].get_value() * ar[1] - act_eff[0].get_value() * ar[0] * jr[0])); + jr[1] * (act_eff[1].get_value() * ar[1] - jr[0] * act_eff[0].get_value() * ar[0])); } } diff --git a/transmission_interface/test/random_generator_utils.hpp b/transmission_interface/test/random_generator_utils.hpp index e6088f1b2f..d8b48774f4 100644 --- a/transmission_interface/test/random_generator_utils.hpp +++ b/transmission_interface/test/random_generator_utils.hpp @@ -26,12 +26,18 @@ using std::vector; /// \brief Generator of pseudo-random double in the range [min_val, max_val]. // NOTE: Based on example code available at: // http://stackoverflow.com/questions/2860673/initializing-a-c-vector-to-random-values-fast +// Use a user specified seed instead of system time for deterministic tests struct RandomDoubleGenerator { public: - RandomDoubleGenerator(double min_val, double max_val) : min_val_(min_val), max_val_(max_val) + RandomDoubleGenerator(double min_val, double max_val, unsigned int seed = 1234) + : min_val_(min_val), max_val_(max_val) { +<<<<<<< HEAD srand(time(nullptr)); +======= + srand(seed); +>>>>>>> ace8416 (Fix flaky transmission_interface tests by making them deterministic. (#1665)) } double operator()() { From 2445d29a96182fea180be3f3778cd52adc1337a0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christoph=20Fr=C3=B6hlich?= Date: Tue, 13 Aug 2024 17:32:01 +0200 Subject: [PATCH 2/2] Fix merge conflict random_generator_utils.hpp --- transmission_interface/test/random_generator_utils.hpp | 4 ---- 1 file changed, 4 deletions(-) diff --git a/transmission_interface/test/random_generator_utils.hpp b/transmission_interface/test/random_generator_utils.hpp index d8b48774f4..01e1245e48 100644 --- a/transmission_interface/test/random_generator_utils.hpp +++ b/transmission_interface/test/random_generator_utils.hpp @@ -33,11 +33,7 @@ struct RandomDoubleGenerator RandomDoubleGenerator(double min_val, double max_val, unsigned int seed = 1234) : min_val_(min_val), max_val_(max_val) { -<<<<<<< HEAD - srand(time(nullptr)); -======= srand(seed); ->>>>>>> ace8416 (Fix flaky transmission_interface tests by making them deterministic. (#1665)) } double operator()() {