github.com/cobalt77/jfrog-client-go@v0.14.5/utils/parenthesesutils_test.go (about) 1 package utils 2 3 import ( 4 "reflect" 5 "testing" 6 ) 7 8 func TestSortNoDuplicates(t *testing.T) { 9 got := []int{3, 2, 1, 4, 3, 2, 1, 4, 1} 10 beforSsortNoDuplicates := got 11 sortNoDuplicates(&got) 12 want := []int{1, 2, 3, 4} 13 if !reflect.DeepEqual(got, want) { 14 t.Errorf("sortNoDuplicates(%v) == %v, want %v", beforSsortNoDuplicates, got, want) 15 } 16 } 17 18 func TestFindParentheses(t *testing.T) { 19 pattern := "(a/(b)" 20 target := "{1}" 21 got := findParentheses(pattern, target) 22 want := []Parentheses{{3, 5}} 23 if !reflect.DeepEqual(got, want) { 24 t.Errorf("sortNoDuplicates(%s, %s) == %v, want %v", pattern, target, got, want) 25 } 26 27 pattern = "(a/(b" 28 target = "{1}" 29 got = findParentheses(pattern, target) 30 if len(got) != 0 { 31 t.Errorf("sortNoDuplicates(%s, %s) == %v, want []]", pattern, target, got) 32 } 33 34 pattern = "(a/(b)" 35 target = "{1" 36 got = findParentheses(pattern, target) 37 if len(got) != 0 { 38 t.Errorf("sortNoDuplicates(%s, %s) == %v, want []]", pattern, target, got) 39 } 40 41 pattern = "(a)/(b)" 42 target = "{1}/{2}" 43 got = findParentheses(pattern, target) 44 want = []Parentheses{{0, 2}, {4, 6}} 45 if !reflect.DeepEqual(got, want) { 46 t.Errorf("sortNoDuplicates(%s, %s) == %v, want %v", pattern, target, got, want) 47 } 48 49 pattern = "(a)养只/(b)" 50 target = "{1}/{2}" 51 got = findParentheses(pattern, target) 52 want = []Parentheses{{0, 2}, {10, 12}} 53 if !reflect.DeepEqual(got, want) { 54 t.Errorf("sortNoDuplicates(%s, %s) == %v, want %v", pattern, target, got, want) 55 } 56 } 57 58 func TestGetPlaceHoldersValues(t *testing.T) { 59 target := "{1} {2}/{3}[4]{" 60 got := getPlaceHoldersValues(target) 61 want := []int{1, 2, 3} 62 if !reflect.DeepEqual(got, want) { 63 t.Errorf("sortNoDuplicates(%v) == %v, want %v", target, got, want) 64 } 65 }