github.com/unionj-cloud/go-doudou/v2@v2.3.5/toolkit/stringutils/stringutils_test.go (about) 1 package stringutils 2 3 import "testing" 4 5 func TestContains(t *testing.T) { 6 type args struct { 7 s string 8 substr string 9 } 10 tests := []struct { 11 name string 12 args args 13 want bool 14 }{ 15 { 16 name: "", 17 args: args{ 18 s: "filedownloadUser", 19 substr: "Download", 20 }, 21 want: true, 22 }, 23 } 24 for _, tt := range tests { 25 t.Run(tt.name, func(t *testing.T) { 26 if got := ContainsI(tt.args.s, tt.args.substr); got != tt.want { 27 t.Errorf("Contains() = %v, want %v", got, tt.want) 28 } 29 }) 30 } 31 } 32 33 func TestHasPrefixI(t *testing.T) { 34 type args struct { 35 s string 36 prefix string 37 } 38 tests := []struct { 39 name string 40 args args 41 want bool 42 }{ 43 { 44 name: "1", 45 args: args{ 46 s: "VARCHAR(255)", 47 prefix: "var", 48 }, 49 want: true, 50 }, 51 { 52 name: "2", 53 args: args{ 54 s: "VARCHAR(255)", 55 prefix: "VAR", 56 }, 57 want: true, 58 }, 59 { 60 name: "3", 61 args: args{ 62 s: "VARCHAR(255)", 63 prefix: "CHA", 64 }, 65 want: false, 66 }, 67 } 68 for _, tt := range tests { 69 t.Run(tt.name, func(t *testing.T) { 70 if got := HasPrefixI(tt.args.s, tt.args.prefix); got != tt.want { 71 t.Errorf("HasPrefixI() = %v, want %v", got, tt.want) 72 } 73 }) 74 } 75 } 76 77 func TestIsEmpty(t *testing.T) { 78 type args struct { 79 s string 80 } 81 tests := []struct { 82 name string 83 args args 84 want bool 85 }{ 86 { 87 name: "1", 88 args: args{ 89 s: " abc ", 90 }, 91 want: false, 92 }, 93 { 94 name: "2", 95 args: args{ 96 s: " ", 97 }, 98 want: true, 99 }, 100 } 101 for _, tt := range tests { 102 t.Run(tt.name, func(t *testing.T) { 103 if got := IsEmpty(tt.args.s); got != tt.want { 104 t.Errorf("IsEmpty() = %v, want %v", got, tt.want) 105 } 106 }) 107 } 108 } 109 110 func TestIsNotEmpty(t *testing.T) { 111 type args struct { 112 s string 113 } 114 tests := []struct { 115 name string 116 args args 117 want bool 118 }{ 119 { 120 name: "", 121 args: args{ 122 s: " abc ", 123 }, 124 want: true, 125 }, 126 { 127 name: "", 128 args: args{ 129 s: " ", 130 }, 131 want: false, 132 }, 133 } 134 for _, tt := range tests { 135 t.Run(tt.name, func(t *testing.T) { 136 if got := IsNotEmpty(tt.args.s); got != tt.want { 137 t.Errorf("IsNotEmpty() = %v, want %v", got, tt.want) 138 } 139 }) 140 } 141 } 142 143 func TestToCamel(t *testing.T) { 144 type args struct { 145 s string 146 } 147 tests := []struct { 148 name string 149 args args 150 want string 151 }{ 152 { 153 name: "", 154 args: args{ 155 s: "abc武斌123", 156 }, 157 want: "Abc武斌123", 158 }, 159 { 160 name: "", 161 args: args{ 162 s: "word", 163 }, 164 want: "Word", 165 }, 166 { 167 name: "", 168 args: args{ 169 s: "snake_word", 170 }, 171 want: "SnakeWord", 172 }, 173 { 174 name: "", 175 args: args{ 176 s: "Commonresultarraylistcom.hundsun.hcreator.pojo.hcbizmodelview", 177 }, 178 want: "CommonresultarraylistcomHundsunHcreatorPojoHcbizmodelview", 179 }, 180 { 181 name: "", 182 args: args{ 183 s: "Commonresultarraylistcom,hundsun,hcreator,pojo,hcbizmodelview", 184 }, 185 want: "CommonresultarraylistcomHundsunHcreatorPojoHcbizmodelview", 186 }, 187 { 188 name: "", 189 args: args{ 190 s: "Commonresultarraylistcom hundsun hcreator", 191 }, 192 want: "CommonresultarraylistcomHundsunHcreator", 193 }, 194 { 195 name: "", 196 args: args{ 197 s: "Commonresultarraylistcom,hundsun,hcreator", 198 }, 199 want: "CommonresultarraylistcomHundsunHcreator", 200 }, 201 { 202 name: "", 203 args: args{ 204 s: "台湾是中国的省", 205 }, 206 want: "A台湾是中国的省", 207 }, 208 { 209 name: "", 210 args: args{ 211 s: "dataDecimal", 212 }, 213 want: "DataDecimal", 214 }, 215 } 216 for _, tt := range tests { 217 t.Run(tt.name, func(t *testing.T) { 218 if got := ToCamel(tt.args.s); got != tt.want { 219 t.Errorf("ToCamel() = %v, want %v", got, tt.want) 220 } 221 }) 222 } 223 }