This function trims whitespace from the start and end of a string. Add a
test for it.

Signed-off-by: Simon Glass <s...@chromium.org>
---

 test/lib/string.c | 31 +++++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)

diff --git a/test/lib/string.c b/test/lib/string.c
index 8d22f3fd68f..af84dd0715e 100644
--- a/test/lib/string.c
+++ b/test/lib/string.c
@@ -221,3 +221,34 @@ static int lib_memdup(struct unit_test_state *uts)
        return 0;
 }
 LIB_TEST(lib_memdup, 0);
+
+static int lib_strim(struct unit_test_state *uts)
+{
+       char buf[BUFLEN];
+
+       strcpy(buf, "abc");
+       ut_asserteq_str("abc", strim(buf));
+
+       /* leading space */
+       strcpy(buf, " abc");
+       ut_asserteq_str("abc", strim(buf));
+
+       /* multiple leading spaces */
+       strcpy(buf, "  abc");
+       ut_asserteq_str("abc", strim(buf));
+
+       /* multiple internal spaces */
+       strcpy(buf, "  a   bc");
+       ut_asserteq_str("a   bc", strim(buf));
+
+       /* with trailing space */
+       strcpy(buf, "  a   bc ");
+       ut_asserteq_str("a   bc", strim(buf));
+
+       /* with multiple trailing spaces */
+       strcpy(buf, "  a   bc   ");
+       ut_asserteq_str("a   bc", strim(buf));
+
+       return 0;
+}
+LIB_TEST(lib_strim, 0);
-- 
2.43.0

Reply via email to