Signed-off-by: Antonio Murdaca <runcom@linux.com>
| ... | ... |
@@ -2,6 +2,7 @@ package stringutils |
| 2 | 2 |
|
| 3 | 3 |
import ( |
| 4 | 4 |
"encoding/json" |
| 5 |
+ "reflect" |
|
| 5 | 6 |
"testing" |
| 6 | 7 |
) |
| 7 | 8 |
|
| ... | ... |
@@ -103,3 +104,32 @@ func TestStrSliceToString(t *testing.T) {
|
| 103 | 103 |
} |
| 104 | 104 |
} |
| 105 | 105 |
} |
| 106 |
+ |
|
| 107 |
+func TestStrSliceLen(t *testing.T) {
|
|
| 108 |
+ var emptyStrSlice *StrSlice |
|
| 109 |
+ slices := map[*StrSlice]int{
|
|
| 110 |
+ NewStrSlice(""): 1,
|
|
| 111 |
+ NewStrSlice("one"): 1,
|
|
| 112 |
+ NewStrSlice("one", "two"): 2,
|
|
| 113 |
+ emptyStrSlice: 0, |
|
| 114 |
+ } |
|
| 115 |
+ for s, expected := range slices {
|
|
| 116 |
+ if s.Len() != expected {
|
|
| 117 |
+ t.Fatalf("Expected %d, got %d", s.Len(), expected)
|
|
| 118 |
+ } |
|
| 119 |
+ } |
|
| 120 |
+} |
|
| 121 |
+ |
|
| 122 |
+func TestStrSliceSlice(t *testing.T) {
|
|
| 123 |
+ var emptyStrSlice *StrSlice |
|
| 124 |
+ slices := map[*StrSlice][]string{
|
|
| 125 |
+ NewStrSlice("one"): {"one"},
|
|
| 126 |
+ NewStrSlice("one", "two"): {"one", "two"},
|
|
| 127 |
+ emptyStrSlice: nil, |
|
| 128 |
+ } |
|
| 129 |
+ for s, expected := range slices {
|
|
| 130 |
+ if !reflect.DeepEqual(s.Slice(), expected) {
|
|
| 131 |
+ t.Fatalf("Expected %v, got %v", s.Slice(), expected)
|
|
| 132 |
+ } |
|
| 133 |
+ } |
|
| 134 |
+} |