xref: /aosp_15_r20/external/libchrome-gestures/src/string_util_unittest.cc (revision aed3e5085e770be5b69ce25295ecf6ddf906af95)
1 // Copyright 2022 The ChromiumOS Authors
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #include <gtest/gtest.h>
6 
7 #include "include/string_util.h"
8 
9 #include <string>
10 #include <vector>
11 
12 namespace gestures {
13 
14 class StringUtilTest : public ::testing::Test {};
15 
TEST(StringUtilTest,StringPrintfTest)16 TEST(StringUtilTest, StringPrintfTest) {
17   const char *pstr =
18     "0123456789012345678901234567890123456789012345678901234567890123456789";
19   std::string str = StringPrintf(
20     " %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s ",
21     pstr, pstr, pstr, pstr, pstr,
22     pstr, pstr, pstr, pstr, pstr,
23     pstr, pstr, pstr, pstr, pstr
24   );
25   int expected_length = (70*15)+15+1;
26   EXPECT_EQ(str.size(), expected_length);
27 }
28 
TEST(StringUtilTest,TrimWhitespaceASCIITest)29 TEST(StringUtilTest, TrimWhitespaceASCIITest) {
30   EXPECT_EQ(TrimWhitespaceASCII(""), "");
31   EXPECT_EQ(TrimWhitespaceASCII(" x    "), "x");
32   EXPECT_EQ(TrimWhitespaceASCII("badger"), "badger");
33   EXPECT_EQ(TrimWhitespaceASCII("badger  "), "badger");
34   EXPECT_EQ(TrimWhitespaceASCII("  badger"), "badger");
35   EXPECT_EQ(TrimWhitespaceASCII("  \t \n\r "), "");
36   EXPECT_EQ(TrimWhitespaceASCII("   Bees and ponies     "), "Bees and ponies");
37 }
38 
39 }  // namespace gestures
40