From 4b1375297b811816c59a2ef81a2c6d20536611bc Mon Sep 17 00:00:00 2001 From: Nimrod Gileadi Date: Tue, 18 Apr 2023 04:04:22 -0700 Subject: [PATCH] Add a test that hfields are loaded and normalised to [0, 1]. PiperOrigin-RevId: 525103908 Change-Id: I3a6cc3a339cf31aa40700cd44962038d5c6bcf74 --- test/user/user_objects_test.cc | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/test/user/user_objects_test.cc b/test/user/user_objects_test.cc index 6c959d53..2109eb6d 100644 --- a/test/user/user_objects_test.cc +++ b/test/user/user_objects_test.cc @@ -339,6 +339,18 @@ TEST_F(MjCHFieldTest, PngMap) { ASSERT_THAT(model, NotNull()) << error.data(); EXPECT_EQ(model->nhfield, 1); EXPECT_EQ(model->geom_type[0], mjGEOM_HFIELD); + EXPECT_GT(model->nhfielddata, 0); + + float min_hfield = 1e7; + float max_hfield = -1e7; + for (int i = 0; i < model->nhfielddata; i++) { + float v = model->hfield_data[i]; + min_hfield = std::min(min_hfield, v); + max_hfield = std::max(max_hfield, v); + } + EXPECT_EQ(min_hfield, 0) << "hfield should be normalised to [0, 1]"; + EXPECT_EQ(max_hfield, 1) << "hfield should be normalised to [0, 1]"; + mj_deleteModel(model); }