summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAaron Massey <aaronmassey@google.com>2022-09-16 10:02:59 -0600
committerChromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com>2022-09-20 21:12:23 +0000
commit9d723813b2e6c5619016e83b194ffdab6bd23d41 (patch)
treedf8133f80c26c2043236a9f007922008b2ad3fe9
parentc2f08360e5abc78f9d4f99b39151a6e7f0f7222e (diff)
downloadchrome-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.h14
-rw-r--r--zephyr/test/drivers/default/src/virtual_battery.c8
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",