@@ -51,6 +51,10 @@ TEST_CASE("Testing dbc file loading", "[fileio]") {
5151
5252}
5353
54+ /* !
55+ * \brief TEST_CASE
56+ * Test negative values in offset, min, max
57+ */
5458TEST_CASE (" Testing negative values" ) {
5559 const auto * filename = std::tmpnam (NULL );
5660
@@ -61,8 +65,8 @@ TEST_CASE("Testing negative values") {
6165 std::fputs (R"( BO_ 234 MSG1: 8 Vector__XXX
6266 SG_ Sig1 : 55|16@0- (0.1,0) [-3276.8|-3276.7] "C" Vector__XXX
6367 SG_ Sig2 : 39|16@0- (0.1,0) [-3276.8|-3276.7] "C" Vector__XXX
64- SG_ Sig3 : 23|16@0- (0.1 ,0) [-3276.8|-3276.7] "C" Vector__XXX
65- SG_ Sig4 : 7|16@0- (1,0 ) [0|32767] "" Vector__XXX)" , file);
68+ SG_ Sig3 : 23|16@0- (10 ,0) [-3276.8|-3276.7] "C" Vector__XXX
69+ SG_ Sig4 : 7|16@0- (1,-10 ) [0|32767] "" Vector__XXX)" , file);
6670 std::fclose (file);
6771
6872 auto parser = libdbc::DbcParser ();
@@ -72,22 +76,30 @@ TEST_CASE("Testing negative values") {
7276 REQUIRE (parser.get_messages ().at (0 ).signals .size () == 4 );
7377 {
7478 const auto signal = parser.get_messages ().at (0 ).signals .at (0 );
79+ REQUIRE (signal.factor == 0.1 );
80+ REQUIRE (signal.offset == 0 );
7581 REQUIRE (signal.min == -3276.8 );
7682 REQUIRE (signal.max == -3276.7 );
7783 }
7884 {
79- const auto signal = parser.get_messages ().at (1 ).signals .at (0 );
85+ const auto signal = parser.get_messages ().at (0 ).signals .at (1 );
86+ REQUIRE (signal.factor == 0.1 );
87+ REQUIRE (signal.offset == 0 );
8088 REQUIRE (signal.min == -3276.8 );
8189 REQUIRE (signal.max == -3276.7 );
8290 }
8391 {
84- const auto signal = parser.get_messages ().at (2 ).signals .at (0 );
92+ const auto signal = parser.get_messages ().at (0 ).signals .at (2 );
93+ REQUIRE (signal.factor == 10 );
94+ REQUIRE (signal.offset == 0 );
8595 REQUIRE (signal.min == -3276.8 );
8696 REQUIRE (signal.max == -3276.7 );
8797 }
8898 {
89- const auto signal = parser.get_messages ().at (3 ).signals .at (0 );
90- REQUIRE (signal.min == -3276.8 );
91- REQUIRE (signal.max == -3276.7 );
99+ const auto signal = parser.get_messages ().at (0 ).signals .at (3 );
100+ REQUIRE (signal.factor == 0.1 );
101+ REQUIRE (signal.offset == -10 );
102+ REQUIRE (signal.min == 0 );
103+ REQUIRE (signal.max == 32767 );
92104 }
93105}
0 commit comments