diff options
author | Kapil Porwal <kapilporwal@google.com> | 2024-06-05 15:52:30 +0000 |
---|---|---|
committer | Julius Werner <jwerner@chromium.org> | 2024-06-11 21:06:59 +0000 |
commit | 829b94dc988861179f09f56b6693c84fda02acd1 (patch) | |
tree | 9cea156f42cd66f3ea602d8e80ea05c30d65aa98 /tests/commonlib | |
parent | 3da78299588f34332b1e7d4291437b182c711258 (diff) |
treewide: Move skip_atoi function to commonlib
BUG=none
TEST=Build and verify on Screebo
TEST=make unit-tests
```
$ make tests/commonlib/bsd/string-test
[==========] tests_commonlib_bsd_string-test(tests): Running 1 test(s).
[ RUN ] test_skip_atoi
[ OK ] test_skip_atoi
[==========] tests_commonlib_bsd_string-test(tests): 1 test(s) run.
[ PASSED ] 1 test(s).
```
Change-Id: Ifaaa80d0c696a625592ce301f9e3eefb2b4dcd98
Signed-off-by: Maximilian Brune <maximilian.brune@9elements.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/82910
Reviewed-by: Jakub Czapiga <czapiga@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
Diffstat (limited to 'tests/commonlib')
-rw-r--r-- | tests/commonlib/bsd/Makefile.mk | 4 | ||||
-rw-r--r-- | tests/commonlib/bsd/string-test.c | 38 |
2 files changed, 42 insertions, 0 deletions
diff --git a/tests/commonlib/bsd/Makefile.mk b/tests/commonlib/bsd/Makefile.mk index 3de223e707..ee710bcdb9 100644 --- a/tests/commonlib/bsd/Makefile.mk +++ b/tests/commonlib/bsd/Makefile.mk @@ -3,6 +3,7 @@ tests-y += helpers-test tests-y += gcd-test tests-y += ipchksum-test +tests-y += string-test helpers-test-srcs += tests/commonlib/bsd/helpers-test.c @@ -11,3 +12,6 @@ gcd-test-srcs += src/commonlib/bsd/gcd.c ipchksum-test-srcs += tests/commonlib/bsd/ipchksum-test.c ipchksum-test-srcs += src/commonlib/bsd/ipchksum.c + +string-test-srcs += tests/commonlib/bsd/string-test.c +string-test-srcs += src/commonlib/bsd/string.c diff --git a/tests/commonlib/bsd/string-test.c b/tests/commonlib/bsd/string-test.c new file mode 100644 index 0000000000..d94b82e18c --- /dev/null +++ b/tests/commonlib/bsd/string-test.c @@ -0,0 +1,38 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + +#include <commonlib/bsd/string.h> +#include <tests/test.h> + +/* Used to test skip_atoi */ +struct str_with_u_val_t { + char *str; + uint32_t value; + uint32_t offset; +} str_with_u_val[] = { + {"42aa", 42, 2}, + {"a", 0, 0}, + {"0", 0, 1}, + {"4a2", 4, 1}, +}; + +static void test_skip_atoi(void **state) +{ + int i; + char *ptr, *copy; + + for (i = 0; i < ARRAY_SIZE(str_with_u_val); i++) { + ptr = str_with_u_val[i].str; + copy = ptr; + assert_true(str_with_u_val[i].value == skip_atoi(&ptr)); + assert_int_equal(str_with_u_val[i].offset, ptr - copy); + } +} + +int main(void) +{ + const struct CMUnitTest tests[] = { + cmocka_unit_test(test_skip_atoi), + }; + + return cb_run_group_tests(tests, NULL, NULL); +} |