tests: drivers: can: move min/max timing tests to API test suite
Move the test for setting the minimum/maximum supported timing parameters from the CAN timing tests to the CAN API tests as these are validating basic API behavior. Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
This commit is contained in:
parent
62ac753a61
commit
8ccccbbb88
3 changed files with 68 additions and 64 deletions
|
|
@ -375,6 +375,40 @@ ZTEST_USER(canfd, test_filters_preserved_through_fd_to_classic_mode_change)
|
|||
check_filters_preserved_between_modes(CAN_MODE_FD, CAN_MODE_NORMAL);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Test that the minimum timing values for the data phase can be set.
|
||||
*/
|
||||
ZTEST_USER(canfd, test_set_timing_data_min)
|
||||
{
|
||||
int err;
|
||||
|
||||
err = can_stop(can_dev);
|
||||
zassert_equal(err, 0, "failed to stop CAN controller (err %d)", err);
|
||||
|
||||
err = can_set_timing_data(can_dev, can_get_timing_data_min(can_dev));
|
||||
zassert_equal(err, 0, "failed to set minimum timing data parameters (err %d)", err);
|
||||
|
||||
err = can_start(can_dev);
|
||||
zassert_equal(err, 0, "failed to start CAN controller (err %d)", err);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Test that the maximum timing values for the data phase can be set.
|
||||
*/
|
||||
ZTEST_USER(canfd, test_set_timing_data_max)
|
||||
{
|
||||
int err;
|
||||
|
||||
err = can_stop(can_dev);
|
||||
zassert_equal(err, 0, "failed to stop CAN controller (err %d)", err);
|
||||
|
||||
err = can_set_timing_data(can_dev, can_get_timing_data_max(can_dev));
|
||||
zassert_equal(err, 0, "failed to set maximum timing data parameters (err %d)", err);
|
||||
|
||||
err = can_start(can_dev);
|
||||
zassert_equal(err, 0, "failed to start CAN controller (err %d)", err);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Test setting data phase bitrate is not allowed while started.
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -540,6 +540,40 @@ ZTEST_USER(can_classic, test_set_bitrate)
|
|||
zassert_equal(err, 0, "failed to start CAN controller (err %d)", err);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Test that the minimum timing values can be set.
|
||||
*/
|
||||
ZTEST_USER(can_classic, test_set_timing_min)
|
||||
{
|
||||
int err;
|
||||
|
||||
err = can_stop(can_dev);
|
||||
zassert_equal(err, 0, "failed to stop CAN controller (err %d)", err);
|
||||
|
||||
err = can_set_timing(can_dev, can_get_timing_min(can_dev));
|
||||
zassert_equal(err, 0, "failed to set minimum timing parameters (err %d)", err);
|
||||
|
||||
err = can_start(can_dev);
|
||||
zassert_equal(err, 0, "failed to start CAN controller (err %d)", err);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Test that the maximum timing values can be set.
|
||||
*/
|
||||
ZTEST_USER(can_classic, test_set_timing_max)
|
||||
{
|
||||
int err;
|
||||
|
||||
err = can_stop(can_dev);
|
||||
zassert_equal(err, 0, "failed to stop CAN controller (err %d)", err);
|
||||
|
||||
err = can_set_timing(can_dev, can_get_timing_max(can_dev));
|
||||
zassert_equal(err, 0, "failed to set maximum timing parameters (err %d)", err);
|
||||
|
||||
err = can_start(can_dev);
|
||||
zassert_equal(err, 0, "failed to start CAN controller (err %d)", err);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Test sending a message with no filters installed.
|
||||
*
|
||||
|
|
|
|||
|
|
@ -244,70 +244,6 @@ ZTEST_USER(can_timing, test_timing_data)
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Test that the minimum timing values can be set.
|
||||
*/
|
||||
ZTEST_USER(can_timing, test_set_timing_min)
|
||||
{
|
||||
const struct device *const dev = DEVICE_DT_GET(DT_CHOSEN(zephyr_canbus));
|
||||
int err;
|
||||
|
||||
err = can_set_timing(dev, can_get_timing_min(dev));
|
||||
zassert_equal(err, 0, "failed to set minimum timing parameters (err %d)", err);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Test that the minimum timing values for the data phase can be set.
|
||||
*/
|
||||
ZTEST_USER(can_timing, test_set_timing_data_min)
|
||||
{
|
||||
const struct device *const dev = DEVICE_DT_GET(DT_CHOSEN(zephyr_canbus));
|
||||
can_mode_t cap;
|
||||
int err;
|
||||
|
||||
err = can_get_capabilities(dev, &cap);
|
||||
zassert_equal(err, 0, "failed to get CAN controller capabilities (err %d)", err);
|
||||
|
||||
if ((cap & CAN_MODE_FD) == 0) {
|
||||
ztest_test_skip();
|
||||
}
|
||||
|
||||
err = can_set_timing_data(dev, can_get_timing_data_min(dev));
|
||||
zassert_equal(err, 0, "failed to set minimum timing data parameters (err %d)", err);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Test that the maximum timing values can be set.
|
||||
*/
|
||||
ZTEST_USER(can_timing, test_set_timing_max)
|
||||
{
|
||||
const struct device *const dev = DEVICE_DT_GET(DT_CHOSEN(zephyr_canbus));
|
||||
int err;
|
||||
|
||||
err = can_set_timing(dev, can_get_timing_max(dev));
|
||||
zassert_equal(err, 0, "failed to set maximum timing parameters (err %d)", err);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Test that the maximum timing values for the data phase can be set.
|
||||
*/
|
||||
ZTEST_USER(can_timing, test_set_timing_data_max)
|
||||
{
|
||||
const struct device *const dev = DEVICE_DT_GET(DT_CHOSEN(zephyr_canbus));
|
||||
can_mode_t cap;
|
||||
int err;
|
||||
|
||||
err = can_get_capabilities(dev, &cap);
|
||||
zassert_equal(err, 0, "failed to get CAN controller capabilities (err %d)", err);
|
||||
|
||||
if ((cap & CAN_MODE_FD) == 0) {
|
||||
ztest_test_skip();
|
||||
}
|
||||
|
||||
err = can_set_timing_data(dev, can_get_timing_data_max(dev));
|
||||
zassert_equal(err, 0, "failed to set maximum timing data parameters (err %d)", err);
|
||||
}
|
||||
|
||||
void *can_timing_setup(void)
|
||||
{
|
||||
const struct device *const dev = DEVICE_DT_GET(DT_CHOSEN(zephyr_canbus));
|
||||
|
|
|
|||
Loading…
Reference in a new issue