Skip to content

Commit 2616720

Browse files
nordic-seglaescolar
authored andcommitted
tests: drivers: can: api: Add negative test for can_set_bitrate_data()
There is negative test for too high data bitrate. Add test that checks too low data bitrate. Signed-off-by: Sebastian Głąb <[email protected]>
1 parent 13fbac8 commit 2616720

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed

tests/drivers/can/api/src/canfd.c

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -395,6 +395,31 @@ ZTEST_USER(canfd, test_set_timing_data_min)
395395
zassert_equal(err, 0, "failed to start CAN controller (err %d)", err);
396396
}
397397

398+
/**
399+
* @brief Test setting a too low data phase bitrate.
400+
*/
401+
ZTEST_USER(canfd, test_set_bitrate_data_too_low)
402+
{
403+
uint32_t min = can_get_bitrate_min(can_dev);
404+
int err;
405+
406+
if (min == 0) {
407+
ztest_test_skip();
408+
}
409+
410+
err = can_stop(can_dev);
411+
zassert_equal(err, 0, "failed to stop CAN controller (err %d)", err);
412+
413+
err = can_set_bitrate_data(can_dev, min - 1);
414+
zassert_equal(err, -ENOTSUP, "too low data phase bitrate accepted");
415+
416+
err = can_set_bitrate_data(can_dev, CONFIG_CAN_DEFAULT_BITRATE_DATA);
417+
zassert_equal(err, 0, "failed to restore default data bitrate");
418+
419+
err = can_start(can_dev);
420+
zassert_equal(err, 0, "failed to start CAN controller (err %d)", err);
421+
}
422+
398423
/**
399424
* @brief Test setting a too high data phase bitrate.
400425
*/

0 commit comments

Comments
 (0)