diff options
author | Aaron Massey <aaronmassey@google.com> | 2022-09-16 10:02:59 -0600 |
---|---|---|
committer | Chromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com> | 2022-09-20 21:12:23 +0000 |
commit | 9d723813b2e6c5619016e83b194ffdab6bd23d41 (patch) | |
tree | df8133f80c26c2043236a9f007922008b2ad3fe9 | |
parent | c2f08360e5abc78f9d4f99b39151a6e7f0f7222e (diff) | |
download | chrome-ec-9d723813b2e6c5619016e83b194ffdab6bd23d41.tar.gz |
test: Replace magic number in virtual_battery.c
The number "32" is a parameter in multiple zassert invocations in the
virtual battery test. Although this number isn't entirely magic, it may
make tests brittle when asserting against a new version of the smart
battery specification that doesn't use 32 bit size values.
Replace these values with a defined constant in battery.h
BRANCH=none
BUG=b:246652125
TEST=./twister --clobber -i -s zephyr/test/drivers/drivers.default
Signed-off-by: Aaron Massey <aaronmassey@google.com>
Change-Id: I8d85ca7e4d42320559e4631b853a6db30b1aa000
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3902456
Reviewed-by: Jeremy Bettis <jbettis@chromium.org>
Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
-rw-r--r-- | include/battery.h | 14 | ||||
-rw-r--r-- | zephyr/test/drivers/default/src/virtual_battery.c | 8 |
2 files changed, 13 insertions, 9 deletions
diff --git a/include/battery.h b/include/battery.h index 5eb81c20ad..51fcd68696 100644 --- a/include/battery.h +++ b/include/battery.h @@ -55,6 +55,9 @@ /* Full-capacity change reqd for host event */ #define LFCC_EVENT_THRESH 5 +/* Max string size in the SB spec is 31. */ +#define SB_MAX_STR_SIZE 31 + /* Battery index, only used with CONFIG_BATTERY_V2. */ enum battery_index { BATT_IDX_INVALID = -1, @@ -96,13 +99,12 @@ struct battery_static_info { * char device_name[32]; * char chemistry[32]; */ - /* Max string size in the SB spec is 31. */ - char manufacturer_ext[32]; /* SB_MANUFACTURER_NAME */ - char model_ext[32]; /* SB_DEVICE_NAME */ - char serial_ext[32]; /* SB_SERIAL_NUMBER */ - char type_ext[32]; /* SB_DEVICE_CHEMISTRY */ + char manufacturer_ext[SB_MAX_STR_SIZE + 1]; /* SB_MANUFACTURER_NAME */ + char model_ext[SB_MAX_STR_SIZE + 1]; /* SB_DEVICE_NAME */ + char serial_ext[SB_MAX_STR_SIZE + 1]; /* SB_SERIAL_NUMBER */ + char type_ext[SB_MAX_STR_SIZE + 1]; /* SB_DEVICE_CHEMISTRY */ #ifdef CONFIG_BATTERY_VENDOR_PARAM - uint8_t vendor_param[32]; + uint8_t vendor_param[SB_MAX_STR_SIZE + 1]; #endif }; diff --git a/zephyr/test/drivers/default/src/virtual_battery.c b/zephyr/test/drivers/default/src/virtual_battery.c index 0b9063d8f3..c03928ffca 100644 --- a/zephyr/test/drivers/default/src/virtual_battery.c +++ b/zephyr/test/drivers/default/src/virtual_battery.c @@ -170,18 +170,20 @@ ZTEST_USER(virtual_battery, test_read_regs) word = virtual_battery_read16(SB_REMAINING_CAPACITY); zassert_equal(bat->cap, word, "%d != %d", bat->cap, word); - len = virtual_battery_read_str(SB_MANUFACTURER_NAME, &str, 32); + len = virtual_battery_read_str(SB_MANUFACTURER_NAME, &str, + SB_MAX_STR_SIZE); zassert_equal(bat->mf_name_len, len, "%d != %d", bat->mf_name_len, len); zassert_mem_equal(str, bat->mf_name, bat->mf_name_len, "%s != %s", str, bat->mf_name); - len = virtual_battery_read_str(SB_DEVICE_NAME, &str, 32); + len = virtual_battery_read_str(SB_DEVICE_NAME, &str, SB_MAX_STR_SIZE); zassert_equal(bat->dev_name_len, len, "%d != %d", bat->dev_name_len, len); zassert_mem_equal(str, bat->dev_name, bat->dev_name_len, "%s != %s", str, bat->dev_name); - len = virtual_battery_read_str(SB_DEVICE_CHEMISTRY, &str, 32); + len = virtual_battery_read_str(SB_DEVICE_CHEMISTRY, &str, + SB_MAX_STR_SIZE); zassert_equal(bat->dev_chem_len, len, "%d != %d", bat->dev_chem_len, len); zassert_mem_equal(str, bat->dev_chem, bat->dev_chem_len, "%s != %s", |