From a7ef9770338570a2ce71af97b80687844b109691 Mon Sep 17 00:00:00 2001 From: Yuval Peress Date: Thu, 30 Sep 2021 11:08:58 -0600 Subject: zephyr: test: verify isl923x device ID code path BRANCH=none BUG=b:201602829 TEST=zmake configure --test zephyr/test/drivers Signed-off-by: Yuval Peress Change-Id: I08b24d571e0b27fd7fc5f644efdba18c5a639128 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3198237 Reviewed-by: Jack Rosenthal --- zephyr/test/drivers/src/isl923x.c | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) (limited to 'zephyr/test/drivers/src/isl923x.c') diff --git a/zephyr/test/drivers/src/isl923x.c b/zephyr/test/drivers/src/isl923x.c index 17c87ea651..d6a9fb0c59 100644 --- a/zephyr/test/drivers/src/isl923x.c +++ b/zephyr/test/drivers/src/isl923x.c @@ -179,12 +179,34 @@ void test_manufacturer_id(void) I2C_COMMON_EMUL_NO_FAIL_REG); } +void test_device_id(void) +{ + const struct emul *isl923x_emul = ISL923X_EMUL; + struct i2c_emul *i2c_emul = isl923x_emul_get_i2c_emul(isl923x_emul); + int id; + + isl923x_emul_set_device_id(isl923x_emul, 0x5678); + zassert_ok(isl923x_drv.device_id(CHARGER_NUM, &id), NULL); + zassert_equal(0x5678, id, NULL); + + /* Test read error */ + i2c_common_emul_set_read_fail_reg(i2c_emul, + ISL923X_REG_DEVICE_ID); + zassert_equal(EC_ERROR_INVAL, + isl923x_drv.device_id(CHARGER_NUM, &id), NULL); + + /* Reset fail register */ + i2c_common_emul_set_read_fail_reg(i2c_emul, + I2C_COMMON_EMUL_NO_FAIL_REG); +} + void test_suite_isl923x(void) { ztest_test_suite(isl923x, ztest_unit_test(test_isl923x_set_current), ztest_unit_test(test_isl923x_set_voltage), ztest_unit_test(test_isl923x_set_input_current_limit), - ztest_unit_test(test_manufacturer_id)); + ztest_unit_test(test_manufacturer_id), + ztest_unit_test(test_device_id)); ztest_run_test_suite(isl923x); } -- cgit v1.2.1