github.com/study-group-99/pilates@v0.2.2/libft/test_ft_strtrim.cpp (about)

     1  #include <gtest/gtest.h>
     2  #include <string.h>
     3  
     4  extern "C" {
     5  #include "../libft.h"
     6  }
     7  
     8  TEST(TestFtStrtrim, SimpleTrim) {
     9      char s[] = "This text is long";
    10  
    11      char *got = ft_strtrim(s, " ighlnoTs");
    12      EXPECT_STREQ("text", got) << "Input: char *got = ft_strtrim(\"This text is long\", \" ighlnoTs\");";
    13  
    14      got = ft_strtrim(s, "This ");
    15      EXPECT_STREQ("text is long", got) << "Input: char *got = ft_strtrim(\"text\", \"This \");";
    16  
    17      got = ft_strtrim(s, "long ");
    18      EXPECT_STREQ("This text is", got) << "Input: char *got = ft_strtrim(\"This text is\", \"long \");";
    19  }
    20  
    21  TEST(TestFtStrtrim, TrimZeroStr) {
    22      char *got = ft_strtrim("", "abcd ");
    23      EXPECT_STREQ("", got) << "Input: char *got = ft_strtrim(\"\", \"abcd \");";
    24  }
    25  
    26  TEST(TestFtStrtrim, TrimEverything) {
    27      char *got = ft_strtrim("This text is long", " eighlnotTsx");
    28      EXPECT_STREQ("", got) << "Input: char *got = ft_strtrim(\"This text is long\", \" eighlnotTsx\");";
    29  }
    30  
    31  TEST(TestFtStrtrim, TrimNothing) {
    32      char want[] = "This text is long";
    33  
    34      char *got = ft_strtrim(want, " abd");
    35      EXPECT_STREQ(want, got) << "Input: char *got = ft_strtrim(\"This text is long\", \" abd\");";
    36  }
    37  
    38  TEST(TestFtStrtrim, Empty) {
    39  	char *got = ft_strtrim("", " \n\t");
    40  	EXPECT_STREQ("", got) << "Input: char *got = ft_strtrim(\"\", \" \\n\\t\");";
    41  }
    42  
    43  TEST(TestFtStrtrim, EmptyInput) {
    44  	char *got = ft_strtrim("  \t \t \n   \n\n\n\t", " \n\t");
    45  	EXPECT_STREQ("", got) << "Input: char *got = ft_strtrim(\"  \\t \\t \\n   \\n\\n\\n\\t\", \" \\n\\t\");";
    46  }
    47  
    48  TEST(TestFtStrtrim, Memory) {
    49  	char *got = ft_strtrim("   \t  \n\n \t\t  \n\n\nHello \t  Please\n Trim me !\n   \n \n \t\t\n  ", " \n\t");
    50  	EXPECT_STREQ("Hello \t  Please\n Trim me !", got) << "Input: char *got = ft_strtrim(\"   \\t  \\n\\n \\t\\t  \\n\\n\\nHello \\t  Please\\n Trim me !\\n   \\n \\n \\t\\t\\n  \", \" \\n\\t\");";
    51  }